我尝试分配一些内存,但有时会出现“内存不足”的错误。 cudaMemGetInfo 显示可用的内存比我需要的还多。因此,问题出在内存碎片化上。是否有可能解决这个问题?是否有可能将元素放置在内存中而不是一个接一个地,并将其分成几部分,以便我可以将它们放置在内存中?
我尝试分配一些内存,但有时会出现“内存不足”的错误。 cudaMemGetInfo 显示可用的内存比我需要的还多。因此,问题出在内存碎片化上。是否有可能解决这个问题?是否有可能将元素放置在内存中而不是一个接一个地,并将其分成几部分,以便我可以将它们放置在内存中?
如果由于内存碎片而出现“内存不足”的情况,则说明您在处理内存时存在错误!您应该对内存进行重新设计,例如使用内存池来避免过多的new/delete操作,从而避免内存碎片化。
libhoard
。我不记得网站是什么,但在谷歌上搜索libhoard
将会有所帮助。 - BigBoss