Как я могу сделать один процесс на одно ядро процессора на Windows
Программно получить cpuid, на котором работает каждый процесс, а также использование ядра процессора различных процессов на каждом ядре.
Пример
Имя Core1 Core2 Core3 Core4
notepad.exe 0,5% 0,2% 0,1% 0,3%
Мне нужен код api c++ для платформы windows
Что я уже пробовал:
Да у меня есть tried.it возможно ли в linux использование ps-p "pid"- L-o pid,psr,pcpu мне нужно получить эквивалентную команду или код, чтобы получить psr и pcpu в windows.
В windows с помощью wmi можно получить только общую загрузку процессора для процесса, а не на ядро за использование процесса.
Dave Kreskowiak
Ты не можешь. Windows не отслеживает процессы "на ядро".
Member 13036251
Вы пробовали powershell? Не знаю, как вы можете получить это гранулированное.
Member 12113322
Я действительно попробовал PowerShell. команда ps не перечисляет атрибуты psr и pcpu, а также эквивалентные tasklist и GetProcess() api не перечисляют эти свойства.любой инструмент, который предоставляет эту информацию о процессе?
Foothill
Вы можете приблизиться к этой информации с помощью классов инструментария управления Windows, но не без хороших вычислений в реальном времени, которые, скорее всего, нарушат процесс, который вы хотите отслеживать.
Member 12113322
Классы Win32_PerfRawData_PerfProc_Process и Win32_PerfFormattedData_PerfOS_Processor обеспечивают общее процессорное время для процесса и общее процентное время ядра для отдельных ядер соответственно.
Andy Bantly
Я бы предложил пойти на форум SysInternals и спросить этих волшебников, как они это делают...