Этот вопрос связан с использованием Cuda потоков для запуска многих ядерКак уменьшить CUDA синхронизировать задержки/задерживать
В CUDA есть много синхронизации команд cudaStreamSynchronize, CudaDeviceSynchronize, cudaThreadSynchronize, , а также cudaStreamQuery, чтобы проверить, потоки пусты.
Я заметил при использовании профилировщика, что эти команды синхронизации вводят большую задержку в программу. Мне было интересно, знает ли кто-нибудь какие-либо способы уменьшить эту задержку, не считая, конечно, используя как можно меньше команд синхронизации.
Также есть цифры, чтобы судить о наиболее эффективном методе синхронизации. это рассмотреть 3 потока, используемые в приложении, и два из них должны заполнить для меня запуск четвертых потоков, если я использую 2 cudaStreamSyncs или только один cudaDeviceSync, что будет меньше потерь?
cudaThreadSynchronize устарел. –