This is a reminder ticket to continue the discussion started in https://github.com/giampaolo/psutil/issues/2366.
Recap: on Windows we use NtQuerySystemInformation(SystemProcessInformation) to collect multiple process info about all PIDs (Windows is the only platform which allows this). This data structure is used on a per-process basis, meaning it's discarded (or to put it another way, it's unnecessarily fetched for every Process instance).
This is a reminder ticket to continue the discussion started in https://github.com/giampaolo/psutil/issues/2366. Recap: on Windows we use
NtQuerySystemInformation(SystemProcessInformation)
to collect multiple process info about all PIDs (Windows is the only platform which allows this). This data structure is used on a per-process basis, meaning it's discarded (or to put it another way, it's unnecessarily fetched for everyProcess
instance).psutil.process_iter()
could be tweaked in a way that it passes the entire structure to theProcess
instances, and this way we would have a performance boost. In detail, read the considerations written in https://github.com/giampaolo/psutil/issues/2366#issuecomment-2393071740.