DPCT1014

メッセージ

フラグオプションとプライオリティー・オプションは SYCL* キューではサポートされていません。出力パラメーターは 0 に設定されます。

説明

フラグオプションとプライオリティー・オプションは SYCL* キューではサポートされていません。生成されたコードを書き換える必要があります。

修正方法の提案

ロジックを確認して、調整してください。

例えば、以下のオリジナル CUDA* コードについて考えてみます。


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}

このコードは、以下の SYCL* コードに移行されます。


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}

このコードは次のように書き換えられます。


1void foo(sycl::queue *old_stream, sycl::queue **new_stream) { 
2 *(new_stream) = dpct::get_current_device().create_queue(); 
3}