Багатоядерні процесори – це інтегральна схема, яка використовує два або більше окремих процесорів чи ядер для обробки даних. Ядра можуть бути приєднані до однієї інтегральної схеми або включені як окремі плашки в упаковці чипа.
Кожне ядро має власний кеш і окрему ємність для обробки даних. Перевага багатоядерних процесорів полягає в явному збільшенні швидкості обробки даних. Традиційний одноядерний процесор зберігає деякі дані у своєму кеші, і якщо необхідних даних немає в кеші, їх потрібно вилучити з інших місць, таких як оперативна пам’ять (ОЗП).
Коли це відбувається, швидкість процесора сповільнюється до максимальної швидкості оперативної пам’яті або іншого пристрою для зберігання даних. Ця швидкість зазвичай набагато повільніша, ніж максимальна швидкість процесора.
Багатоядерні процесори працюють швидше, тому що кожне ядро може обробляти власний потік даних. У той час як багатоядерні процесори можуть вибірково кешувати дані та отримувати некешовані дані з інших сховищ, додаткове ядро може продовжувати виконання команди та отримання інформації з нормальною швидкістю процесора, в той час як інший процесор отримує потрібну інформацію з повільних пристроїв зберігання. Таким чином, система не буде гальмувати під час отримання даних.
Багатоядерний процесор особливо цінний для багатозадачності, коли більше ніж одна програма обслуговує свій набір даних для їх обробки. Окремі потоки даних можуть оброблятися різними ядрами, збільшуючи загальну швидкість обробки. Для однієї програми, щоб скористатися перевагами багатоядерних технологій, вона повинна мати технологію одночасної багатопоточності (SMT), що дозволяє їй спрямовувати паралельні набори інструкцій для кількох ядер для їх використання.
Перший комерційно доступний багатоядерний процесор став двоядерним процесором. Є також багатоядерні процесори з чотирма, шістьма та вісьмома ядрами. Багато материнських плат не в змозі впоратися з такою кількістю ядер. Багатоядерні системи можуть бути однорідними з використанням усіх однакових ядер або гетерогенними з використанням неідентичних ядер.
Хоча багатоядерні процесори призначені для збільшення загальної швидкості та продуктивності, не всі програми використовують технології багатоядерних процесорів. Багато програм і навіть деякі операційні системи мають SMT, необхідні для використання більш ніж одного ядра процесора. Операційні системи, які використовують багатоядерні процесори, не завжди розраховані на максимальну обробку багатоядерних процесорів, тому всі можливості обробки часто залишаються нереалізованими.
Багатоядерний процесор зазвичай виділяє більше тепла, ніж одноядерний процесор, спричиняючи проблеми управління теплом. Кількість тепла, що виділяється процесором, має тенденцію до зростання в геометричній прогресії з кожним додатковим ядром. Висока температура може спричинити перегрів процесора, створюючи оперативну проблему та ризик безпеки. Виробники процесорів змушені вкладати значний час та технології для створення рішень теплових завдань, представлених на багатоядерних процесорах.






