DPCT1014#
Message#
The flag and priority options are not supported for SYCL queues. The output parameter(s) are set to 0.
Detailed Help#
The flag and priority options are not supported in the SYCL* queue. You may need to rewrite the generated code.
Suggestions to Fix#
Review the logic and adjust it.
For example, this original CUDA* code:
1void foo(cudaStream_t old_stream, cudaStream_t *new_stream) {
2 unsigned int flag;
3 cudaStreamGetFlags(old_stream, &flag);
4 cudaStreamCreateWithFlags(new_stream, flag);
5}
results in the following migrated SYCL code:
1void foo(sycl::queue *old_stream, sycl::queue **new_stream) {
2 unsigned int flag;
3 /*
4 DPCT1014:0: The flag and priority options are not supported for SYCL queues.
5 The output parameter(s) are set to 0.
6 */
7 *(&flag) = 0;
8 /*
9 DPCT1025:1: The SYCL queue is created ignoring the flag and priority options.
10 */
11 *(new_stream) = dpct::get_current_device().create_queue();
12}
which is rewritten to:
1void foo(sycl::queue *old_stream, sycl::queue **new_stream) {
2 *(new_stream) = dpct::get_current_device().create_queue();
3}