Форум программистов, компьютерный форум CyberForum.ru

Определить загруженность ядер процессора - C++

Восстановить пароль Регистрация
 
badplayer
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 4
19.08.2014, 17:53     Определить загруженность ядер процессора #1
Помогите определить загруженность ядер процессора (может как-нибудь получить эти данные из системы).
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.08.2014, 17:53     Определить загруженность ядер процессора
Посмотрите здесь:

Дирректива процессора C++
Температура процессора Intel C++
Кеш процессора C++
Эмуляция работы процессора C++
C++ Директив процессора
Нужно узнать количество ядер в системе C++
C++ Быстродействие процессора?
C++ Вычислить количество ядер в процессоре
C++ Определение колличества ядер процессора
загрузка процессора по максимуму C++
Неполное использование процессора C++
C++ Кеш линии процессора

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
orange_fox
 Аватар для orange_fox
34 / 34 / 6
Регистрация: 06.04.2014
Сообщений: 189
19.08.2014, 18:52     Определить загруженность ядер процессора #2
C++
1
2
3
4
5
6
7
8
SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION ProcessorInfo[MAX_PROCESSOR];
NTSTATUS Status;
Status =NtQuerySystemInformation(
SystemProcessorPerformanceInformation,
ProcessorInfo,
sizeof(SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION) * MAX_PROCESSOR,
NULL
);
BlackIce
309 / 171 / 64
Регистрация: 18.01.2014
Сообщений: 387
19.08.2014, 18:58     Определить загруженность ядер процессора #3
Простой пример, определяющий общую загруженность процессора:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
#include <windows.h>
using namespace std;
 
ULONGLONG ft2ull(FILETIME &ft) {
    ULARGE_INTEGER ul;
    ul.HighPart = ft.dwHighDateTime;
    ul.LowPart = ft.dwLowDateTime;
    return ul.QuadPart;
}
 
int main() {
    FILETIME idle, prev_idle;
    FILETIME kernel, prev_kernel;
    FILETIME user, prev_user;
    GetSystemTimes(&prev_idle, &prev_kernel, &prev_user);
    Sleep(1000);
    while (true) {
        GetSystemTimes(&idle, &kernel, &user);
        ULONGLONG sys = (ft2ull(user) - ft2ull(prev_user)) +
            (ft2ull(kernel) - ft2ull(prev_kernel));
        cout << int((sys - ft2ull(idle) + ft2ull(prev_idle)) * 100.0 / sys) << "%" << endl;
        prev_idle = idle;
        prev_kernel = kernel;
        prev_user = user;
        Sleep(1000);
    }
}
Andrej
И целого heap'а мало
 Аватар для Andrej
93 / 54 / 9
Регистрация: 31.07.2014
Сообщений: 293
19.08.2014, 19:45     Определить загруженность ядер процессора #4
/proc/stat
/proc/loadavg
/proc/[pid]/stat
Yandex
Объявления
19.08.2014, 19:45     Определить загруженность ядер процессора
Ответ Создать тему
Опции темы

Текущее время: 16:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru