我正在使用OpenCL並擁有ATI 4850卡。它具有:GPU設備上可以同時執行多少任務?
- CL_DEVICE_MAX_COMPUTE_UNITS:10
- CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS:3
- CL_DEVICE_MAX_WORK_GROUP_SIZE:256
- CL_DEVICE_MAX_WORK_ITEM_SIZES:(256,256,256)
- CL_DEVICE_AVAILABLE:1
- CL_DEVICE_NAME:ATI RV770
有多少ta sks可以同時執行嗎?
它是CL_DEVICE_MAX_COMPUTE_UNITS * CL_DEVICE_MAX_WORK_ITEM_SIZES = 2560嗎?
更具體一點:單核處理器一次只能執行一個任務,雙核可以執行2個任務...一次可以執行多少個任務?或者改說:我的GPU有多少個處理器?
你是什麼意思?可以一次執行多少個內核,或者可以在GPU上運行多少個線程? –
可能是內核。我看過規範,它被稱爲「處理元素」。所以這個問題可以改寫:「我的GPU有多少處理單元?」 – Dmitriy
你不能那麼容易說出來。 GPU具有多個計算單元,每個計算單元並行地同時執行多個線程(「warp」或「wavefront」)。對於nVidia來說,目前這個數字是32,對於ATI 64.我不確定是否有一個與扭曲大小相關的CL上限。此外,每個計算單元的每個計算單元都有一個未知數(nVidia表示1024),這些計算單元在由於某些原因而發生變形時會進行硬件調度。假設類似的數字,這將使你的GPU更接近320,000個線程。 – Damon