| OLD | NEW |
| 1 # GPU Memory Tracing | 1 # GPU Memory Tracing |
| 2 | 2 |
| 3 This is an overview of the GPU column in [MemoryInfra][memory-infra]. | 3 This is an overview of the GPU column in [MemoryInfra][memory-infra]. |
| 4 | 4 |
| 5 [TOC] | 5 [TOC] |
| 6 | 6 |
| 7 ## Quick Start | 7 ## Quick Start |
| 8 | 8 |
| 9 If you want an overview of total GPU memory usage, select the GPU process' GPU | 9 If you want an overview of total GPU memory usage, select the GPU process' GPU |
| 10 category and look at the _size_ column. (Not _effective size_.) | 10 category and look at the _size_ column. (Not _effective size_.) |
| 11 | 11 |
| 12 ![Look at the size column for total GPU memory][gpu-size-column] | 12 ![Look at the size column for total GPU memory][gpu-size-column] |
| 13 | 13 |
| 14 [memory-infra]: memory_infra.md | 14 [memory-infra]: README.md |
| 15 [gpu-size-column]: https://storage.googleapis.com/chromium-docs.appspot.com/c7d6
32c18d90d99e393ad0ade929f96e7d8243fe | 15 [gpu-size-column]: https://storage.googleapis.com/chromium-docs.appspot.com/c7d6
32c18d90d99e393ad0ade929f96e7d8243fe |
| 16 | 16 |
| 17 ## In Depth | 17 ## In Depth |
| 18 | 18 |
| 19 GPU Memory in Chrome involves several different types of allocations. These | 19 GPU Memory in Chrome involves several different types of allocations. These |
| 20 include, but are not limited to: | 20 include, but are not limited to: |
| 21 | 21 |
| 22 * **Raw OpenGL Objects**: These objects are allocated by Chrome using the | 22 * **Raw OpenGL Objects**: These objects are allocated by Chrome using the |
| 23 OpenGL API. Chrome itself has handles to these objects, but the actual | 23 OpenGL API. Chrome itself has handles to these objects, but the actual |
| 24 backing memory may live in a variety of places (CPU side in the GPU process, | 24 backing memory may live in a variety of places (CPU side in the GPU process, |
| (...skipping 13 matching lines...) Expand all Loading... |
| 38 to be bound to an OpenGL texture using the image extension. | 38 to be bound to an OpenGL texture using the image extension. |
| 39 | 39 |
| 40 GPU Memory can be found across a number of different processes, in a few | 40 GPU Memory can be found across a number of different processes, in a few |
| 41 different categories. | 41 different categories. |
| 42 | 42 |
| 43 Renderer or browser process: | 43 Renderer or browser process: |
| 44 | 44 |
| 45 * **CC Category**: The CC category contains all resource allocations used in | 45 * **CC Category**: The CC category contains all resource allocations used in |
| 46 the Chrome Compositor. When GPU rasterization is enabled, these resource | 46 the Chrome Compositor. When GPU rasterization is enabled, these resource |
| 47 allocations will be GPU allocations as well. See also | 47 allocations will be GPU allocations as well. See also |
| 48 [cc/memory][cc-memory]. | 48 [docs/memory-infra/probe-cc.md][cc-memory]. |
| 49 * **Skia/gpu_resources Category**: All GPU resources used by Skia. | 49 * **Skia/gpu_resources Category**: All GPU resources used by Skia. |
| 50 * **GPUMemoryBuffer Category**: All GPUMemoryBuffers in use in the current | 50 * **GPUMemoryBuffer Category**: All GPUMemoryBuffers in use in the current |
| 51 process. | 51 process. |
| 52 | 52 |
| 53 GPU process: | 53 GPU process: |
| 54 | 54 |
| 55 * **GPU Category**: All GPU allocations, many shared with other processes. | 55 * **GPU Category**: All GPU allocations, many shared with other processes. |
| 56 * **GPUMemoryBuffer Category**: All GPUMemoryBuffers. | 56 * **GPUMemoryBuffer Category**: All GPUMemoryBuffers. |
| 57 | 57 |
| 58 ## Example | 58 ## Example |
| (...skipping 22 matching lines...) Expand all Loading... |
| 81 ![Effective size of zero][non-owner-size] | 81 ![Effective size of zero][non-owner-size] |
| 82 | 82 |
| 83 Other types, such as GPUMemoryBuffers and GLImages have similar sharing | 83 Other types, such as GPUMemoryBuffers and GLImages have similar sharing |
| 84 patterns. | 84 patterns. |
| 85 | 85 |
| 86 When trying to get an overview of the absolute memory usage tied to the GPU, | 86 When trying to get an overview of the absolute memory usage tied to the GPU, |
| 87 you can look at the size column (not effective size) of just the GPU process' | 87 you can look at the size column (not effective size) of just the GPU process' |
| 88 GPU category. This will show all GPU allocations, whether or not they are owned | 88 GPU category. This will show all GPU allocations, whether or not they are owned |
| 89 by another process. | 89 by another process. |
| 90 | 90 |
| 91 [cc-memory]: /cc/memory.md | 91 [cc-memory]: /docs/memory-infra/probe-cc.md |
| 92 [owner-size]: https://storage.googleapis.com/chromium-docs.appspot.com/a325c
4426422e53394a322d31b652cfa34231189 | 92 [owner-size]: https://storage.googleapis.com/chromium-docs.appspot.com/a325c
4426422e53394a322d31b652cfa34231189 |
| 93 [non-owner-size]: https://storage.googleapis.com/chromium-docs.appspot.com/b8cf4
64636940d0925f29a102e99aabb9af40b13 | 93 [non-owner-size]: https://storage.googleapis.com/chromium-docs.appspot.com/b8cf4
64636940d0925f29a102e99aabb9af40b13 |
| OLD | NEW |