(dataId: DataId)
| 222 | } |
| 223 | |
| 224 | private releaseResource(dataId: DataId) { |
| 225 | const tensorData = this.tensorMap.get(dataId); |
| 226 | if (!tensorData || !tensorData.resource) { |
| 227 | return; |
| 228 | } |
| 229 | |
| 230 | // If tensor's resource is from external, do not release. |
| 231 | if (tensorData.external) { |
| 232 | tensorData.resource = null; |
| 233 | return; |
| 234 | } |
| 235 | if (tensorData.resource instanceof GPUBuffer) { |
| 236 | this.bufferManager.releaseBuffer(tensorData.resource); |
| 237 | } else if (tensorData.resource instanceof GPUTexture) { |
| 238 | this.textureManager.releaseTexture(tensorData.resource); |
| 239 | } |
| 240 | tensorData.resource = null; |
| 241 | } |
| 242 | |
| 243 | /** Return refCount of a `TensorData`. */ |
| 244 | override refCount(dataId: DataId): number { |
no test coverage detected