2012-01-19 89 views

回答

3

紋理數據包含在CUDA數組中,CUDA數組從全局內存中分配;所以無論多少全局內存仍然是免費的(您可以調用cuMemGetInfo()來查看剩餘空閒內存)是否可用於分配爲紋理。

不可能知道給定的CUDA數組消耗多少內存 - 顯然它至少必須是Width * Height * Depth * sizeof(Texel),但可能需要更多,因爲驅動程序必須進行分配符合硬件的對齊要求。

0

不同的計算能力紋理限制可以在CUDA編程指南中的NVIDIA CUDA website發現,可用的。

對於給定設備,可以使用cudaGetDeviceProperties函數查詢設備功能,包括紋理限制。

分配取決於可用全局內存的數量和內存的分段,因此沒有簡單的方法可以判斷給定的分配是否成功,特別是在處理大型紋理時。

相關問題