2013-03-01 12 views

cevap

21

bir çağrı

cudaFree(0); 

için CUDA zamanında tembel bağlam kurulmasını zorlamak için kurallı yoldur. Yükü azaltamazsınız; bu, sürücünün, çalışma zamanının ve işletim sistemi gecikmelerinin bir işlevidir. Ancak yukarıdaki çağrı, program yürütme sırasında bu genel giderlerin nasıl ve ne zaman gerçekleşeceğini kontrol etmenizi sağlayacaktır.

yılında DÜZENLEME yapabilirsiniz, cudaFree() çağrı açıkça bir bağlam intialise için gerekli değildir bu yüzden çalışma zamanı API bağlam başlangıç ​​işlemlerini sezgisel kurnazca, cudaSetDevice şimdi bağlam kurar böylece zamanla değiştiğini eklemek bunun yerine cudaSetDevice kullanın. Ayrıca, ilk kurulum açılışında bazı kurulum zamanlarının devam edeceğini, buna rağmen bu durumun gerçekleşmeyeceğine dikkat edin. Çekirdek zamanlaması için, çekirdeği başlatmadan önce bir ısınma çağrısının dahil edilmesi en iyisidir, bu kurulum gecikmesini kaldırmak için zamanınız olacaktır. Çeşitli profil oluşturma araçlarının, fazladan API çağrıları veya çekirdek çağrıları olmadan bunu önlemek için yeterli ayrıntıya sahip olduğu anlaşılmaktadır.

+0

Tam olarak! Tüm başlatma zamanını yakalar! Teşekkürler! – szli

İlgili konular