我想知道一个进程使用了多少累计内存?
我正在分析我的系统在大型复制操作期间的性能。其中,我针对的是几个进程。
我想计算他们在那段时间内使用了多少内存,以及某个进程是否使用了大量内存,我想深入研究它(任何内存泄漏或导致内存开销的代码片段)。
我已尝试使用 xperf 命令。
在 xperf 命令中,我使用了以下内核标志
->MEMORY+MEMINFO+MEMINFO_WS+HARD_FAULTS+VIRT_ALLOC+VAMAP+FOOTPRINT+REFSET
& stackwalk 标志
->PageAccess+PageAccessEx+PageRelease+PageRangeAccess+PageRangeRelease+VirtualAlloc+VirtualFree+HardFault+HeapCreate+HeapFree+HeapAlloc+HeapDestroy+HeapRealloc+PagefileMappedSectionCreate+PagefileMappedSectionDelete
在生成的 etl 中,我可以在左窗格的内存下看到以下选项卡。内存利用率:这没有用,因为它不包含任何与进程相关的数据。
硬故障:进程的页面故障虚拟分配提交生命周期:进程的未完成提交池图:分页数据和非分页数据驻留集:
- 默认
- 内存压力
- 物理内存压力
- 进程私有工作集
请告诉我在内存使用方面需要考虑哪些选项卡/参数。如何使用这些数据来得出有关内存使用情况\内存泄漏\ API 名称的结论,这些名称通过加载符号导致内存利用率更高?