So I tracked down the paged pool leak. It appears to be a bug in my ATI driver (or perhaps a bug in
the DX interface that shows up as a leak in the driver). It's caused by locking POOL_MANAGED textures
that are currently in the GPU push buffer. When you do that it causes the hardware texture to get aliased
to avoid contention, and it appears something in there is leaking. I don't think that whole textures are
leaking because the leak is pretty slow, it must just be some kind of texture book-keeping object (eg.
maybe it actually is the "texture" struct, just not the actual surface bits).
Anyhoo, nobody cares about bugs that I see via Directx8, but what is interesting is the cool Poolmon utility.
Poolmon lets you see the kernel allocations and thus track down leaks.
You need to turn on some registry settings .
Run Poolmon in a command line with lots of vertical lines.
Use the keys "d" and "p" to
get the view you want
Then track away.
1 comment:
Post a Comment