DPCT1014#

メッセージ#

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

詳細な説明#

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

修正方法の提案

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

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

1  void 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* コードに移行されます。

1  void 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 }

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

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