我正在编写一个使用ARC的应用程序,目前似乎有一些内存泄漏.谷歌搜索我发现了一些关于如何使用Inspector的提示.在那里,我可以看到一些类的实例分配的大量,我也可以看到一些调用堆栈关于如何分配对象以及如何更改保留计数.
但似乎我看不到完整的调用堆栈,所以我不知道最终谁拥有该对象.在我看来,这个所有者不知何故不释放对象(或拥有可疑对象的对象).
任何人都可以给我一个关于找到分配对象的所有者的提示吗?
另请注意,对象未标记为"已泄露"但已分配.对我来说,似乎是对象被泄漏,因为分配了稳定的新对象.
有关如何最好地进行和发现可疑泄漏的任何进一步帮助表示赞赏.
在库中,我使用了几个CUDA内核的调用.当然我想获得最佳表现.用户如何使用库可能会有所不同.
块/线程的数量会显着影响这一点.
是否有一些关于如何选择块/线程以获得最佳性能的规则?
例如(只是一个问题),最好选择高块,线程低吗?或者相反?或者最好使用GetDeviceProperties()中的一些值?