...
Представители 2 категории.
Microsoft Chess.
Для всех операций делает обертки, которые находятся с помощью профайлера. Эти обертки помогает планировщику планировать.
Сам планировщик работает в 3 этапа
- воспроизведение - У планировщика есть файл расписания. На первом прогоне он пуст (видимо 1 итерацию начинаем с записи). Этот файл содержит частичный график, который был сгенерирован на предыдущих итерации (его генерирует этап запись).
- запись - В каждой точке (интересных операциях) отмечает какие потоки параллельно могут работать. НА операциях переключения потоков выбираем поток основываясь на приоритетах.
- поиск - Собственно генерирует однопроцесорное расписание на каждой точке.
Справедливый планировщик дает меньший приоритет потокам, которые передали управление.
Всего вставляют 2 прерывания на итерацию. Умеют сохранять состояния, что позволяет не воспроизводить заново всю итерацию, а продолжить с какого-то места.
Status | ||
---|---|---|
|