Как я могу измерить время процессора и время настенных часов в Linux / Windows?

Я имею в виду: как я могу измерить время, затраченное моим ЦП на выполнение функции, и время настенных часов, необходимое для запуска моей функции? (Меня интересует Linux / Windows, а также x86 и x86_64). Посмотрите, что я хочу сделать (я использую C ++ здесь, но я бы предпочел решение C):

int startcputime, endcputime, wcts, wcte;

startcputime = cputime();
function(args);
endcputime = cputime();

std::cout << "it took " << endcputime - startcputime << " s of CPU to execute this\n";

wcts = wallclocktime();
function(args);
wcte = wallclocktime();

std::cout << "it took " << wcte - wcts << " s of real time to execute this\n";

Другой важный вопрос: является ли этот тип архитектуры измерения времени независимым или нет?

Ответы на вопрос(4)

Ваш ответ на вопрос