我正在尝试使用 dpct 迁移我的 cuda 应用程序。调用 dpct 时;我看到它处理 CUDA 文件并生成一些良性警告,但最后它退出而没有写出任何 DPC++ 等效文件。我可以清楚地看到这些应用程序中调用的 CUDA 函数,并且删除 CUDA 路径会使编译过程失败。这是命令我用了
$ dpct --report-type=all --cuda-include-path=/usr/local/cuda-10.2/include -p compile_commands.json"
我已经消除了文件的实际物理路径以避免混淆:
Processing: ....../ComputeThermoGPU.cu
Processing: ....../CommunicatorGPU.cu
Processing: ....../ParticleData.cu
Processing: ....../Integrator.cu
------------------APIS report--------------------
API name Frequency
-------------------------------------------------
----------Stats report---------------
File name, LOC migrated to DPC++, LOC migrated to helper functions, LOC not needed to migrate,
LOC not able to migrate
....../Integrator.cu, 1, 0, 168, 0
....../ParticleData.cu, 1, 0, 402, 0
....../ComputeThermoGPU.cu, 1, 0, 686, 0
....../ParticleGroup.cu, 6, 0, 111, 0
Total migration time: 17207.371000 ms
-------------------------------------
dpct exited with code: 1 (Migration not necessary)```