我已经读过,对于大约60%的设备内存,最大内存分配是有限制的,可以通过修改GPU的GPU_MAX_HEAP_SIZE
和GPU_MAX_ALLOC_SIZE
环境变量来更改这些内存。
如果我想提高内存分配的限制,我很想知道AMD SDK是否有类似CPU的东西?
对于我当前的配置,它会返回以下内容:
CL_DEVICE_MAX_MEM_ALLOC_SIZE = 2973.37MB
CL_DEVI_CEGLOBAL_MEM_SIZE = 11893.5MB
感谢。
答案 0 :(得分:2)
我能够在我的系统上更改此功能。在您最初提出问题时,我不知道这种方法是否可行。
设置环境变量' CPU_MAX_ALLOC_PERCENT'到您希望能够为单个全局缓冲区分配的总内存百分比。我有8GB系统内存,在将CPU_MAX_ALLOC_PERCENT设置为80后,clinfo报告以下内容:
Max memory allocation: 6871207116
成功! 6.399GB
您也可以以相同的方式为GPU设备使用GPU_MAX_ALLOC_PERCENT。