Trip Report
¶
On April 26th, 2018, I attended the ISO C++ Futures Design Meeting at Nvidia
Goal of meeting; reach closure on a design for
futures
in C++20
Must support the
Executors
proposal which is on track for C++20
Executors support heterogenous computation contexts, including GPGPU, and grid computing
Coroutine TS
support which is planned to be included in C++20
The current futures defined in the
Concurrency TS
are not sufficient
Plan is for a
Concurrency TS part 2
which can be incorporated into C++20
Notable progress
Refinement of future concepts
SharedFuture
is
Regular
Allow rvalue optimizations
SharedFuture
concept does not unnessarily penalize Copyable futures
Support for optional task
cancelation
Including cancelation across heterogenous contexts
Error handling no longer requires exceptions
Agreement reached on the capability, but o design consensus reached
stlab::future<>
should be able to model SharedFuture with minor modifications