четверг, 20 октября 2016 г.

ПРОСТИМИ СЛОВАМИ ПРО СЕРВЕРНІ ТА ЗВИЧАЙНІ ПРОЦЕСОРИ.


Напевно багато хто з вас знає, що в колекції процесорів Intel і AMD є не тільки 4-х та 8-ядерні моделі, але і процесори з шаленою кількістю ядер. Їх кількість може варіюватися від чотирьох до 32-ох. Як правило, такі системи коштують просто космічних грошей. Наприклад, 24-ядерний 48-потоковий Intel XEON E7 8890 v4 з частотою 2.2 Ггц на ядро і кешем 60 Мб призначений для того, що б працювати в сервері. А вартість такої 4-сокетної 96-ядерної 192-поточної конфігурації з 2 Тб оперативної пам'яті становить $165 000.
Завдання статті - з'ясувати, навіщо ж потрібні такі багатоядерні серверні процесори і системи в цілому, а також на скільки вони ефективні в порівнянні із звичайними "домашніми" процесорами.
Почнемо, мабуть, з того, коли почалася ця гонка ядер. Прийнято вважати, що в даному напрямку першопрохідцем стала компанія AMD, представивши свій перший повноцінний 2-ядерний процесор для серверів - AMD Opteron. Однак, це твердження можна прийняти як за вірне, так і за невірне. Все тому, що ще до AMD компанія IBM в 2001 році представила свій 2-ядерний процесор IBM Power4. Призначався він так само для серверів, але був не зовсім 2-ядерним, тому як на чіпі Power4 було просто розпаяно 2 процесори. Так само були різні варіації цього "каменя", аж до 4-процесорного, що містив 8 ядер на одній платі.
У 2002 році Intel і AMD майже одночасно оголошують про перспективи в майбутньому налагодити виробництво багатоядерних процесорів. Вони випускають їх практично в один і той же час з проміжком у кілька місяців. І ось у квітні 2005 року AMD показує свій перший 2-ядерний Opteron з частотою 2.2 Ггц, створений на 64-бітній архітектурі. У свою чергу Intel випускає свій Pentium D 25 травня 2005 року, який відразу надходить у продаж. 90nm-й Pentium D працював на ядрі Smithfield, мав тактову частоту від 2.6 до 3.2 Ггц, кеш 2Мб і цінник в 250-500$. Але камінь вийшов не досить вдалим, так як розроблявся в поспіху. Незабаром після виходу процесора Intel це визнала. В підсумку, у Intel вийшло просто помістити 2 ядра в один кристал, які не мали ніякої загальної схемотехніки. По-суті, там було 2 окремих процесори які з'єднувала одна загальна шина. Так і було покладено початок багатоядерним процесорам.
Дізнавшись трохи про історію створення багатоядерних процесоіов, ми плавно переходимо до того, навіщо ж потрібні серверні процесори і сервери в цілому. По-перше, давайте визначимося з тим, що ж це таке і який закладений сенс у серверний комп'ютер (сервер). Під сервером необхідно розуміти комп'ютер, завдання якого - надавати в автоматичному режимі, віддаленим користувачам, якийсь або набір сервісів або послуг без участі постійного контролю з боку людини. Тому такі системи повинні бути максимально надійними і безвідмовними. Наприклад, коли ви читаєте цю статті на Senfil, дивитесь відео на YouTube, переписуєтесь з друзями в Telegram - ваш комп'ютер зв'язується цими сервісами через їх сервера і черпає з них всю потрібну для вас інформацію.
Головна вимога до сервера - безвідмовне виконання своїх завдань 24 години на добу, 7 днів в тиждень. Контроль якості у серверних ЦП набагато вищий. Вони проходять через всі види випробувань в стресових умовах: робота при високих температурах, робота при високому обчислювальному навантаженні і т. д. Все тому, що вони повинні бути розраховані на роботу протягом тривалих періодів. Наприклад, AMD оцінює робочий цикл лінійки Opteron в 5 років при 100% навантаженні 24/7, настільні FX в 3 роки при тому ж навантаженні.
У свою чергу, компанія Intel має лінійку процесорів Xeon до якої висуваються такі ж вимоги, як і до процесорів від AMD. Якщо повернутися до історії, то виробництво процесорів Xeon почалося ще в далекому 1998 році з розробкою сокету Slot 2, в який трохи незвичайним шляхом вставлявся процесор. Це була окрема плата з процесором, чимось схожа на сучасну відеокарту або на лінійку процесорів Phi. Такий "слот" був призначений для процесорів Pentium 2 Xeon і Pentium 3 Xeon. AMD ж представила свої серверні Opteron на архітектурі К8 тільки у квітні 2003 року. Їх відмітною особливістю стала пряма підтримка 32-бітних програм без втрати продуктивності, а так само 64-бітних за тим же сценарієм. У свій час дані процесори користувалися досить великим успіхом. Так в чому ж відмінність серверних ПК від звичайних настільних? По-перше, для центрального процесора це кількість ядер і багатопоточність. Важливо, що б системі вистачало ресурсів для обробки декількох завдань паралельно. Так само важливу роль грає кількість кеш-пам'яті. Кеш серверних процесорів значно більше, ніж у звичайних. Так само, процесорів в серверах може бути декілька, від 1 до 4 на одній материнській платі.
Другою відмінністю сервера від ПК є великий обсяг оперативної пам'яті. Зараз у звичайних домашніх ПК цей обсяг, в середньому, становить 4-8 Гб. У свою чергу, середній об'єм оперативної пам'яті сервера починається від 64 Гб аж до космічних nТб. Третьою відмінністю є відсутність відеокарти. Вона просто не потрібна серверу. Тим паче, витрати електроенергії для серверів дуже великі, тому витрачати енергію на зайві цілі просто не потрібно. Так само сервери славляться великою кількістю збережених даних. Але так як жорсткі диски не перестрибнули рубіж в кілька сотень терабайт, то в серверах їх об'єднують в Raid-масиви, а великий обсяг оперативної пам'яті дозволяє зберігати в собі дані які найчастіше використовуються і миттєво отримувати доступ до необхідної інформації.
Так само варто відзначити, що якщо на ринку персональних комп'ютерів лідирує Intel і AMD, то в сегменті серверних рішень вагому роль відіграють так само IBM, HP, Oracle і Fujitsu. При цьому, якщо в персональному сегменті популярна архітектура х86, то в серверному ринку всі значимі гравці продовжують пропонувати власні технологічні рішення. Можна згадати Intel-овську ІА-64, IBM-овську Power, сучасну для Oracle і Fujitsu - Sparc. І тут, напевне, ви задаєтеся питанням... А чому б не використати звичайний процесор для серверних завдань? Звичайно, це можна зробити, але ми не отримаємо тієї ефективності та швидкої роботи, яку могли б отримати з використанням серверного процесора, особливо, якщо до сервера підключаться користувачі. Ваш Core і7 просто не зможе обробити такий потік інформації і даних, що призведе до браку продуктивності та зависання. Хоча, все залежить від ваших завдань і потреб. Також варто згадати, що деякі старі серверні процесори дуже вигідні до купівлі, а ігри на них будуть йти так само, як і на і5/і7 2-3 поколінь. Тому серверні процесори можна вважати універсальними "конячками" на яких не тільки можна побудувати сервер, але і самий звичайний домашній ПК для ігор.

Комментариев нет:

Отправить комментарий