В многоядерном процессоре как найти время симуляции самого медленного ядра?

(Извините, если я неправильно сформулировал вопрос)

Я запускаю некоторые приложения на 16-ядерной плате Parallella, и мне было интересно, есть ли способ рассчитать количество времени, затрачиваемое самым медленным ядром?

Я думаю, что если я добавлю user + sys раз, я получу сумму времени выполнения для всех ядер, правильно?

Вот некоторые из результатов:

real        0m1.927s
user        0m3.190s
sys         0m0.080s

1 ответ

Disambiguation

Существует сильная разница между многоядерным режимом операций, скомпонованным "параллельным" способом, и обработкой в параллельном режиме.

На плате Parallella, если говорить о Zynq - двухъядерный процессор ARM Cortex-A9 / серия Xilinx 7 на чипе FPGA - за это вы можете получить user + sys значения из бортового linux. Не то же самое для Epiphany MPPA ( Massive Parallel Processor Array) аппаратное устройство или дополнительный параллелизуемый FPGA - загружаемое программное обеспечение софт-процессорных ядер.

Также обратите внимание, что в действительно параллельной системе слово "медленное" или "медленное" ядро ​​теряет свое значение, поскольку все процессоры запускаются и заканчивают параллельно, для получения подробной информации см. PAR синтаксический конструктор в occam-pi (даже ценой ожидания альтернативного пути обработки, так как все они заканчиваются параллельно).

Как?

Можно включить некоторые данные сигнализации для хранения во время выполнения кода MPPA значения счетчика тактовых импульсов / позднее полученного со стороны Linux/ARM, и использовать эти данные телеметрических записей для оценки после записи времени выполнения кода, предварительно записанного "внутри MPPA".

Выполнение того же в реальном времени может быть возможным для инструмента отслеживания in-vivo / State-Diagnostics / Inspect-Analyze-Tool, но для такого Real-Time-SysMONITOR потребуются большие усилия по проектированию системы.

Однако это выполнимо. Аналогичный подход был использован для визуальной проверки переходов состояний в FSA-дизайн / проверка.

Хорошее объяснение концептуальной и эксплуатационной разницы между PARALLEL , SERIAL а также CONCURRENT режим выполнения кода.

Другие вопросы по тегам