орпорації дослідним шляхом показали ефективність регулювання тактової частоти асиметричної багатопроцесорної системи залежно від активності обчислювальних ядер. Для забезпечення багатопоточності використовуються різні інструменти. br/>
.2 Інструментальні засоби багатоядерних систем
Для забезпечення багатопоточності використовують такі інструменти: компілятори, апаратні отладчики, програмні отладчики, підтримка багатопоточності на рівні ОС. p align="justify"> Компілятори
Щоб отримати максимальну вигоду від використання многоядерной архітектури потрібна підтримка на рівні компілятора. Так, у 2005 році Intel випустила версію 9.0 компілятора мов C + + і Фортран для платформ Linux та Windows. Цей компілятор дозволяє ефективно використовувати можливості технології Hyper-Threading і багатоядерних процесорів. Він підтримує можливість автопараллелізма, тобто автоматичного виявлення в додатках можливості створення безлічі паралельних потоків з підтримкою специфікації OpenMP 2.5. p align="justify"> Завдяки підтримці стандарту OpenMP компілятор Microsoft Visual C + + 2005 забезпечує паралельну багатопоточну обробку. Для цього потрібно або вказати параметр компілятора "/ openmp", або встановити в конфігурації прапор "OpenMP Support". З листопада 2005 року компілятор gcc для мов програмування С, C + + і Фортран 95 підтримує OpenMP за допомогою опції "-fopenmp". Варто згадати і набір компіляторів EKOPath компанії PathScale, призначених для 64-розрядних систем на базі Linux (AMD64 і EM64T). p align="justify"> Програмні отладчики
Програмісти добре знають, як важко налагоджувати багатопотокові програми. При аварійному завершенні програми найчастіше потрібна проаналізувати стек викликів функцій у всіх потоках, але звичайний відладчик показує тільки стек потоку, на якому відбулося аварійне завершення програми. Наприклад, стандартні засоби gdb погано пристосовані для налагодження багатопоточних додатків, тому пропонуються спеціальні версії цього відладчика для конкретних операційних систем: в їх ядра включаються додаткові можливості налагодження багатопоточних додатків. p align="justify"> Одна з таких реалізацій відладчик компанії Etnus TotalView, призначений для платформ Linux, Unix і LynxOS. Він підтримує багатопоточність, MPI, OpenMP, мови програмування Сі/C + + і Фортран, а також змішані коди з використанням різних мов програмування. Корисним засобом оптимізації та налагодження паралельних програм є пакет Intel Threading Tools. Він забезпечує діагностику помилок і аналіз продуктивності багатопоточних додатків, що використовують моделі потоків Win32 і OpenMP. Усунення несправностей дозволяє виявляти взаємні блокування (deadlock) і гонки (race condition) між потоками, локалізувати проблеми на рівні вихідного коду, аналізувати ефективність способів підвищення продуктивності OpenMP-програм. p align="justify"> Апаратні отладчики
Д...