DPCT1014
目次
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 }