2010-07-07 2 views
7

Я хочу собирать информацию о том, когда мои потоки запланированы (и запланированы) и на каких процессорах в Linux. Я с удовольствием собираю информацию и сохраняю ее в файле для автономного анализа позже, так как мне нужно объединить информацию о планировании с другими источниками событий, сгенерированными моим кодом. В идеале информация будет собираться самой программой, поскольку я планирую использовать все ядра на машине большую часть времени, а использование внешнего процесса для выполнения выборки будет мешать исполнению, которое я хочу измерить.Сбор информации о планировании потоков на Linux

Как это возможно в Linux? Каковы варианты?

ответ

3

Linux perf tool - это инструмент для профилирования, поддерживаемый ядром общего назначения. Помимо прочего, он может записывать события, которые включают события планирования задач.

+0

спасибо, я знаю о перфомансе, что я действительно хотел, это указатели на API, которые я могу использовать для получения информации из моего собственного кода. –

+0

@Simon Marlow: 'perf' - это API. Вам не нужно беспокоиться об этом, влияя на то, что вы пытаетесь измерить, потому что он работает, так это то, что ядро ​​регистрирует события во внутреннем буфере по мере их возникновения, а средство пользовательского пространства запускается после факта, чтобы извлечь событие журнал. – caf

+0

ОК, спасибо, я посмотрю. –

Смежные вопросы