Я использую Xcode10.2 с отключенным ARC и не могу найти ссылки на просочившиеся MTLBuffers в коде.
Например, в примере проекта Xcode с отключенным ARC, если я напишу код ниже для выделения памяти GPU и никогда не очищатьэто, высокая загрузка памяти наблюдается.
int p[1000000];
memset(p,25,sizeof(int)*1000000);
id<MTLBuffer> tmpBuffer = [self.device newBufferWithBytes:p
length:sizeof(int)*1000000 options:0 ];
Могу ли я найти эту необработанную ссылку на память, используя карты памяти Xcode или любой другой инструмент в приборе.
- Я пробовал XcodeКарта памяти для отслеживания утечек MTLBuffers.
- Утилиты командной строки MacOS
vmmap
, malloc_history
, leaks
.
int p[1000000];
memset(p,25,sizeof(int)*1000000);
id<MTLBuffer> tmpBuffer = [self.device newBufferWithBytes:p
length:sizeof(int)*1000000 options:0 ];
//[tmpBuffer setPurgeableState:MTLPurgeableStateEmpty];