pytorch
8693604b - coreml - Wrap Core ML execute and forward calls in autorelease pool (#95384)

Commit
1 year ago
coreml - Wrap Core ML execute and forward calls in autorelease pool (#95384) Summary: When performing inference using the Core ML delegate, memory is increasing indefinitely. This is due to Core ML allocating memory within `predictionFromFeatures:error:`. Seems that the autorelease pool does not release the return values from the prediction method until inference is stopped completely. So we need to release with `autoreleasepool` manually ([per Apple guidance in the Apple Developer Forums](https://developer.apple.com/forums/thread/692425)). This commit wraps `autoreleasepool` around the `execute` function of `PTMCoreMLBackend`, which is the scope of where the return values of `predictionFromFeatures:error:` are. Also added in `PTMCoreMLExecutor` for good measure. Differential Revision: D43520767 Pull Request resolved: https://github.com/pytorch/pytorch/pull/95384 Approved by: https://github.com/mcr229
Author
Committer
Parents
Loading