解决CUDA内存碎片问题是否可能?

6

我尝试分配一些内存,但有时会出现“内存不足”的错误。 cudaMemGetInfo 显示可用的内存比我需要的还多。因此,问题出在内存碎片化上。是否有可能解决这个问题?是否有可能将元素放置在内存中而不是一个接一个地,并将其分成几部分,以便我可以将它们放置在内存中?

1个回答

3

如果由于内存碎片而出现“内存不足”的情况,则说明您在处理内存时存在错误!您应该对内存进行重新设计,例如使用内存池来避免过多的new/delete操作,从而避免内存碎片化。


是否存在实现内存池到CUDA的库? - Robotex
抱歉回复晚了,看看 libhoard。我不记得网站是什么,但在谷歌上搜索 libhoard 将会有所帮助。 - BigBoss
我找到了这个库,但是没有找到有关如何将其用于CUDA设备内存分配的信息。 - Robotex

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接