診断リファレンス#
このトピックでは、すべての診断リファレンス番号、メッセージ、詳細なヘルプ、およびエラーを修正するための提案を提供します。
ID |
メッセージ |
---|---|
エラーを処理する |
|
文を削除できませんでした。 |
|
特別なケースのエラーを処理する |
|
移行した API はエラーコードを返さないため、 |
|
[削除] 互換性のある SYCL* コードを生成できませんでした。 |
|
SYCL* デバイスバージョンが CUDA* Compute Compatibility と異なります。このコードを書き換える必要があります。 |
|
SYCL* は、統合 GPU デバイスとディスクリート GPU デバイスを区別するための標準 API を提供していません。 |
|
<API name> の移行はサポートされていません。 |
|
|
|
SYCL* はエラーの報告に例外を使用するため、エラーコードは使用していません。オリジナルコードはコメントアウトされ、警告文字列が挿入されました。このコードを書き換える必要があります。 |
|
SYCL* はエラーの報告に例外を使用するため、エラーコードは使用していません。呼び出しは 0 に置き換えられます。このコードを書き換える必要があります。 |
|
ツールは、組込みベクトル型のオーバーロードされた演算子を検出しましたが、これは SYCL* 2020 の標準演算子と競合する可能性があります (詳細は、SYCL* 2020 仕様の「4.14.2.1 ベクトル・インターフェイス」を参照)。競合を回避するため、名前空間が挿入されました。代わりに、SYCL* 2020 の標準演算子を使用してください。 |
|
カーネル実行時間の測定パターンを検出し、SYCL* で時間測定を行うための初期コードを生成しました。要件に応じて、時間の測定方法を変更できます。 |
|
丸めモードを指定できなかったため、生成されたコードはオリジナルコードと異なる精度である可能性があります。正当性を検証してください。SYCL* 数学組込み関数の丸めモードは、OpenCL* C 1.2 標準と一致しています。 |
|
フラグオプションとプライオリティー・オプションは SYCL* キューではサポートされていません。出力パラメーターは 0 に設定されます。 |
|
出力の調整が必要です。 |
|
[削除] <API name> は移行されませんでした。<parameter name a> や <parameter name b> を評価できなかったか、<parameter name a> が <parameter name b> と等しくありません。このコードを手動で書き換えてください。 |
|
<CUDA API name> 呼び出しの代わりに <SYCL* API name> 呼び出しが使用されます。この 2 つの呼び出しは同じ機能を提供するものではありません。生成されたコードの潜在的な精度やパフォーマンスの問題を確認してください。 |
|
<API name> は移行されましたが、生成されたコードのパフォーマンスは、以下の <reason> により最適ではない可能性があります。 |
|
SYCL* の |
|
<api name> の移行が |
|
|
|
|
|
SYCL* のサブグループは、<API name> のマスクオプションをサポートしていません。<修正方法の提案>。 |
|
オリジナルコードは、プログラムロジックで処理されるエラーコードを返しました。オリジナルコードは 0 に置き換えられました。エラーコードを処理するプログラムロジックを書き直す必要があります。 |
|
SYCL* キューは、フラグと優先順位のオプションを無視して作成されます。 |
|
<reason> により、<API name> 呼び出しは削除されました。 |
|
<reason> により、<API name> 呼び出しは 0 に置き換えられました。 |
|
<reason> により、オリジナルの <API name> は移行されませんでした。 |
|
SYCL* は現在、デバイスのリソース制限の取得をサポートしていません。出力パラメーターは 0 に設定されます。 |
|
SYCL* は現在、プロセス間通信 (IPC) 操作をサポートしていません。コードを書き換える必要があります。 |
|
SYCL* は現在、ピアデバイス間のメモリーアクセスをサポートしていません。出力パラメーターは 0 に設定されます。 |
|
異なる乱数ジェネレーターが使用されています。コードを調整する必要があります。 |
|
移行したコードは、基本 Sobol ジェネレーターを使用します。 |
|
移行した API はここで、エラーコードを返さないため、ラムダでは 0 が返されます。このコードを書き換える必要があります。 |
|
ホストは、タスクを送信するため、すべての SYCL* デバイスを使用できます。コードを調整する必要があります。 |
|
[削除] <reason> により、<type name> は移行されませんでした。 |
|
SYCL* で <library name> を使用してコード書き換えます。 |
|
マクロ引数にカーネル関数名を使用すると、移行の結果が正しくない場合があります。マクロの定義を確認する必要があります。 |
|
生成されたコードでは、<parameter name> がグローバル・メモリー・アドレス空間を指していると仮定しています。ローカル・メモリー・アドレス空間を指している場合は、<function name> を <function name> に置き換えます。 |
|
コードがデバイス上で使用される場合は、 |
|
SYCL* では、エラーの報告に例外を使用しており、エラーコードは使用していません。<statement name> 文 では、エラーコードの代わりに 0 が使用されます。このコードを書き換える必要があります。 |
|
SYCL* カーネルに渡される引数のサイズが、カスタムではない SYCL* デバイスの最小サイズ制限 (1024) を超えています。ハードウェア引数のサイズの上限は、 |
|
バージョン関連の API は、SYCL* では異なります。初期コードが生成されましたが、調整する必要があります。 |
|
<BaseClass2> が C++11 で非推奨になったため、<BaseClass1> は削除されました。クラス定義で、<BaseClass1> から型定義 (typedef) への参照を削除する必要があります。 |
|
この API では、<matrix type> 疎行列タイプの移行のみがサポートされています。コードを調整する必要があります。 |
|
<reason>により、<original API name> は移行されませんでした。コードを調整する必要があります。 |
|
<API name> の <parameter name> の意味が <API name> と異なります。移行したコードを確認する必要があります。 |
|
オリジナル値の <macro name> は、移行したコードでは意味をなさないため、削除されたか、0 に置き換えられました。移行したコードを確認する必要があります。 |
|
SYCL* カーネルに渡される work-group サイズが制限を超えている可能性があります。デバイスの上限値は、 |
|
<type> のテンプレート引数を推測できませんでした。このコードを更新する必要があります。 |
|
SYCL* は、<property name> と機能的に互換性のあるデバイス・プロパティーをサポートしていません。<migrated token> に移行されました。特定のデバイスの <migrated token> 値の調整が必要となる場合があります。 |
|
SYCL* は、volatile 修飾されたベクトル型のメンバーアクセスをサポートしていません。volatile 修飾子は削除されました。コードを書き換える必要があります。 |
|
デバイス・アセンブリー・コードの移行はサポートされていません。 |
|
<variable name> のタイプは、デバイスの関数内で <type> という名前で宣言されています。アクセサー宣言時に <type> 宣言が見えるようにコードを調整してください。 |
|
サイズ 1 のベクトル型は、対応する基本型に移行され、継承することはできません。コードを書き換える必要があります。 |
|
デバイスコードの <variable name> の使用を検出できませんでした。この変数がデバイスコードでも使用されている場合は、コードを書き換える必要があります。 |
|
<variable name> は、ホストコードとデバイスコードで使用されていました。<variable name> タイプは SYCL* デバイスコードで使用されるように更新され、新しい <host variable name> は、ホストコードで使用できるように生成されました。新しい <host variable name> を使用するように、手動でホストコードを更新する必要があります。 |
|
<API name> はコード内で呼び出されていないため、移行されません。 |
|
SYCL* は、4 チャネルのイメージ形式のみをサポートしています。コードを調整してください。 |
|
SYCL* のレンジは 1D、2D、または 3D ベクトルのみです。コードを調整してください。 |
|
<macro name> の呼び出しは、SYCL* では不要なコードのみを含んでいたため、削除されました。 |
|
SYCL* のイメージは、正規化された読み取りモードをサポートしていません。 |
|
アドバイス・パラメーターは、デバイス定義の |
|
移行した <function name> の呼び出しは、マクロ定義で使用されていますが、すべてのマクロの使用に対して有効ではありません。コードを調整してください。 |
|
グローバルメモリーにアクセスしない場合、パフォーマンスを向上するには |
|
[削除] 入力/出力の距離は、FWD/BWD_DISTANCE に移行されます。手動でコードを更新する必要があります。 |
|
<parameter name> は移行できませんでした。手動でコードを更新する必要があります。 |
|
[削除] <argument type> の値を推測できませんでした。手動で <placeholder> を更新する必要があります。 |
|
カーネル関数の <argument name> に、逆参照できない仮想ポインターが含まれています。 |
|
<pointer variable name> は |
|
[削除] FFT 計算関数のプレースを推測できなかったため、アウトオブプレースとしています。コードを調整する必要があります。 |
|
SYCL* は、現在のデバイスで利用可能なメモリーの取得をサポートしていません。コードを調整する必要があります。 |
|
パラメーター |
|
SYCL* イメージクラスは、オリジナルコードで使用されている一部のフラグをサポートしていません。サポートされてないフラグは無視されました。SYCL* イメージから読み取られたデータは、元のコードで指定されるように正規化できませんでした。 |
|
[削除] cuFFT 呼び出しの移行は正しくない可能性があります。確認が必要です。 |
|
デバイス属性を認識できませんでした。コードを調整する必要があります。 |
|
<macro name> が標準の SYCL* タイプを再定義しているため、競合が発生する可能性があります。 |
|
強力なメモリー順序制限が必要な場合は、正当性のため、 |
|
[削除] dpct_placeholder をダイナミック・ライブラリーのファイルパスに置き換えます。 |
|
可変個引数関数は、SYCL* カーネルやカーネルから呼び出される関数では呼び出すことはできません。コードを調整する必要があります。 |
|
生成されたコードでは、<pointer variable> がグローバル・メモリー・アドレス空間を指していると仮定しています。ローカルまたはプライベート・メモリー・アドレス空間を指す場合、 |
|
<type name> の移行はサポートされていません。 |
|
移行したコードの |
|
|
|
関数 <function name> は sub-group サイズが <size> である必要がありますが、同じ SYCL* カーネル内のほかの sub-group 関数では異なる sub-group サイズが必要です。コードを調整する必要があります。 |
|
|
|
SYCL* は現在、グループ間の同期をサポートしていません。 |
|
マクロ定義には、統一できなかったフリークエリー関数の次元の複数の移行結果があります。コードを変更する必要があります。 |
|
sub-group サイズ属性の引数 <argument name> の値を評価できません。 |
|
SYCL* は、<property name> と機能的に互換性のあるデバイス・プロパティーをサポートしていないため、移行されませんでした。コードを書き換える必要があります。 |
|
|
|
パフォーマンス向上のため、特定のハードウェアでは work-group サイズ 128 を別の値に置き換えることを検討してください。 |
|
<Device ID> のデバイスが意図するものではない可能性があります。必要に応じて、選択デバイスを調整してください。 |
|
コンテンツには誤解を招く双方向 Unicode 文字が含まれています。 |
|
識別子 <Identifier A> は、別の識別子 <Identifier B> と混同される可能性があります。 |
|
この関数を呼び出す SYCL* カーネルで使用される work-group の右端の次元は、<value of kernel sub-group size attribute> (カーネル sub-group サイズ属性値) 未満である可能性があります。関数 <help function name> は、CPU デバイス上で予期しない結果を返す可能性があります。work-group サイズを変更して、右端の次元の値が <value of kernel sub-group size attribute> (カーネル sub-group サイズ属性値) の倍数になるようにします。 |
|
関数 <backward function name> には、関数 <forward function name> からの中間結果を保存するためにワークスペースが必要になる場合があります。デフォルトでは、 |
|
<expression text> 式は、<function name> 呼び出しの代わりに使用されます。この 2 つの式は同じ機能を提供するものではありません。生成されたコードに精度やパフォーマンスの潜在的な問題がないか確認してください。 |
|
関数 <function name> で使用される方向と配置のデフォルト値が正しいか確認します。 |
|
現在、インテル® oneAPI マス・カーネル・ライブラリー (インテル® oneMKL) の DFT 外部ワークスペース機能は、GPU デバイスでのみサポートされています。コードを GPU デバイス以外で実行する必要がある場合、内部ワークスペースを使用します。 |
|
|
|
SYCL* デバイスコードでは、ゼロレングスの配列は許可されていません。 |
|
|
|
|
|
mcg59 乱数ジェネレーターが使用されています。後続の引数 <expression> は無視されます。移行を検証する必要があります。 |
|
|
|
<API name> オーバーロードの移行はサポートされていません。 |
|
<original API> は、実験的な機能 <feature name> とともに移行されましたが、これはすべてのコンパイラーでサポートされるわけではありません。コードを調整する必要があります。 |
|
<language feature> は SYCL* デバイスコードでは呼び出すことができません。コードを調整する必要があります。 |
|
デバイス関数 <function name> で宣言されたローカス変数の合計サイズが 128 バイトを超えているため、レジスター・プレッシャーが高くなる可能性があります。ハードウェア・ベンダーに問い合わせて、利用可能な合計レジスターサイズを調べてコードを調整するか、小さな sub-group サイズを使用してレジスタープレッシャーを回避します。 |
|
<migrated API> の入力引数をターゲット関数 <kernel function name> に基づいて確認します。 |