Diagnostics Reference
Diagnostics Reference#
This topic gives you all of the diagnostic reference numbers, messages, detailed help, and suggestion to fix your errors.
ID |
Message |
---|---|
Error handling |
|
The statement could not be removed. |
|
Special case error handling |
|
Migrated API does not return error code. |
|
DEPRECATED. Compatible SYCL code could not be generated. |
|
The SYCL device version is different from CUDA Compute Compatibility. You may need to rewrite this code. |
|
SYCL does not provide a standard API to differentiate between integrated and discrete GPU devices. |
|
Migration of <API name> is not supported. |
|
|
|
SYCL uses exceptions to report errors and does not use the error codes. The original code was commented out and a warning string was inserted. You need to rewrite this code. |
|
SYCL uses exceptions to report errors and does not use the error codes. The call was replaced with 0. You need to rewrite this code. |
|
The tool detected overloaded operators for built-in vector types, which may conflict with the SYCL 2020 standard operators (see 4.14.2.1 Vec interface). The tool inserted a namespace to avoid the conflict. Use SYCL 2020 standard operators instead. |
|
Detected kernel execution time measurement pattern and generated an initial code for time measurements in SYCL. You can change the way time is measured depending on your goals. |
|
The rounding mode could not be specified and the generated code may have different accuracy than the original code. Verify the correctness. SYCL math built-in function rounding mode is aligned with OpenCL C 1.2 standard. |
|
The flag and priority options are not supported for SYCL queues. The output parameter(s) are set to 0. |
|
Output needs adjustment. |
|
DEPRECATED. The <API name> was not migrated, because parameter(s) <parameter name a> and/or <parameter name b> could not be evaluated, or because <parameter name a> is not equal to <parameter name b>. Rewrite this code manually. |
|
The <SYCL API name> call is used instead of the <CUDA API name> call. These two calls do not provide exactly the same functionality. Check the potential precision and/or performance issues for the generated code. |
|
The <API name> was migrated, but due to <reason>, the generated code performance may be sub-optimal. |
|
|
|
Migration of <api name>, if it is called from |
|
Migration of |
|
There is no exact match between the |
|
The SYCL sub-group does not support mask options for <api name>. |
|
The original code returned the error code that was further consumed by the program logic. This original code was replaced with 0. You may need to rewrite the program logic consuming the error code. |
|
The SYCL queue is created ignoring the flag and priority options. |
|
The call to <API name> was removed because <reason>. |
|
The call to <API name> was replaced with 0 because <reason>. |
|
The <API name> was not migrated because <reason>. |
|
SYCL currently does not support getting device resource limits. The output parameter(s) are set to 0. |
|
SYCL currently does not support inter-process communication (IPC) operations. You may need to rewrite the code. |
|
SYCL currently does not support memory access across peer devices. The output parameter(s) are set to 0. |
|
A different random number generator is used. You may need to adjust the code. |
|
Migrated code uses a basic Sobol generator. Initialize |
|
Migrated API does not return an error code. 0 is returned in the lambda. You may need to rewrite this code. |
|
All SYCL devices can be used by the host to submit tasks. You may need to adjust this code. |
|
The type <type name> was not migrated because <reason>. |
|
Rewrite this code using <library name> with SYCL. |
|
When the kernel function name is used as a macro argument, the migration result may be incorrect. You need to verify the definition of the macro. |
|
The generated code assumes that <parameter name> points to the global memory address space. If it points to a local memory address space, replace <function name> with <function name>. |
|
Use |
|
SYCL uses exceptions to report errors, it does not use error codes. 0 is used instead of an error code in <statement name> statement. You may need to rewrite this code. |
|
The size of the arguments passed to the SYCL kernel exceeds the minimum size
limit (1024) for a non-custom SYCL device. You can get the hardware argument size
limit by querying |
|
The version-related API is different in SYCL. An initial code was generated, but you need to adjust it. |
|
<BaseClass1> was removed because <BaseClass2> has been deprecated in C++11. You may need to remove references to typedefs from <BaseClass1> in the class definition. |
|
Migration is only supported for this API for the general sparse matrix type. You may need to adjust the code. |
|
The <original API name> was not migrated because <reason>. You need to adjust the code. |
|
The meaning of <parameter name> in the <API name> is different from the <API name>. You may need to check the migrated code. |
|
The original value <macro name> is not meaningful in the migrated code and was removed or replaced with 0. You may need to check the migrated code. |
|
The work-group size passed to the SYCL kernel may exceed the limit. To get the
device limit, query |
|
The template argument of the <type> could not be deduced. You need to update this code. |
|
SYCL does not support a device property functionally compatible with <property name>. It was migrated to <migrated token>. You may need to adjust the value of <migrated token> for the specific device. |
|
SYCL does not support the member access for a volatile qualified vector type. The volatile qualifier was removed. You may need to rewrite the code. |
|
Migration of device assembly code is not supported. |
|
The type of variable <variable name> is declared in device function with the name <type>. Adjust the code to make the <type> declaration visible at the accessor declaration point. |
|
Vector types with size 1 are migrated to the corresponding fundamental types, which cannot be inherited. You need to rewrite the code. |
|
The use of <variable name> in device code was not detected. If this variable is also used in device code, you need to rewrite the code. |
|
Variable <variable name> was used in host code and device code. <variable name> type was updated to be used in SYCL device code and new <host variable name> was generated to be used in host code. You need to update the host code manually to use the new <host variable name>. |
|
<API Name> is not migrated because it is not called in the code. |
|
SYCL only supports 4-channel image format. Adjust the code. |
|
SYCL range can only be a 1D, 2D, or 3D vector. Adjust the code. |
|
Call to <macro name> macro was removed because it only contains code, which is unnecessary in SYCL. |
|
SYCL Image doesn’t support normalized read mode. |
|
Advice parameter is device-defined |
|
Migrated <function name> call is used in a macro definition and is not valid for all macro uses. Adjust the code. |
|
|
|
Input/Output distance are migrated to FWD/BWD_DISTANCE. You may need to update the code manually. |
|
The <parameter name> parameter could not be migrated. You may need to update the code manually. |
|
The value of <argument type> could not be deduced. You need to update <placeholder> manually. |
|
The argument <argument name> of the kernel function contains virtual
pointer(s), which cannot be dereferenced. Try to migrate the code with
|
|
<pointer variable name> is allocated by |
|
DEPRECATED. The placement of the FFT computational function could not be deduced, so it is assumed out-of-place. You may need to adjust the code. |
|
SYCL currently does not support getting the available memory on the current device. You may need to adjust the code. |
|
The field values of parameter |
|
The SYCL Image class does not support some of the flags used in the original code. Unsupported flags were ignored. Data read from SYCL Image could not be normalized as specified in the original code. |
|
DEPRECATED. Migration of cuFFT calls may be incorrect and require review. |
|
The device attribute was not recognized. You may need to adjust the code. |
|
<macro name> redefines a standard SYCL type, which may cause conflicts. |
|
Consider replacing |
|
Replace “dpct_placeholder” with the file path of the dynamic library. |
|
Variadic functions cannot be called in a SYCL kernel or by functions called by the kernel. You may need to adjust the code. |
|
The generated code assumes that <pointer variable> points to the global memory
address space. If it points to a local or private memory address space, replace
|
|
Migration of <type name> type is not supported. |
|
The size of |
|
The function call |
|
The function <function name> requires sub-group size to be <size>, while other sub-group functions in the same SYCL kernel require a different sub-group size. You may need to adjust the code. |
|
|
|
SYCL currently does not support cross group synchronization. You can specify
|
|
The macro definition has multiple migration results in the dimension of free queries function that could not be unified. You may need to modify the code. |
|
The value of the sub-group size attribute argument <argument name> cannot be evaluated. Replace |
|
SYCL does not support the device property that would be functionally compatible with <property name>. It was not migrated. You need to rewrite the code. |
|
The function |
|
Consider replacing work-group size 128 with different value for specific hardware for better performance. |
|
The <Device ID> device may be not the one intended for use. Adjust the selected device if needed. |
|
Content contains misleading bidirectional Unicode characters. |
|
The identifier <Identifier A> is confusable with another identifier <Identifier B>. |
|
The right-most dimension of the work-group used in the SYCL kernel that calls this function may be less than <value of kernel sub-group size attribute>. The function <help function name> may return an unexpected result on the CPU device. Modify the size of the work-group to ensure that the value of the right-most dimension is a multiple of <value of kernel sub-group size attribute>. |
|
The function <backward function name> may require the workspace used to save intermediate results from function <forward function name>. By default, a workspace from |
|
The <expression text> expression is used instead of the <function name> call. These two expressions do not provide the exact same functionality. Check the generated code for potential precision and/or performance issues. |
|
Verify if the default value of the direction and placement used in the function <function name> is correct. |
|
Currently the DFT external workspace feature in the Intel® oneAPI Math Kernel Library (oneMKL) is only supported on GPU devices. Use the internal workspace if your code should run on non-GPU devices. |
|
|
|
Zero-length arrays are not permitted in SYCL device code. |
|
|
|
|
|
|