Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-131831

Benchmark multi-valued QFuture / QtConcurrent vs. single-valued QFuture / std::future

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Unresolved
    • Icon: P2: Important P2: Important
    • None
    • None
    • None

      Multi-valued QFutures (otherwise known as channels) are an extension over std::future. In order to compare QFuture with std::future performance, we need to add a parallel mode where each work item's result is reported through a separate future.

      Extend the framework developed in QTBUG-131828 to run the same work sets not only in sequential and QtConcurrent-parallel mode, but also QTheadPool-parallel mode, where each work item reports its result through a separate future. Add the tests for QFuture/QPromise as well as std::future/std::shared_future/std::promise.

      If QTBUG-131829 was implemented: this tasks makes the benchmark results a 4d scalar field, so the visualization probably needs to be extended to create slices in the data set, e.g. comparing single-value QFuture vs std::future instead of 1...N-parallelism.

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            cnn Qt Core & Network
            mmutz Marc Mutz
            Vladimir Minenko Vladimir Minenko
            Alex Blasche Alex Blasche
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:

                There are no open Gerrit changes