I gave a try on sycltest with dpcpp compiled manually with the CUDA support enabled. I modified a bit the Makefile variables to make the dpct dependence optional (although the -isystem $(DPCT_BASE)/include didn't do any practical harm in my case), and added USER_SYCLFLAGS to add custom compilation (even if currently USER_CXXFLAGS would have done the same).
The compiler complained about not capturing the return value of std::async(), so for time being I removed the call and made the ScopedContextHolderHelper::enqueueCallback() explicitly synchronous. This was the behavior effectively earlier too, since the destructor of std::future returned by std::async() blocks until the asynchronous work is complete.
I gave a try on
sycltest
withdpcpp
compiled manually with the CUDA support enabled. I modified a bit the Makefile variables to make thedpct
dependence optional (although the-isystem $(DPCT_BASE)/include
didn't do any practical harm in my case), and addedUSER_SYCLFLAGS
to add custom compilation (even if currentlyUSER_CXXFLAGS
would have done the same).The compiler complained about not capturing the return value of
std::async()
, so for time being I removed the call and made theScopedContextHolderHelper::enqueueCallback()
explicitly synchronous. This was the behavior effectively earlier too, since the destructor ofstd::future
returned bystd::async()
blocks until the asynchronous work is complete.