Есть ли какие-нибудь средства для эмуляции многопроцессорной системы (желательно под Windows)?
Хочется смотреть распределение нагрузки по процессорам...
Здравствуйте, XuTMAH, Вы писали:
XTM>Есть ли какие-нибудь средства для эмуляции многопроцессорной системы (желательно под Windows)?
XTM>Хочется смотреть распределение нагрузки по процессорам...
Verilog? (

)
Ничего похожего на истинную эмуляцию для Windows нет, по крайней мере, в свободном доступе.
OpenMP должен проявить себя на многоядерном процессоре. Смотреть за потоками --- с помощью Intel Thread Checker из VTune Performance Analyzer.
Если удастся форсированно задать число потоков в OpenMP-программе, то можно прикинуть простой/загрузку этих потоков и на одном процессоре. По крайней мере, для MPI мне удавалось получить адекватные оценки эффективности распараллеливания прямо на домашней машине. Вот только я не представляю, как заставить OpenMP "распоточиться" на одном камне.
Кроме того, существуют предсказатели производительности.
Вот один из проектов. Проблема в том, что ему надо сначала задать параметры системы.
(Вообще-то на OpenMP свет клином не сошелся. "Доморощенная" DVM-система, написанная в ИПМ Келдыша, предоставляет, в общем-то, сходные возможности. Возможно, удастся заменить директивы OpenMP на аналогичные директивы DVM и воспользоваться встроеным предсказателем производительности. См.
здесь.)
V>Если удастся форсированно задать число потоков в OpenMP-программе, то можно прикинуть простой/загрузку этих потоков и на одном процессоре. По крайней мере, для MPI мне удавалось получить адекватные оценки эффективности распараллеливания прямо на домашней машине. Вот только я не представляю, как заставить OpenMP "распоточиться" на одном камне.
Посмотрел доки. Число потоков задать можно, хотя директивами тут не обойтись:
omp_set_num_threads(5);