UCL / openqcd-oneapi

GNU General Public License v2.0
0 stars 0 forks source link

Generate SYCL with DPC++ Compatibility Tool #20

Closed tkoskela closed 2 years ago

tkoskela commented 2 years ago

Steps taken on csd3

Set up modules

tkoskela commented 2 years ago

dpct warnings


/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:526:5: warning: DPCT1026:0: The call to cudaEventCreate was removed because this call is redundant in DPC++.
    cudaEventCreate(&start);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:527:5: warning: DPCT1026:1: The call to cudaEventCreate was removed because this call is redundant in DPC++.
    cudaEventCreate(&stop);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:555:5: warning: DPCT1012:2: 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.
    cudaEventRecord(start);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:561:5: warning: DPCT1012:3: 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.
    cudaEventRecord(stop);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:571:5: warning: DPCT1012:4: 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.
    cudaEventRecord(start);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:573:5: warning: DPCT1012:5: 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.
    cudaEventRecord(stop);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:572:5: warning: DPCT1049:6: The workgroup size passed to the SYCL kernel may exceed the limit. To get the device limit, query info::device::max_work_group_size. Adjust the workgroup size if needed.
    mulpauli_kernel<<<grid_size, block_size>>>(VOLUME, mu, d_s, d_r, d_m);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:581:5: warning: DPCT1012:7: 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.
    cudaEventRecord(start);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:585:5: warning: DPCT1012:8: 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.
    cudaEventRecord(stop);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:582:5: warning: DPCT1049:9: The workgroup size passed to the SYCL kernel may exceed the limit. To get the device limit, query info::device::max_work_group_size. Adjust the workgroup size if needed.
    doe_kernel<<<grid_size, block_size>>>(VOLUME, d_s, d_r, d_u,
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:593:5: warning: DPCT1012:10: 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.
    cudaEventRecord(start);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:597:5: warning: DPCT1012:11: 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.
    cudaEventRecord(stop);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:594:5: warning: DPCT1049:12: The workgroup size passed to the SYCL kernel may exceed the limit. To get the device limit, query info::device::max_work_group_size. Adjust the workgroup size if needed.
    deo_kernel<<<grid_size, block_size>>>(VOLUME, d_s, d_r, d_u,
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:604:5: warning: DPCT1012:13: 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.
    cudaEventRecord(start);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:606:5: warning: DPCT1012:14: 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.
    cudaEventRecord(stop);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:619:5: warning: DPCT1026:15: The call to cudaEventDestroy was removed because this call is redundant in DPC++.
    cudaEventDestroy(start);
    ^
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/dw_cuda.cu:620:5: warning: DPCT1026:16: The call to cudaEventDestroy was removed because this call is redundant in DPC++.
    cudaEventDestroy(stop);
    ^
Processing: /home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/read_in.c
Processing: /home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/main.c
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/main.c:50:23: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
    sprintf(cnfg_dir, argv[5]);
                      ^~~~~~~
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/main.c:50:23: note: treat the string as an argument to avoid this
    sprintf(cnfg_dir, argv[5]);
                      ^
                      "%s", 
/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/main.c:82:5: warning: implicit declaration of function 'Dw_cuda_AoS' is invalid in C99 [-Wimplicit-function-declaration]
    Dw_cuda_AoS(VOLUME, u, s, r, m, piup, pidn);
    ^
Saved new version of /home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda/tmp_dcpt/includes/su3.h.yaml file
Processed 2 file(s) in -in-root folder "/home/dc-kosk1/git_repos/openqcd-fastsum/tests/cuda"

See Diagnostics Reference to resolve warnings and complete the migration:
https://software.intel.com/content/www/us/en/develop/documentation/intel-dpcpp-compatibility-tool-user-guide/top/diagnostics-reference.html```
tkoskela commented 2 years ago

Useful command line options