Details
-
Task
-
Resolution: Unresolved
-
P2: Important
-
None
-
None
-
None
Description
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.
Attachments
Issue Links
- depends on
-
QTBUG-131828 Create a benchmark framework for QFuture / QtConcurrent
- Open