Câu hỏi này có liên quan đến sử dụng các luồng CUDA để chạy nhiều hạt nhânLàm thế nào để giảm CUDA đồng bộ hóa độ trễ/trì hoãn
Trong CUDA có lệnh nhiều đồng bộ cudaStreamSynchronize, CudaDeviceSynchronize, cudaThreadSynchronize, và cũng cudaStreamQuery để kiểm tra xem luồng trống.
Tôi nhận thấy khi sử dụng profiler các lệnh đồng bộ hóa này giới thiệu độ trễ lớn cho chương trình. Tôi đã tự hỏi nếu có ai biết bất kỳ phương tiện để giảm độ trễ này ngoài tất nhiên bằng cách sử dụng như lệnh đồng bộ hóa ít nhất có thể.
Cũng có bất kỳ số liệu nào để đánh giá phương thức đồng bộ hiệu quả nhất. đó là xem xét 3 dòng được sử dụng trong một ứng dụng và hai trong số họ cần phải hoàn thành cho tôi để khởi động một dòng ra nên tôi sử dụng 2 cudaStreamSyncs hoặc chỉ một cudaDeviceSync những gì sẽ phải chịu ít mất?
cudaThreadSynchronize không được dùng nữa. –