Архітектура серверів корпоративних баз даних

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Реферат на тему:
"Архітектура серверів корпоративних баз даних"
Московський Державний
Інженер-Фізичний Інститут (ТУ)

Зміст
Введення
1. Системи управління базами даних та сервери баз даних
  1. Сервери Escala компанії Bull

2.1. Архітектура PowerScale

2.2. Сімейство UNIX-серверів Escala

  1. Сервери компанії Hewlett-Packard

3.1. Сімейство комп'ютерів Alpha

  1. Сервери фірми DEC

4.1. Сімейство комп'ютерів Alpha

  1. Відмовостійкі сервери компанії Tandem Computer Inc.

Висновок

Список літератури
Додаток 1

Введення
Поява в 80-х роках персональних комп'ютерів (ПК) і локальних мереж ПК найбільш серйозним чином змінило організацію корпоративних обчислень. На відміну від традиційного, добре керованого безпечного середовища обчислень підприємства, побудованої на базі універсальної обчислювальної машини (мейнфрейм) з приєднаними до неї терміналами, середовище локальних мереж ПК погано контролюються, погано керується і небезпечне. З іншого боку, розширені засоби мережної організації уможливлюють поділ бізнес інформації усередині груп індивідуальних користувачів, і між ними, усередині і поза корпорацією і полегшують організацію інформаційних процесів у масштабі підприємства. Щоб ліквідувати пролом між окремими локальними мережами ПК і традиційними засобами обчислень, а також для організації розподілених обчислень у масштабі підприємства з'явилася модель обчислень на базі робочих груп.
Як правило, терміни сервери робочих груп і мережних серверів використовуються взаємозамінні. Сервер робочої групи може бути сервером, побудованим на одному процесорі компанії Intel, або суперсервером (з декількома ЦП), подібним виробам компаній Compaq, HP, IBM і DEC, що працюють під управлінням операційної системи Windows NT. Це може бути також UNIX-сервер компаній Sun, HP, IBM і DEC.
За рівнем загальносистемної продуктивності, функціональним можливостям окремих компонентів, відмовостійкості, а також у підтримці багатопроцесорної обробки, системного адміністрування і дискових масивів великої ємності суперсервери вийшли в даний час на один рівень з мейнфрейми і потужними мінікомп'ютер. Сучасні суперсервери характеризуються:
  • наявністю двох або більше центральних процесорів RISC, або CISC;
  • багаторівневої шинної архітектурою, в якій високошвидкісна системна шина пов'язує між собою кілька процесорів та оперативну пам'ять, а також безліч стандартних шин введення / виводу, розміщених в тому ж корпусі;
  • підтримкою технології дискових масивів RAID;
  • підтримкою режиму симетричної багатопроцесорної обробки, що дозволяє розподіляти завдання по декількох центральних процесорів або режиму асиметричної багатопроцесорної обробки, яка допускає виділення процесорів для виконання конкретних завдань.
Основу такого рівня сучасних інформаційних систем підприємств і організацій складають корпоративні сервери різноманітного функціонального призначення, побудовані на базі операційної системи Unix. Архітектура цих систем варіюється в широких межах залежно від масштабу розв'язуваних завдань і розмірів підприємства. Двома основними проблемами побудови обчислювальних систем для критично важливих додатків, пов'язаних з обробкою транзакцій, керуванням базами даних і обслуговуванням телекомунікацій, є забезпечення високої продуктивності і тривалого функціонування систем. Найбільш ефективний спосіб досягнення заданого рівня продуктивності - застосування паралельних масштабованих архітектур. Завдання забезпечення тривалого функціонування системи має три складових: надійність, готовність і зручність обслуговування. Всі ці три складові припускають, в першу чергу, боротьбу з несправностями системи, породжуваними відмовами і збоями у її роботі. Ця боротьба ведеться за всіма трьома напрямками, які взаємопов'язані і застосовуються спільно.
Існує декілька типів систем високої готовності, що відрізняються своїми функціональними можливостями і вартістю. Найбільш оптимальним по відношенню висока готовність / вартість є кластерні системи.
У даному рефераті будуть розглянуті особливості архітектури RISC процесорів фірм DEC, Hewlett-Packard і Bull і особливості побудови на їх основі багатопроцесорних SMP серверів та кластерних систем.

1. Системи управління базами даних та сервери баз даних
Одним з найбільш поширених класів прикладних систем для серверів, що випускаються більшістю компаній-виробників комп'ютерної техніки, є системи керування базами даних (СКБД). Сервери СУБД значно складніші, ніж, наприклад, сервери мережевих файлових систем NFS. Стандартна мова реляційних СУБД (SQL) набагато багатше, ніж набір операцій NFS. Більше того, є кілька популярних комерційних реалізацій СУБД, доступних на серверах різних компаній, кожна з яких має зовсім різні характеристики.
Як додатки, орієнтовані на використання баз даних, так і самі СУБД сильно розрізняються по своїй організації. Якщо системи на базі файлових серверів порівняно просто розділити за типом робочого навантаження на два принципово різних класу (з інтенсивною обробкою атрибутів файлів і з інтенсивною обробкою самих даних), то провести подібну класифікацію серед додатків баз даних і СУБД просто неможливо.
Хоча на сьогодні є цілий ряд різних архітектур баз даних, ринок
UNIX-систем, здається, зупинився головним чином на реляційної моделі. Абсолютна більшість інстальованих сьогодні систем реляційні, оскільки ця архітектура обрана такими виробниками як Oracle, Sybase, Ingres, Informix, Progress, Emdivss і DBase.
Але навіть з урахуванням того, що переважна більшість систем працює за однією і тією ж концептуально загальною схемою, між різними продуктами є великі архітектурні відмінності. Можливо найбільш суттєвим є реалізація самої СУБД.
На вибір архітектури сервера впливають такі фактори:
· Вимоги по апаратних засобах обраної СУБД;
· Тип програми і число одночасно працюючих користувачів;
· Надійність;
· Вартість;
· Різноманітність програмного забезпечення (ПЗ);
· Масштабованість.
Поряд з ціною, можливість масштабованості системи є визначальним фактором при виборі того або іншого сервера. Під масштабованістю розуміється можливість для модернізації мережі або обчислювальної платформи на випадок необхідності збільшити робоче навантаження. У багатопроцесорних і кластерних системах проблеми з масштабованістю вирішена.
Найбільш поширені дві багатопроцесорні технології: симетрична і паралельна обробка. Неуніфікованих доступ до пам'яті (Non-Uniform Memory Access, NUMA) є новітньою різновидом SMP.
SMP використовується головним чином при роботі з великими базами даних, хоча в останні роки вона стала застосовуватися для складів даних і систем підтримки прийняття рішень. MPP застосовується в наукових і інженерних додатках для складних програм з великим об'ємом обчислень, наприклад для моделювання погоди на земній кулі або взаємодії субатомарних частинок.
З точки зору масштабованості основна відмінність між SMP і MPP в тому, яким чином окремі процесори управляють пам'яттю. У разі SMP всі процесори спільно використовують одну загальну шину пам'яті. Конкуренція за шину знижує ефективність архітектури із загальною пам'яттю при збільшенні кількості процесорів. Наявність окремого високошвидкісного кеша пам'яті для кожного процесора, як це передбачено в SMP-машинах старшого класу, пом'якшує, але не усуває цю проблему. Через таке обмеження багато конфігурації SMP складаються максимум з 2, 4 або 8 процесорів. Підтримка більше 8 процесорів передбачає всякі новації в апаратній архітектурі, і лише рідкісні SMP-машини підтримують понад 32 процесорів. Безсумнівним плюсом такого підходу є те, що SMP-комп'ютер виглядає для програми як звичайна однопроцесорна машина; це значно спрощує програмування. Зазвичай все, що необхідно, щоб скористатися перевагами багатопроцесорної обробки, - це багатопотокова програма і операційна система, здатна розподіляти потоки між процесорами.
У разі MPP кожен процесор має власну пам'ять і шину пам'яті. Перевагою такої конфігурації є те, що конкуренція за шину відсутня, а число процесорів може досягати сотень і тисяч. (Як правило, рішення вважається "масово-паралельним", тільки коли кількість процесорів перевищує 64.).
NUMA можна розглядати як проміжний етап між SMP і MPP. Вона визначає архітектуру для взаємодії декількох "вузлів" SMP. Вузлом може бути комп'ютер в кластері, хоча сьогодні частіше за все мають на увазі групу процесорів в комп'ютері. Кожен вузол має у своєму розпорядженні своєї власної виділеної фізичною пам'яттю, що усуває конкуренцію за ресурси. Вузли зв'язані за допомогою координатного комутатора таким чином, що всі вони можуть звертатися до одного й того ж віртуального простору пам'яті. Всі вузли разом виглядають для програми як одна SMP-машина.
Багатопроцесорний комп'ютер виконує лише одну копію операційної системи. Якщо виконуються декілька копій ОС, але процесори інтегровані таким чином, що, з точки зору адміністратора, користувача або програми, вони виглядають як одна система, то ми маємо справу з кластеризацією.
Незважаючи на те що Sun оголосила про 64-процесорної SMP-машині (Starfire Ultra Enterpise 10000), розробка і створення SMP-машин з 32 або 64 процесорами представляє серйозні труднощі і пов'язана зі значними витратами. При побудова SMP-машин з використанням NUMA має верхню межу в 32 процесора. Для побудові більш складних систем використовується кластеризація - об'єднання машин в кластери.
Кластеризація служить для об'єднання високопродуктивних систем. Першою концепцію кластерної системи анонсувала компанія DEC, визначивши її як групу об'єднаних між собою обчислювальних машин, що представляють собою єдиний вузол обробки інформації. По суті VAX-кластер являє собою слабкозв'язаного багатомашинну систему із загальною зовнішньою пам'яттю, що забезпечує єдиний механізм управління та адміністрування. В даний час на зміну VAX-кластерам приходять UNIX-кластери. При цьому VAX-кластери пропонують перевірений набір рішень, який встановлює критерії для оцінки подібних систем.
VAX-кластер має такі властивості:
· Поділ ресурсів. Комп'ютери VAX в кластері можуть розділяти доступ до загальних стрічкових і дискових накопичувачів. Всі комп'ютери VAX в кластері можуть звертатися до окремих файлів даних як до локальних;
· Висока готовність. Якщо відбувається відмова одного з VAX-комп'ютерів, завдання його користувачів автоматично можуть бути перенесені на інший комп'ютер кластера. Якщо в системі є декілька контролерів зовнішніх накопичувачів і один з них відмовляє, інші контролери автоматично підхоплюють його роботу;
· Висока пропускна здатність. Ряд прикладних систем можуть користуватися можливістю паралельного виконання завдань на декількох комп'ютерах кластера;
· Зручність обслуговування системи. Загальні бази даних можуть обслуговуватися з єдиного місця. Прикладні програми можуть інсталюватися тільки одного разу на загальних дисках кластера і розділятися між усіма комп'ютерами кластера;
· Розширюваність. Збільшення обчислювальної потужності кластера досягається підключенням до нього додаткових VAX-комп'ютерів. Додаткові накопичувачі на магнітних дисках і магнітних стрічках стають доступними для всіх комп'ютерів, що входять у кластер.
Робота будь-якої кластерної системи визначається двома головними компонентами: високошвидкісним механізмом зв'язку процесорів між собою і системним програмним забезпеченням, яке забезпечує клієнтам прозорий доступ до системного сервісу.
В даний час широке поширення одержала також технологія рівнобіжних баз даних. Ця технологія дозволяє безлічі процесорів розділяти доступ до єдиної бази даних. Розподіл завдань по безлічі процесорних ресурсів і паралельне їх виконання дозволяє досягти більш високого рівня пропускної здатності транзакцій, підтримувати більше число одночасно працюючих користувачів і прискорити виконання складних запитів. Існують три різних типи архітектури, які підтримують паралельні бази даних:
· Симетрична багатопроцесорна архітектура з загальною пам'яттю (Shared Memory SMP Architecture). Ця архітектура підтримує єдину базу даних, що працює на многопроцессорном сервері під керуванням однієї операційної системи. Збільшення продуктивності таких систем забезпечується нарощуванням числа процесорів, пристроїв оперативної і зовнішньої пам'яті;
· Архітектура з загальними (розділяються) дисками (Shared Disk Architecture). Це типовий випадок побудови кластерної системи. Ця архітектура підтримує єдину базу даних при роботі з декількома комп'ютерами, об'єднаними в кластер (звичайно такі комп'ютери називаються вузлами кластера), кожний з яких працює під керуванням своєї копії операційної системи. У таких системах усі вузли розділяють доступ до загальних дисків, на яких власне і розташовується єдина база даних. Продуктивність таких систем може збільшуватися як шляхом нарощування числа процесорів і обсягів оперативної пам'яті в кожному вузлі кластеру, так і за допомогою збільшення кількості самих вузлів;
· Архітектура без поділу ресурсів (Shared Nothing Architecture). Як і в архітектурі з загальними дисками, в цій архітектурі підтримується єдиний образ бази даних при роботі з декількома комп'ютерами, що працюють під управлінням своїх копій операційної системи. Проте в цій архітектурі кожен вузол системи має власну оперативну пам'ять і власні диски, які не розділяються між окремими вузлами системи. Практично в таких системах розділяється тільки загальний комунікаційний канал між вузлами системи. Продуктивність таких систем може збільшуватися шляхом додавання процесорів, обсягів оперативної і зовнішньої (дискової) пам'яті в кожному вузлі, а також шляхом нарощування кількості таких вузлів.
Таким чином, середовище для роботи паралельної бази даних володіє двома важливими властивостями: високою готовністю і високою продуктивністю. У випадку кластерної організації декілька комп'ютерів або вузлів кластера працюють з єдиною базою даних. У разі відмови одного з таких вузлів, що залишилися вузли можуть узяти на себе завдання, які виконувалися на що відмовив вузлі, не зупиняючи загальний процес роботи з базою даних. Оскільки логічно в кожному вузлі системи є образ бази даних, доступ до бази даних буде забезпечуватися до тих пір, поки в системі є принаймні один справний вузол. Продуктивність системи легко масштабується, тобто додавання додаткових процесорів, обсягів оперативної і дискової пам'яті, і нових вузлів у системі може виконуватися в будь-який час, коли це дійсно потрібно.
Паралельні бази даних знаходять широке застосування в системах обробки транзакцій в режимі on-line, системах підтримки прийняття рішень і часто використовуються при роботі з критично важливими для роботи підприємств і організацій додатками, які експлуатуються по 24 години на добу.


2. Сервери Escala компанії Bull
Група компаній, об'єднаних під загальною назвою Bull, є одним з найбільших виробників інформаційних систем на світовому комп'ютерному ринку і має свої відділення в Європі та США.
Архітектура PowerScale, являє собою першу реалізацію симетричної мультипроцессорной архітектури (SMP), розробленої Bull спеціально для процесорів
PowerPC. На початку вона була реалізована на процесорі PowerPC 601, але легко модернізується для процесорів 604 і 620. Ця нова SMP-архітектура використовується в сімействі систем Escala.
Мікропроцесор PowerPC підтримує мультипроцесорну обробку, зокрема, модель тісно пов'язаних обчислень в розділяється (загальною) пам'яті. Робота тісно пов'язаних процесорів припускає використання різними процесорами однієї спільної пам'яті і однієї операційної системи, яка управляє всіма процесорами і апаратурою системи. Процесори повинні конкурувати за колективні ресурси.
У симетричній мультипроцессорной системі всі процесори вважаються функціонально еквівалентними і можуть виконувати операції введення / виводу і інші обчислення.
Розроблене Bull сімейство Escala забезпечує масштабованість і високу готовність систем, центральним місцем яких є симетрична мультипроцесорна архітектура, названа PowerScale, що дозволяє робити поступову модернізацію й об'єднувати в системі від 1 до 8 процесорів.

2.1.Архітектура PowerScale

У сучасних системах SMP найбільш актуальним питанням розробки є створення високопродуктивної підсистеми пам'яті для забезпечення високошвидкісних RISC-процесорів даними і командами. Спільне рішення цієї проблеми полягає у використанні великої високошвидкісної кеш-пам'яті, тобто у створенні ієрархії пам'яті між процесорами і розділяється глобальної пам'яттю. Архітектура PowerScale пропонує новий підхід до вирішення питань традиційного вузького горла, що обмежує продуктивність SMP-систем, а саме, нову організацію управління кеш-пам'яттю і доступу до пам'яті.
При моделюванні прикладних систем, для роботи яких необхідна маніпулювання величезними обсягами даних і розділення доступу до цих даних між багатьма користувачами або програмами, на системах SMP, були помічені два особливих ефекту:
  • Через малу ймовірність знаходження відповідних даних у кеш-пам'яті постає досить інтенсивний трафік між системною пам'яттю і кешами ЦП.
  • У традиційній SMP-системі за замовчуванням одне із завдань планувальника полягає в тому, щоб запустити наступний дозволений для виконання процес на першому ж процесорі, який стає вільним. Тому в міру того, як збільшується число процесорів і процесів, ймовірність переміщення процесів з одного процесора на інший, також збільшується. Ця побічна міграція процесів призводить до суттєвого збільшення рівня трафіку між кешами ЦП. Тому ключовим питанням забезпечення високої системної продуктивності стає фізична реалізація когерентності кеш-пам'яті.
У традиційній SMP-архітектурі зв'язку між кешами ЦП і глобальної пам'яттю реалізуються за допомогою загальної шини пам'яті, що розділяється між різними процесорами. Як правило, ця шина стає слабким місцем конструкції системи і прагне до насичення при збільшенні числа інстальованих процесорів. Це відбувається тому, що збільшується трафік пересилань між кешами і пам'яттю, а також між кешами різних процесорів, які конкурують між собою за пропускну здатність шини пам'яті.
В архітектурі PowerScale компанії Bull інтерфейс пам'яті реалізований з урахуванням зазначеного вище профілю додатків і розрахований на використання декількох поколінь процесорів з дедалі більшою продуктивністю. У дійсності архітектура PowerScale з самого початку була розроблена в розрахунку на підтримку до 8 процесорів PowerPC 620.
В архітектурі PowerScale (Мал. 1) основним засобом оптимізації доступу до поділюваного основної пам'яті є використання достатньо складної системної шини. Насправді ця "шина" представляє собою комбінацію шини адреси / управління, реалізованої класичним способом, і набору магістралей даних, які з'єднуються між собою за допомогою високошвидкісного матричного комутатора. Ця система межз'єднань отримала назву MPB_SysBus. Шина пам'яті використовується тільки для пересилання простих адресних тегів, а неблокіруемой матричний комутатор - для забезпечення більш інтенсивного трафіку даних. До матричному комутатора можуть бути приєднані до 4 двопроцесорних портів, порт вводу / виводу і підсистема пам'яті.
Головною перевагою такого підходу є те, що він дозволяє кожному процесору мати прямий доступ до підсистеми пам'яті. Іншою важливою властивістю реалізації є використання розшарування пам'яті, що дозволяє багатьом процесорам звертатися до пам'яті одночасно.
Нижче наведена схема, що ілюструє загальну організацію доступу до пам'яті (Мал. 2) Кожен процесорний модуль має свій власний виділений порт пам'яті для пересилання даних. При цьому загальна шина адреси і управління гарантує, що на рівні системи всі адреси є когерентними.
У системі використовуються великі кеші другого рівня (L2), що доповнюють кеші першого рівня (L1), інтегровані в процесорах PowerPC. Це дозволяє оптимізувати рівень міграції процесів між процесорами і збільшує загальну пропускну здатність системи. Очевидно, що завжди корисно виконувати процес на одному і тому ж процесорі і мати більш високий коефіцієнт попадань в кеш, ніж при виконанні процесу на наступному доступному процесорі. Використовуючи алгоритми, що базуються на засобах ядра системи, можна визначити найбільш підходяще використання пулу процесорів з урахуванням поточного коефіцієнта попадань в кеш.
Рис. 1. Архітектура PowerScale
Рис. 2. Схема організації доступу до пам'яті
Модель пам'яті
Процесор PowerPC визначає слабо упорядковану модель пам'яті, яка дозволяє оптимізувати використання пропускної здатності пам'яті системи. Це досягається за рахунок того, що апаратурі дозволяється переупорядочівать операції завантаження і запису так, що потребують тривалого часу операції завантаження можуть виконуватися раніше визначених операцій запису. Такий підхід дозволяє зменшити дійсну затримку операцій завантаження. Архітектура PowerScale повністю підтримує цю модель пам'яті як на рівні процесора за рахунок набору команд PowerPC, так і глобально шляхом реалізації наступних обмежень:
  • Звернення до глобальних змінних синхронізації виконуються строго послідовно.
  • Ніяке звернення до змінної синхронізації не видається процесором до завершення виконання всіх звернень до глобальних даними.
  • Ніякі звернення до глобальних даними не видаються процесором до завершення виконання попередніх звернень до змінної синхронізації.
Для забезпечення такої моделі упорядкованих звернень до пам'яті на рівні кожного процесора системи використовуються певна апаратна підтримка і явні команди синхронізації. Крім того, на системному рівні дотримання необхідних протоколів для забезпечення упорядкування звернень між процесорами або між процесорами і підсистемою вводу / виводу покладено на програмне забезпечення.
Підсистема пам'яті
З реалізацією архітектури глобальної пам'яті в мультипроцессорной системі зазвичай пов'язаний дуже важливе питання. Як поєднати переваги "логічно" локальної для кожного процесора пам'яті, що має малу затримку доступу, з вимогами реалізації поділюваної глобальної пам'яті?
Компанія Bull розробила патентовану архітектуру, в якій масив пам'яті повністю розшаровані до рівня довжини рядка системного кеша (32 байти). Така організація забезпечує мінімум конфліктів між процесорами при роботі підсистеми пам'яті і гарантує мінімальну затримку. Вимога реалізації глобальної пам'яті забезпечується тим, що масив пам'яті для програмних засобів завжди представляється безперервним.
Запропонована конструкція вирішує також проблему, часто виникає в інших системах, в яких використання методів розшарування для організації послідовного доступу до різних областей пам'яті можливо тільки, якщо плати пам'яті встановлюються збалансовано. Цей, що здається тривіальним, питання може призводити до зайвих закупівель додаткових ресурсів і пов'язаний виключно з можливостями конструкції системи. PowerScale дозволяє обійти цю проблему.
Архітектура PowerScale автоматично оптимізує ступінь розшарування пам'яті залежно від того, які плати пам'яті інстальовані в системі. У залежності від конкретної конфігурації вона буде використовувати низьку або високу ступінь розшарування або їх комбінацію. Все це повністю прозоро для програмного забезпечення і, що більш важливо, для користувача.
Архітектура матричного комутатора
Архітектура комутатора реалізована за допомогою апаратної мережі, яка здійснює індивідуальні з'єднання типу точка-точка процесора з процесором, процесора з основною пам'яттю і процесора з магістраллю даних введення / виводу. Ця мережа працює спільно з розділяється адресною шиною. Такий збалансований підхід дозволяє використовувати найкращі властивості кожного з цих методів організації з'єднань.
Колективна адресна шина спрощує реалізацію спостереження (snooping) за адресами, яке необхідно для апаратної підтримки когерентності пам'яті. Адресні транзакції конвеєризований, виконуються асинхронно (розщеплено) по відношенню до пересилках даних і вимагають відносно невеликий смуги пропускання, гарантуючи, що цей ресурс ніколи не увійде у стан насичення.
Організація пересилань даних вимагає більше уваги, оскільки рівень трафіку і час зайнятості ресурсів фізичного межсоединения тут істотно вище, ніж це потрібно для пересилання адресної інформації. Операція пересилання адреси являє собою одиночну пересилання, в той час як операція пересилання даних повинна задовольняти вимогу багатобайтні пересилання відповідно до розміру рядка кеша ЦП. При реалізації окремих магістралей даних з'являється ряд додаткових можливостей, які забезпечують:
  • максимальну швидкість передачі даних за допомогою з'єднань точка-точка на більш високих тактових частотах;
  • паралельну пересилання даних за допомогою організації виділеного шляху для кожного з'єднання;
  • поділ адресних транзакцій і транзакцій даних. Тому архітектуру PowerScale компанії Bull можна назвати многопотоковой апаратної архітектурою (multi-threaded hardware architecture) з можливостями паралельних операцій.
На Рис. 3 показані основні режими і операції, що виконуються матричним комутатором (ССA2 - здвоєний контролер адрес кеш-пам'яті; CCD2 - здвоєний контролер даних кеш-пам'яті; IOD - дочірня плата вводу / виводу; DCB - матричний комутатор даних; SMC - контролер системної пам'яті).
Рис. 4.3. Матричний комутатор.
Параметри продуктивності
Слідом за настановної фазою транзакції (наприклад, після встановлення адреси на адресній шині) дані можуть пересилатися через комутатор на повній швидкості синхронізації. Це можливо завдяки організації з'єднанню точка-точка, яка створюється для кожної окремої транзакції. Тому надалі будь-які перешкоди відсутні. Можливо також виконувати паралельно кілька операцій, наприклад, множинний доступ до пам'яті або пересилання між кешами.
Для того щоб зменшити затримку пам'яті, операції читання починаються до виконання будь-яких дій по забезпеченню глобальної когерентності на рівні системи. Відповіді когерентності повністю синхронізовані, вирішуються за фіксований час і надходять завжди перш, ніж буде захоплений розділяється ресурс - шина пам'яті. Це допомагає уникнути непотрібних захоплень шини. Будь-які транзакції, які не вирішуються когерентно за дане фіксований час, пізніше будуть повторені системою.
Використовувана в системі внутрішня частота синхронізації дорівнює 75 МГц, що дозволяє оцінити рівень продуктивності розробленої архітектури. Інтерфейс фізичної пам'яті має ширину 32 байта і, враховуючи арбітраж шини, дозволяє пересилати 32 байти кожні 3 такту синхронізації. Це дає швидкість передачі даних 800 Мбайт / с, підтримувану на рівні інтерфейсу пам'яті. Кожен порт ЦП має ширину 8 байт і здатний передавати по 8 байт за такт, тобто зі швидкістю 600 Мбайт / с. Слід зазначити, що це швидкість, що досягається як при пересиланні ЦП-пам'ять, так і при пересиланні кеш-кеш. Швидкість 800 Мбайт / с для пам'яті підтримується за допомогою буферів у комутаторі, які дозволяють конвеєризований кілька операцій.
Пропускна здатність може досягати пікового значення 1400 Мбайт / с. Таким чином, максимальна пропускна спроможність буде варіюватися в діапазоні від 800 до 1400 Мбайт / с в залежності від коефіцієнта влучень кеш-пам'яті.
Когерентність кеш-пам'яті
Проблема когерентності пам'яті в мультипроцессорной системі виникає через те, що значення елемента даних, що зберігається в кеш-пам'яті різних процесорів, доступно цим процесорам тільки через їх індивідуальні кеші. При цьому певні операції одного з процесорів можуть впливати на достовірність даних, що зберігаються в кешах інших процесорів. Тому в подібних системах життєво необхідний механізм забезпечення когерентного (погодженого) стану кешів. З цією метою в архітектурі PowerScale використовується стратегія зворотного запису, реалізована в такий спосіб.
Кожен процесор для своєї роботи використовує дворівневий кеш з властивостями охоплення. Це означає, що крім внутрішнього кеша першого рівня (кешу L1), вбудованого в кожен процесор PowerPC, є пов'язаний з ним кеш другого рівня (кеш L2). При цьому кожен рядок в кеші L1 є також і в кеші L2. В даний час обсяг кеша L2 становить 1 Мбайт на кожен процесор, а в майбутніх реалізаціях передбачається його розширення до 4 Мбайт. Сама по собі кеш-пам'ять другого рівня дозволяє істотно зменшити число звернень до пам'яті і збільшити ступінь локалізації даних. Для підвищення швидкодії кеш L2 побудований на принципах прямої відображення. Довжина рядка дорівнює 32 байт (розміру когерентної гранулюванні системи). Слід зазначити, що, хоча з точки зору фізичної реалізації процесора PowerPC, 32 байти становлять тільки половину рядка кеша L1, це не міняє протокол когерентності, який управляє операціями кеша L1 і гарантує що кеш L2 завжди містить дані кеша L1.
Кеш L2 має зовнішній набір тегів. Таким чином, будь-яка активність механізму спостереження за когерентним станом кеш-пам'яті може бути пов'язана з кешем другого рівня, в той час як більшість звернень з боку процесора можуть оброблятися первинним кешем. Якщо механізм спостереження виявляє попадання в кеш другого рівня, то він повинен виконати арбітраж за первинний кеш, щоб оновити стан і можливо знайти дані, що зазвичай буде призводити до припинення процесора. Тому глобальна пам'ять може працювати на рівні тегів кеша L2, що дозволяє істотно обмежити кількість операцій спостереження, що генеруються системою в напрямку даного процесора. Це, у свою чергу, істотно збільшує продуктивність системи, оскільки будь-яка операція спостереження у напрямку процесора сама по собі може призводити до припинення його роботи.
Вторинна когерентність кеш-пам'яті
Вторинна когерентність кеш-пам'яті потрібно для підтримки когерентності кешів L1 & L2 різних процесорних вузлів, тобто для забезпечення когерентного стану всіх наявних у мультипроцессорной системі розподілених кешей (природно включаючи підтримку когерентної буферизації введення / виводу як з читання, так і по запису).
Вторинна когерентність забезпечується за допомогою перевірки кожної транзакції, яка виникає на шині MPB_SysBus. Така перевірка дозволяє виявити, що запитувана по шині рядок вже кешовані у процесорному вузлі, і забезпечує виконання необхідних операцій. Це робиться за допомогою тегів кеша L2 і логічно підтримується тим фактом, що L1 є підмножиною L2.
Фізична реалізація архітектури
Нижче на Рис. 5 показано схема, що представляє системні плати, розроблені компанією Bull, які використовуються для фізичної реалізації архітектури PowerScale.
Багатопроцесорна материнська плата, яка використовується також як монтажної панелі для встановлення модулів ЦП, модулів основної пам'яті і однієї плати в / в (IOD).
Кожен модуль ЦП, побудований на базі PowerPC 601/604, включає два мікропроцесора та пов'язані з ними кеші. Є можливість модернізації системи, побудованої на базі процесорів 601, шляхом встановлення модулів ЦП з процесорами 604. Змішані конфігурації 601/604 не підтримуються.
Дочірня плата вводу / виводу (IOD) працює як моста між шинами MCA і комплексом ЦП і пам'яті. Підтримуються 2 канали MCA зі швидкістю передачі 160 Мбайт / с кожен. Хоча поставляється сьогодні підсистема в / в базується на технології MCA, це не є принциповим елементом архітектури PowerScale. В даний час проводяться дослідження можливостей реалізації декількох альтернативних шин введення / виводу, наприклад, PCI.
Кожна плата пам'яті складається з парного числа банків. Максимальне число банків дорівнює 16. Об'єм пам'яті на кожній платі може бути 64, 256 або 512 Мбайт.
Комутатор даних (DCB) інтегрований в декількох НВІС (4х16 біт) і функціонально з'єднує магістраль даних MPB_SysBus з підсистемою пам'яті, модулями ЦП і платою в / в. Ширина магістралі даних DCB на рівні масиву пам'яті становить 256 + 32 біт, а ширина магістралі даних для кожного порту ЦП і порту в / в дорівнює 64 + 8 біт. Операції DCB управляються контролером системної пам'яті (SMC) за допомогою командної шини, що забезпечує необхідну комутацію пристроїв.
Рис. 5. Фізична реалізація PowerScale

2.2.Семейство UNIX-серверів Escala

Основні характеристики серверів Escala в залежності від застосовуваного конструктиву дані в таблиці 1. Системи сімейства Escala забезпечують підключення наступних комунікаційних адаптерів: 8 -, 16 - і 128-входові адаптерів асинхронних послідовних портів, 1 - або 4-входові адаптерів портів 2 Мбіт / с X.25, а також адаптерів Token-Ring, Ethernet і FDDI.
Таблиця 1
МОДЕЛЬ Escala
M101
M201 D201 D401 R201
Mini-Tower
DesksideRack-Mounted
ЦП (PowerPC 601)
Тактова частота (МГц)
75
75 75 75 75
Число процесорів
ј
2 / 4 2 / 8 4 / 8 2 / 8
Розмір кеша другого рівня (Кб)
512
512 1024 1024 1024
ПАМ'ЯТЬ
Стандартний обсяг (Мб)
32
6464 64 64
Максимальний обсяг (Мб)
512
512 2048 2048 2048
ВВЕДЕННЯ / ВИСНОВОК
Тип шини
MCA
MCA MCA MCA MCA
Пропускна здатність (Мб / с)
160
160 160 2x160 2x160
Кількість слотів
6
6 15 15 16
Ємність внутрішньої дискової пам'яті Гб)
1 / 18
1 / 18 2 / 36 4 / 99 -
Кількість посадочних місць
3.5 "
4
4 7 7 7
5.25 "
2
2 3 3 3
Ємність зовнішньої дискової пам'яті (Гб)
738
738 1899 1899 2569
3. Сервери фірми DEC
Корпорація Digital Equipment широко відома в світі і є однією з найбільших комп'ютерних компаній, комп'ютери якої залишаються популярними вже протягом майже 40 років (починаючи з її заснування в 1957 році і випуску перших машин PDP-1 в 1960 р.).
Компанія Digital широко відома своїми серіями міні-ЕОМ PDP-11 і VAX, що працюють під управлінням операційних систем RSX11M і VMS відповідно.
В даний час корпорація Digital сконцентрувала основні зусилля на розробці і виробництві сучасних 64-розрядних RISC-систем. Новітній мікропроцесор Alpha DECchip 21164 на сьогодні є найшвидшим мікропроцесором. Архітектура Alpha повністю зберігає наступність поколінь комп'ютерів: практично все програмне забезпечення ЕОМ VAX працює і на нових системах Alpha.

3.1. Сімейство комп'ютерів Alpha

Відмінна риса платформи Alpha - це збалансованість. Завдяки 64-розрядної архітектури та високошвидкісним каналам зв'язку з периферією Alpha підтримує роботу з величезними масивами даних, як на дисках, так і в оперативній пам'яті, що є досить критичним для багатьох додатків.
Іншою відмітною якістю платформи Alpha є її універсальність з точки зору застосування різних операційних систем (NetWare, Pick, DECelx, OpenVMS, Digital UNIX, Windows NT).
Сімейство серверів Alpha є повний ряд систем: від мінімальної конструкції до сервера великої розподіленої мережі. Нижче подано опис основних властивостей цих комп'ютерів і засобів їх реалізації.
Висока надійність і доступність:
  • "Гаряче" переключення дисків, тобто внутрішній диск може бути замінений під час роботи сервера.
  • Код корекції помилок (ECC, Error Correcting Code). Сервери Alpha включають ECC для основної і кеш-пам'яті. При використанні цієї технології відбувається постійна перевірка пам'яті, причому при цьому помилки не тільки виявляються, але й автоматично коригуються.
  • Технологія дублювання дисків (Redundant Array of Inexpensive Disks, RAID)
  • Подвійна шина SCSI.
  • Дублювання джерел живлення.
  • Автоматичний перезапуск системи. При збої в операційній системі ця можливість мінімізує час недоступності системи.
  • Управління температурним режимом. Системи AlphaServer включають температурні і інші датчики, що дозволяють стежити за станом системи.
Відкрита архітектура:
  • Шина PCI, що забезпечує швидкість передачі 132 Мб / с і відповідність міжнародним стандартам.
  • Стандартні слоти EISA, надають можливість використання великої кількості стандартних карт.
  • Високошвидкісний інтерфейс SCSI-2 для підключення до 7 периферійних пристроїв, що забезпечують в два рази вищу швидкість передачі шини SCSI і можливість підключення різних стандартних периферійних пристроїв.
  • Мережеві опції, які включають Ethernet, Token Ring, FDDI.
Засоби управління:
  • Реалізація віддаленого управління.
  • Розширені засоби діагностики.
  • Отримання інформації про конфігурацію системи.
  • Програмне забезпечення управління нестандартними ситуаціями і журнали діагностики збоїв.
Розширюваність / наращиваемость:
  • Можливість поновлення процесора ("upgrade").
  • Можливість підключення зовнішньої пам'яті.
  • Використання симетричної мультипроцессорной обробки (Symmetric Multi-Processing, SMP), що дозволяє додавати додаткові процесори.
  • Гнучкість вибору операційної системи (OpenVMS AXP, Digital UNIX, Microsoft Windows NT).
Використання кластерів:
  • Можливість побудови кластерних систем.
Основні характеристики серверів AlphaServer представлені в таблиці 2.
Таблиця 2.
Система /
Характеристики
AlphaServer2100 AlphaServer8200 AlphaServer8400
Частота
4 / 233: 233 МГц 300 МГц 4 / 275: 275 МГц 4 / 200: 200 МГц
Число
процесорів
1-4 1-6 1-12
Максимальна пам'ять
2 Гб 6 Гб 14 Гб
Пам'ять на
диску
500 Гб 10 Тб 10 Тб
Підтримка введення / виводу
3 слота PCI; 8 слотів EISA;
108 слотів PCI; 8 слотів EISA;
144 слоти PCI; 8 слотів EISA; 1 слот PCI / EISA
ECC пам'ять
Так Так Так
RAID
Так Так Так
Авто
перезавантаження
Так Так Так
Дублювання харчування
Так Так Так
Управління температурою
Так Так Так
AlphaServer 8400
AlphaServer 8400 - це реалізація сервера на базі мікропроцесора DECchip 21164 (частота - від 300 МГц) високопродуктивного сервера масштабу підприємства. AlphaServer 8400 підтримує до 12 процесорів, 14 Гб пам'яті та швидкість введення / виводу понад 1,2 Гб / сек. Збалансована конструкція і швидкі процесори дозволяють забезпечувати обробку більше 3000 транзакцій в секунду. Архітектура AlphaServer 8400 розроблена з урахуванням можливості використання майбутніх поколінь мікропроцесора Alpha. AlphaServer 8400 оснащується високошвидкісними шинами введення / виводу PCI (144 слота на 12 фізично різних шинах). Комп'ютер має відносно низьку вартість у своєму класі і може використовуватися в якості сервера великої розподіленої бази даних, забезпечуючи при цьому надійність та готовність на рівні більш дорогих мейнфреймів.
AlphaServer 8200
Комп'ютер AlphaServer 8200 - це одна з найбільш високопродуктивних систем для офісу в сучасній промисловості. Його конфігурація може включати до шести мікропроцесорів DECchip 21164. Маючи всі переваги 64-розрядної Alpha-архітектури, до 6 Гб пам'яті і до 108 слотів PCI, даний сервер забезпечує можливості зростання навіть для самих великих і складних додатків. AlphaServer 8200 підтримує операційні системи OpenVMS, Digital UNIX та Windows NT. Невеликі підприємства та великі підрозділи можуть використовувати продуктивність, потужність і надійність цього сервера для програм, які раніше функціонували на системах масштабу великого підприємства. Великі бази даних, процеси моделювання, системи підтримки прийняття рішень - ось декілька прикладів програм, які легко підтримуються AlphaServer 8200.
AlphaServer 2100
Системи AlphaServer 2100 (Рис.7.) Являють собою недорогі SMP-сервери, що базуються на шинах PCI / EISA. Вони підтримують операційні системи OpenVMS, Digital UNIX та Windows NT. Дані комп'ютери можуть використовуватися в якості серверів високопродуктивних комерційних додатків і баз даних, а також серверів великих локальних мереж. AlphaServer 2100 4 / 233 (мікропроцесор DECchip 21064A) має частоту 233 МГц з кеш-пам'яттю 1 Мб; AlphaServer 2100 4 / 275 (мікропроцесор DECchip 21064A) - 275 МГц з кеш-пам'яттю 4 Мб; AlphaServer 2100 5 / 250 (мікропроцесор DECchip 21164 ) - 250 МГц з кеш-пам'яттю 4 Мб. Кожна система може мати конфігурацію з 1-4 процесорами, підтримує до 2 Гб оперативної пам'яті і до 64 Гб внутрішньої дискової пам'яті. Пропускна здатність системної шини дорівнює 667 Мб / сек, а високопродуктивна підсистема вводу / виводу PCI має пікову пропускну здатність 132 Мб / сек. Шина вводу / виводу EISA (33 Мб / сек) підтримує широкий спектр стандартних пристроїв.
Мікропроцесор 21066, 21164 - 2-х або 4-х канальний Суперскалярний процесор має такі характерні риси:
· Усі команди фіксованої довжини і формату;
· FPU Підтримується формат чисел як фірми DEC, так і стандарту IEEE;
· 32 64-х розрядних регістра для цілих чисел і 32 64-х розрядних для чисел з плаваючою точкою;
· Вбудований кеш прямого відображення для читання / запису даних;
· Вбудований кеш прямого відображення для читання команд;
· Вбудовані буфера перетворення інструкцій і даних.
Системна шина - з'єднує процесор з пам'яттю і підсистемою вводу / виводу. Є синхронної, мультіпліксірованной 128-бітної шиною адреси / даних. На шині використовується контроль парності. Всі передачі довжиною 32 байта і пікова продуктивність - 666Mb/sec.
Система пам'яті:
Висока швидкість обігу досягається:
· Наявністю буферів потокового читання;
· Контроль за парності адреси і даних;
· Регенерація проводитися з урахуванням звернень до пам'яті;
На Рис. 6. представлена ​​блок-схема мікропроцесора 21066. Основними компонентами цього процесора є: кеш-пам'ять команд, цілочисельне пристрій, пристрій плаваючою точки, пристрій виконання команд завантаження / запису, кеш-пам'ять даних, а також контролер пам'яті і контролер вводу / виводу.
Кеш-пам'ять команд представляє собою кеш прямого відображення ємністю 8 Кбайт. Команди, які обираються зі цієї кеш-пам'яті, можуть видаватися попарно для виконання в одне з виконавчих пристроїв. Кеш-пам'ять даних ємністю 8 Кбайт також реалізує кеш з прямим відображенням. При виконанні операцій запису в пам'ять дані одночасно записуються в цей кеш і в буфер запису. Контролер пам'яті або контролер вводу / виводу шини PCI обробляють всі звернення, які проходять через розташовані на кристалі кеш-пам'яті першого рівня. Контролер пам'яті насамперед перевіряє вміст зовнішньої кеш-пам'яті другого рівня, яка побудована на принципі прямого відображення і реалізує алгоритм відкладеного зворотного копіювання при виконанні операцій запису. При виявленні промаху контролер звертається до основної пам'яті для перезавантаження відповідних рядків кеш-пам'яті. Контролер введення / виводу шини PCI обробляє весь трафік, пов'язаний з введенням / виводом. Під управлінням центрального процесора він виконує операції програмованого введення / виводу. Трафік прямого доступу до пам'яті шини PCI обробляється контролером PCI спільно з контролером пам'яті. При виконанні операцій прямого доступу до пам'яті в режимі читання і запису дані не розміщуються в кеш-пам'яті другого рівня. Інтерфейси пам'яті і PCI були розроблені спеціально з розрахунку на однопроцесорні конфігурації і не підтримують реалізацію мультипроцессорной архітектури.
Рис. 6. Основні компоненти процесора Alpha 21066
Рис.7. Архітектура AlphaServer 2100A
На малюнку 7 показано приклад системи, побудованої на базі мікропроцесора 21066. У представленій конфігурації контролер пам'яті виконує звернення як до статичної пам'яті, за допомогою якої реалізована кеш-пам'ять другого рівня, так і до динамічної пам'яті, на якій побудована основна пам'ять. Для зберігання тегів і даних у кеш-пам'яті другого рівня використовуються кристали статична пам'яті з однаковим часом доступу з читання та запису.
Конструкція підтримує до чотирьох банків динамічної пам'яті, кожен з яких може управлятися незалежно, що дає певну гнучкість при організації пам'яті та її модернізації.
Швидкісна шина PCI має ряд привабливих властивостей. Крім можливості роботи з прямим доступом до пам'яті і програмованим вводом / виводом вона допускає спеціальні конфігураційні цикли, розширюваність до 64 біт, компоненти, що працюють з живлячими напругами 3.3 і 5 В, а також більш швидке тактирование. Базова реалізація шини PCI підтримує мультиплексування адреси і даних і працює на частоті 33 МГц, забезпечуючи максимальну швидкість передачі даних 132 Мбайт / с. Шина PCI безпосередньо управляється мікропроцесором. На малюнку 5.18 показані деякі високошвидкісні периферійні пристрої: графічні адаптери, контролери SCSI і мережеві адаптери, підключені безпосередньо до шини PCI. Мостова мікросхема інтерфейсу ISA дозволяє підключити до системи низькошвидкісні пристрої типу модему, флоппі-дисководу і т.д.

3.Сервери компанії Hewlett-Packard
Компанія Hewlett-Packard була заснована в Каліфорнії в 1938 році з метою створення електронного тестуючого і вимірювального устаткування.
Основою розробки сучасних комп'ютерів Hewlett-Packard є архітектура PA-RISC. Вона була розроблена компанією у 1986 році, і з тих пір, завдяки успіхам інтегральної технології, пройшла кілька стадій свого розвитку від многокристального до однокристального виконання. Архітектура PA-RISC розроблялася з урахуванням можливості побудови багатопроцесорних систем, які реалізовані в старших моделях серверів.
Як відомо, одна з головних причин переходу до RISC - прагнення виконувати команду за один такт. Для досягнення більшої продуктивності розробники RISC створюють процесори, що виконують за один такт кілька команд. Такі процесори називають суперскалярні. Ці процесори складніше - їх реалізують, як правило, на кількох кристалах, що веде до обмеження частоти. Hewlett-Packard першою розробила Суперскалярний процесор на одному кристалі з високою тактовою частотою. Для того, щоб більш повно використовувати можливості суперскалярні процесорів, в набір PA-RISC включені складові команди, які виконують на різних частинах кристалів відразу кілька операцій. Внаслідок цього, PA-RISC виконує більшу кількість команд за такт, випереджаючи процесори конкурентів, навіть якщо вони володіють більшою тактовою частотою.
Ще одна особливість PA-RISC - великі зовнішні кеші (Мал. 8.). На відміну від деяких інших процесорів, де розмір кешу достатній лише для швидкого виконання простих тестів, кеші PA-RISC форсують роботу реальних додатків і служать ключовою відмінністю від інших реалізацій RISC. Зберігання команд і даних здійснюється в роздільних кешах, причому процесор з'єднується з ними за допомогою високошвидкісних 64-бітових шин. Кеш-пам'ять реалізується на високошвидкісних кристалах статичної пам'яті (SRAM), синхронізація яких здійснюється безпосередньо на тактовій частоті процесора. При тактовій частоті 100 МГц кожен кеш має смугу пропускання 800 Мбайт / с при виконанні операцій зчитування і 400 Мбайт / с при виконанні операцій запису. Мікропроцесор апаратно підтримує різний об'єм кеш-пам'яті: кеш команд може мати об'єм від 4 Кбайт до 1 Мбайт, кеш даних - від 4 Кбайт до 2 Мбайт. Щоб понизити коефіцієнт промахів застосовується механізм хешування адреси. В обох кешах для підвищення надійності застосовуються додаткові контрольні розряди, причому помилки кеша команд коригуються апаратними засобами.
Ще один метод, який використовується в RISC-архітектурах для підвищення продуктивності - це конвеєр. Для прискорення виконання команди її обробка розбивається на щаблі: вибірка, декодування, виконання, зворотний запис і т.д. Усі сходинки конвеєра працюють одночасно. Наявність конвеєра - головний чинник, завдяки якому RISC перевершує CISC. 5-ступінчастий конвеєр мінімізує затримки через зупинень, характерні для суперконвейерних архітектур.
Іншими важливими особливостями PA-RISC є:
  • Розширені можливості 64-розрядних обчислень.
  • Вбудована підтримка графіки. Набір команд PA-RISC розширено графічними можливостями. Ці команди поряд з величезною продуктивністю речових обчислень дозволяють домогтися чудових характеристик графіки без допомоги графічних процесорів.
  • Вбудована підтримка мультимедіа. Першим процесором з підтримкою мультимедіа був PA-7100LC. Він міг декодувати відео MPEG-1 зі швидкістю 30 кадрів в секунду з повним стереозвуком. Завдяки вбудованій підтримці типів даних мультимедіа в базовій архітектурі, Hewlett-Packard в змозі забезпечити дуже високу швидкість відображення без додаткових витрат.
Рис. 8. Блок-схема взаємодії процесора і зовнішніх кешов
Процесор під'єднується до пам'яті і підсистемі вводу / виводу за допомогою синхронної шини. Процесор може працювати з трьома різними відносинами внутрішньої і зовнішньої тактовою частоти в залежності від частоти зовнішньої шини: 1:1, 3:2 і 2:1. Це дозволяє використовувати в системах різні за швидкістю мікросхеми пам'яті.
Процесор PA-8xxx увібрав в себе всі відомі методи прискорення виконання команд. У його основі лежить концепція "інтелектуального виконання", яка базується на принципі позачергового виконання команд. Ця властивість дозволяє PA-8000 досягати пікової суперскалярной продуктивності завдяки широкому використанню механізмів автоматичного вирішення конфліктів за даними та управління апаратними засобами. Ці засоби добре доповнюють інші архітектурні компоненти, закладені в структуру кристала: велика кількість виконавчих функціональних пристроїв, засоби прогнозування напрямку переходів та виконання команд за припущенням, оптимізована організація кеш-пам'яті і високопродуктивний шинний інтерфейс.
PA-8500 (Мал. 9.) Є 4-х канальним суперскалярні процесором, виконуючим 4 операції за такт. PA-8500 має такі архітектурні особливості:
  • Найбільший розмір кеша першого рівня на процесор (1 МБ - дані, 0.5 МБ - інструкції).
  • За два 64-розрядних модуля з плаваючою точкою для функцій завантаження / вивантаження, множення / складання, ділення / добування квадратного кореня, цілочисельних, зсувних / логічних функцій кожен - всього 10 функціональних модулів.
  • Буфер передбачення галуження для 56 інструкцій (instruction reorder buffer - IRB)
  • Спекулятивне виконання
  • Статичне і динамічне пророкування розгалужень
Перераховані особливості розглядаються нижче більш докладно.
PA-8500 реалізований в 0.25 мікронної технології. Нова технологія дозволяє розмістити на чіпі великий кеш першого рівня, що дає можливість підвищити частоту без необхідності наявності пов'язаних кешей другого рівня.
Кеш другого рівня має цикл повільніше циклу кеша першого рівня, а також має більш низькою пропускною здатністю. Затримка, викликана доступом до більш повільного кешу другого рівня, поєднується з необхідністю отримати повну рядок кеша для заповнення кеша першого рівня, а не просто заповнити його поточними даними. Великий кеш першого рівня допоможе уникнути обмежень багаторівневої структури кешу, оскільки спрямовує потоки інструкцій і даних безпосередньо у сховищі даних.
Рис.9. Архітектура процесора PA -8500
Процесор PA-8500 надає доступ до більшого обсягу даних за два такти зі свого 0.5MB кешу інструкцій і 1MB кеша даних, ніж багато систем можуть надати за 10 і більше тактів з кеша другого рівня. Механізм встановлення черговості інструкцій підтримує постійне завантаження функціональних модулів процесора, запобігаючи їх простій, як це зазвичай відбувається у традиційних конвеєрних процесорах.
Одним із завдань при розробці PA-8500 було створення чіпового кешу, який би міг вміститися у виділену зону чіпа і, тим не менш, підтримував би високий рівень установки черговості інструкцій. Таке рішення вимагає, щоб кеш даних підтримував виконання двох одночасних операцій пам'яті за підтримки двотактного доступу. Задача була вирішена використанням двухбанковой системи, розробленої для внекрістального кеша даних. Система реалізована у вигляді простого однопортової RAM, що допомогло зберегти простір на чіпі. Оскільки кожен запит має відношення тільки до половини кешу, фізична довжина доступу була зменшена, що дозволило досягти меншого часу доступу.
Всі дані, що зберігаються в кеші PA-8500, захищені від виникнення однобітових помилок. Необхідно вжити всіх заходів для збереження цілісності даних. Для кешу інструкцій досить простий парності, оскільки його вміст завжди безпомилково. Кожного разу, коли доступ до інструкцій сигналізує про помилку, доступ обробляється як невдалий звернення в кеш. Рядки кешу з порушеними даними анулюються і дані надходять з пам'яті заново.
Більше зусиль необхідно зробити для забезпечення захисту кеша даних, тому як корекція необхідна коли невірна рядок кеша порушується. PA-8500 надає 6 додаткового біта на слово для можливості корекції однобітовий помилки і захисту кеша даних. Однак, корекція відбувається не прямо під час доступу до кешу, оскільки це б збільшило б час затримки доступу. Замість цього, помилки розпізнаються паралельної логікою корекції помилок. Якщо помилка розпізнана, пошкоджені дані викидаються з кеша. Якщо рядок невірна, корекція помилки відбувається на шляху копіювання. Якщо рядок вірна, вона анулюється, а доступ проводиться ще раз, що змушує рядок переміститися в кеш з виправленими даними.
При наявності великої чіпового кеша першого рівня в поєднанні з потужним механізмом передбачення галуження, PA-8500 не потребує дорогого, приєднаному безпосередньо до процесора кеші другого рівня. Що, у свою чергу, усуває необхідність в інтегрованому контролері кеша другого рівня. На додаток до цього, немає необхідності у великій кількості висновків процесора, обслуговуючих з'єднання з зовнішніми RAM.
Процесор PA-8500 має роздільної архітектурою, в якій логіка інтерпретування інструкцій не пов'язана з конвеєрний логікою функціональних модулів. Подібна архітектура дозволяє процесору частково інтерпретувати інструкції задовго до дійсного виконання інструкцій функціональним модулем (модулями). Інтерпретовані інструкції зберігаються в черзі всередині чіпу. Одночасно PA-8500 може таким чином обробляти до 56 інструкцій.
Процесор обробляє до 4 інструкцій за такт. Для підтримки суперскалярной продуктивності на максимально можливому рівні процесор PA-8500 містить в собі десять функціональних модулів: два незалежних модуля для операцій з плаваючою точкою, два незалежних функціональних модуля ділення і витягання квадратного кореня, два незалежних 64-розрядних цілочисельних арифметичних логічних модуля (ALU) , два модулі зсувних / логічних функцій (хоча ці модулі розділені з цілочисельними ALU, за такт ними виконуються лише дві з можливих чотирьох інструкцій), і два незалежних модуля завантаження / розвантаження.
Що стосується важливих функціональних модулів для операцій з плаваючою точкою, кожен з них здатний виконати одну інструкцію множення / складання за такт. Таким чином, пікова продуктивність операцій з плаваючою точкою в чотири рази перевищує тактову частоту. Важливо відзначити, що інструкція множення / складання є комбінованою, - тобто для виконання однієї інструкції необхідно виконання двох операцій. Це не просто підвищує продуктивність, виконання комбінації множення / складання вимагає однієї інструкції в IRB, що ще більше підвищує ефективність процесора. Інструкція множення / складання має трьох тактову затримку, але за наявності конвеєрні, результат видається кожен такт.
Для того, щоб використовувати весь набір функціональних модулів, процесор оснащений 56-командним буфером передбачення розгалужень (IRB - instruction reorder buffer) двох портовим кешем даних і здатністю вибирати чотири інструкції за такт з великого кеша інструкцій. Процесор може зберігати до 56 інструкцій в буфері і виконувати їх в той момент, коли необхідні дані і функціональний модуль (модулі) стануть доступними. Взаємозв'язок даних та інструкцій, що зберігаються в буферах відома, інструкції надходять у функціональні модулі точно в момент, коли дані і функціональні модулі будуть доступні.
Могутньою зброєю PA-8500 є його здатність виробляти спекулятивне виконання, яке змушує процесор "відгадувати" шлях виконання і виконувати інструкції з цього шляху. Якщо здогадка невірна, спекулятивно виконані інструкції скидаються. Спекулятивне виконання підтримано інтелектуальним механізмом передбачення розгалужень, що базується на 2,048-командному кеші історії розгалуження. Передбачення розгалужень визначає порядок виконання інструкцій (тобто, яка інструкція, на його думку, буде виконана) і ці інструкції спекулятивно виконуються. Якщо відгалуження передбачене неправильно, ці інструкції просто скидаються, у разі якщо вони ще не були видалені.
Таблиця історії розгалужень (BHT - branch history table) в PA-8500 є стандартною матрицею двухбітних осередків, але інформація, що зберігається в них, не є інформацією про направлення відгалуження (вибраного або невибраного). Модернізований BHT дозволяє PA-8500 поєднувати можливості статичного і динамічного методів передбачення розгалужень у одній апаратній структурі, що не вимагає наявності двох або трьох апаратних матриць, як у деяких інших методах передбачення розгалужень.
Конструкція процесора забезпечує реалізацію двох способів побудови багатопроцесорних систем. При першому способі кожен процесор під'єднується до інтерфейсного кристалу, який спостерігає за всіма транзакціями на шині основної пам'яті. У такій системі всі функції по підтримці когерентного стану кеш-пам'яті покладено на інтерфейсний кристал, який посилає процесору відповідні транзакції. Кеш даних побудований на принципах відкладеного зворотного копіювання і для кожного блоку кеш-пам'яті підтримуються біти стану "приватний" (private), "брудний" (dirty) і "достовірний" (valid), значення яких змінюються відповідно до транзакціями, які видає або приймає процесор.
Другий спосіб організації багатопроцесорної системи дозволяє об'єднати два процесори і контролер пам'яті і введення-виведення на одній і тій же локальній шині пам'яті. У такій конфігурації не потрібно додаткових інтерфейсних кристалів і вона сумісна з існуючою системою пам'яті. Когерентність кеш-пам'яті забезпечується спостереженням за локальною шиною пам'яті. Пересилання рядків між кешами виконуються без участі контролера пам'яті і введення-виведення. Така конфігурація забезпечує можливість побудови дуже дешевих високопродуктивних багатопроцесорних систем.

Сервери HP 9000 класу D

У секторі ринку серверів робочих груп компанія HP представлена ​​досить широкої серією систем HP9000 класу D. Це серія систем з відносно низькою вартістю, яка конкурує з серверами, побудованими на базі ПК. 1-2-процесорні сервери початкового рівня на процесорах РА-7300LC і РА-8000. Спочатку позиціонувалися як сервери для малого бізнесу, однак зараз продуктивність нових старших моделей цього класу цілком достатня для обслуговування дуже великих організацій (кілька сотень активних користувачів СУБД). При цьому вартість їх як і раніше відповідає вартості серверів нижнього рівня. Працюють під керуванням операційної системи HP-UX.

Сервери HP 9000 класу K

1-6-процесорні сервери середнього рівня на процесорах РА-8000 і РА8200. Модель К570 з шістьма процесорами РА-8200 200MHz є рекордсменом за швидкістю обробки транзакцій в класі середніх серверів - 21.358tpm (найближчий конкурент - AlphaServer 4100 з чотирма процесорами DECchip 21164 600MHz - показав 15.100tpm). Офіційні дані за швидкодією вийшли у лютому моделей K380/K580 ще не опубліковані, однак, за оцінками НР, їх транзакційна продуктивність на 15-20% вище, ніж у К570. Сервери здатні обслужити до тисячі активних користувачів СУБД, а значить, перекривають потреби переважної більшості організацій.
Архітектури D-і K-Class схожі: процесори, пам'ять і контролери введення / виводу спілкуються через внутрішню шину з продуктивністю 960MB/sec. Різниться максимальне число процесорів, а також інтерфейси для підключення плат розширення: в D-Class використовуються шини EISA і HP-HSC (High Speed ​​Connect, пікова швидкість 160MB/sec), а в K-Class - шини HP-HSC і HP-PB (Precision Bus, пікова швидкість 32 MB / sec). Стандартні інтерфейси серверів включають: 2 x RS-232 (для консолі і UPS), Centronics, Ethernet, SCSI-2 і / або F / W SCSI-2, багато моделей - також порт віддаленого управління з вбудованим модемом. Плати розширення включають F / W SCSI-2, Fibre Channel, Ethernet, Token-Ring, FDDI, 100VG, 100Base-T, ATM, ISDN, X.25, SNA, мультиплексори на різне число портів RS-232.
У конструкції сервера передбачені 4 відсіки для установки дискових накопичувачів, а за допомогою спеціальних стійок (кабінетів) розширення ємність дискової пам'яті системи може бути доведена до 8.3 Тбайт. Основні параметри серверів HP9000 класу К представлені в таблиці 3.
Таблиця 3. Основні характеристики серверів HP 9000 класу K
МОДЕЛЬ
K210
K220
K260 K420 K450 K460
ЦП
Тип процесора
PA7200
PA7200
PA8000 PA7200 PA8000 PA8000
Тактова частота (МГц)
120
100 (D210)
120
180 120 160 180
Число процесорів
1-4
1-4
1-4 1-4 1-4 1-4
Пропускна здатність системної шини (Мб / сек)
960
960
960 960 960 960
Розмір кеша (Кб) (команд / даних)
256 /
256
1024 /
1024
1024/1024 1024/1024 1024/1024 1024/1024
ПАМ'ЯТЬ
Мінімальний обсяг (Мб)
64
128
128 128 128 128
Максимальний обсяг (Гб)
2.0
2.0
2.0 3.0 4.0 4.0
ВВЕДЕННЯ / ВИСНОВОК
Кількість слотів
HP-HSC
1
1
1 5 5 5
Кількість слотів HP-PB
4
4
4 8 8 8
Максимальна пропускна здатність підсистеми в / в (Мб / сек)

288

288

288 288 288 288
Кількість відсіків для дисків Fast / Wide SCSI-2
4
4
4 4 4 4
Максимальна місткість дискової пам'яті (TБ)
3.8
3.8
3.8 8.3 8.3 8.3
Кількість послідовних портів
2
2
2 2 2 2
Кількість паралельних портів
1
1
1 1 1 1
Мережеві інтерфейси
Ethernet
Ethernet
Ethernet Ethernet Ethernet Ethernet

Симетричні багатопроцесорні сервери HP 9000 класу Т

Найпотужнішим і розширюваним поруч корпоративних серверів компанії HP на базі ОС UNIX є сімейство HP9000 класу T. Це наступне покоління серверів, яке було розроблене компанією услід за HP9000 model 870. В даний час оголошені 12-процесорні системи Т600 на базі процесора PA-8000, поставки яких повинні початися в 1997 році. Існуючі системи (Т500 і Т520) допускають заміну старих процесорів на процесори PA-8000.
Характерною особливістю архітектури серверів класу Т є велика ємність кеш-пам'яті команд (1 Мбайт) і даних (1 Мбайт) у кожного процесора системи. Сервери класу T використовують 64-бітову шину з розщепленням транзакцій, яка підтримує до 14 процесорів, що працюють на частоті 120 МГц. Ця шина забезпечує в усталеному режимі пропускну здатність 768 Мбайт / с при пікової продуктивності 960 Мбайт / с.
Сервери класу T можуть підтримувати до 8 каналів HP-PB (HP Precision Bus), що працюють із швидкістю 32 Мбайт / с, проте в стійці основної системи підтримується тільки один канал HP-PB. Для забезпечення повної конфігурації підсистеми вводу / виводу необхідна установка 7 стійок розширення, що займають досить велику площу. Загальна пікова смуга пропускання підсистеми в / в у повністю сконфігурованої 8-стоечной системі становить 256 Мбайт / с, що менше смуги пропускання підсистеми в / в серверів класу К. Однак максимальна місткість дискової пам'яті при використанні RAID-масивів досягає 20 Тбайт.
Зазначена двоярусне шинна структура сервера забезпечує оптимальний баланс між вимогами процесорів і підсистеми вводу / виводу, гарантуючи високу пропускну здатність системи навіть при важкій робочого навантаження. Доступ процесорів до основної пам'яті здійснюється за допомогою потужної системної шини процесор-пам'ять, підтримує когерентне стан кеш-пам'ятей всієї системи. У майбутніх системах планується 4-кратне збільшення пропускної спроможності підсистеми вводу / виводу.
4. Відмовостійкі сервери компанії Tandem Computer Inc.
Надійні обчислювальні машини є ключовими елементами для побудови найбільш відповідальних прикладних систем у сфері роздрібної торгівлі, фінансів і телефонної комутації. На сучасному етапі розвитку інформаційних технологій подібні додатки висувають широкий діапазон вимог до масштабованості, підтримки відкритих стандартів та забезпечення відмовостійкості систем. Однією з найбільш відомих у світі фірм, що працюють в даній області, є компанія Tandem. В даний час для задоволення різних вимог ринку надійних обчислень вона поставляє дві різні лінії своїх виробів: системи Tandem NonStop і системи Tandem Integrity.
Системи Tandem NonStop, перші моделі яких з'явилися ще в 1976 році, базуються на реалізації багатопроцесорної обробки і моделі розподіленої пам'яті. Для забезпечення відновлення після збоїв апаратури і помилок програмного забезпечення ці системи використовують механізми передачі повідомлень між процесними парами. База даних NonStop SQL, в основі архітектури якої лежить модель системи без поділу ресурсів (shared-nothing), показала лінійну масштабованість в додатках обробки транзакцій на конфігураціях, що містять більше 100 процесорів. Спочатку системи NonStop були націлені на створення додатків оперативної обробки транзакцій (OLTP), але в даний час інтенсивно використовуються і в інших відповідальних додатках (системах передачі повідомлень і системах підтримки прийняття рішень).
У 1990 році компанія Tandem оголосила про початок випуску систем Integrity. Для маскування помилок в роботі систем Integrity використовуються методи апаратної надмірності (триразове резервування), що забезпечують продовження безперервної роботи в умовах збоїв без впливу на додатки.
Хоча зазначені дві лінії виробів компанії мають відмінності, вони задовольняють цілого ряду загальних вимог і використовують багато загальні технології і компоненти. Всі системи Tandem гарантують цілісність даних і стійкість до збоїв, і крім того, забезпечують масштабованість і можливість проводити модернізацію системи в режимі online. Обидві лінії виробів NonStop і Integrity дозволяють виконувати технічне обслуговування систем в режимі online (установку і заміну плат, джерел живлення і вентиляторів без зупинки системи і вимкнення живлення). Застосовувані конструкції допускають установку обох систем в офісних приміщеннях, стандартних машинних залах обчислювальних центрів або на телефонних станціях. У системах використовуються багато загальних компонентів таких, як накопичувачі на дисках, елементи пам'яті та мікропроцесори.
У 1991 році компанія Tandem розпочала програму об'єднання кращих властивостей обох систем в єдиній лінії виробів. Основою для об'єднання архітектур послужила розробка головного транспортного засобу - системної мережі ServerNet. ServerNet представляє собою багатоступеневу пакетну мережу, що використовується як для організації міжпроцесорних зв'язків, так і для реалізації зв'язків з пристроями вводу / виводу. ServerNet забезпечує ефективні засоби для виявлення та ізоляції несправностей, а також реалізує пряму підтримку альтернативних каналів передачі даних для забезпечення безперервної роботи системи при наявності відмов мережі. Розробка цієї мережі надає нові можливості розвитку обох ліній виробів, включаючи велику масштабованість, інтерфейси з відкритими стандартами шин і поліпшену підтримку мультимедійних додатків.

Архітектура систем NonStop

На Рис. 10 показана базова архітектура систем NonStop. Ця архітектура передбачає об'єднання двох або більше ЦП за допомогою дубльованої високошвидкісний межпроцессорной шини. Кожен процесор має один або декілька каналів в / в, що з'єднують його з двопортовий дисковими контролерами і комунікаційними адаптерами. У дійсності в перших п'яти поколіннях систем NonStop (NonStop I, II, TXP, CLX і VLX) було реалізовано тільки по одному каналу в / в на процесор, а пара поділюваних шин забезпечувала об'єднання до 16 процесорів. У більш пізніх системах NonStop Cyclone і Himalaya K10000/20000 для збільшення пропускної здатності системи межз'єднань була застосована сегментація межпроцессорной шини на базі чотирипроцесорних секцій. Секції можуть об'єднуватися з допомогою оптоволоконних ліній зв'язку у вузли (до чотирьох секцій у вузлі). Системи NonStop II, TXP, VLX і Cyclone підтримують також можливість побудови оптоволоконного кільця, що дозволяє об'єднати між собою до 14 вузлів і забезпечує швидкий обмін даними всередині домену, що складається з 224 процесорів. У системі Cyclone до кожного процесору можуть приєднуватися кілька каналів в / в, причому кожні чотири канали управляються своєю парою контролерів прямого доступу до пам'яті.
Рис. 10. Архітектура NonStop
Після розробки та успішних випробувань системи Cyclone компанія Tandem перейшла на застосування у своїх виробах RISC процесорів компанії MIPS (замість використовувалися раніше замовлених CISC процесорів). У системах CLX / R і К200 використовуються процесори R3000, а в системах Himalaya K10000, K20000 і K2000 - процесори R4400. Одночасно з оголошенням в 1993 році про початок поставок нового сімейства систем Himalaya компанія анонсувала також оптоволоконну мережу межпроцессорного обміну TorusNet, призначену для побудови великомасштабних кластерів. TorusNet забезпечує з'єднання чотирипроцесорних секцій за допомогою надмірної мережі з топологією двомірного тора.
Всі апаратні компоненти систем NonStop побудовані на основі принципу "швидкого прояву несправності" (fail fast disign), відповідно до якого кожен компонент повинен або функціонувати правильно, або негайно зупинятися. У більш ранніх системах Tandem реалізація цього принципу широко спиралася на використання методів перевірки парності, надлишкового кодування або перевірки допустимості стану при виконанні кожної логічної функції. Сучасні конструкції для виявлення помилок у складній логіці покладаються головним чином на методи дублювання і порівняння. Всі системи, що мають ЦП на базі мікропроцесорів, для гарантії цілісності даних і швидкого виявлення несправностей виконують порівняння виходів дубльованих і взаємно синхронізованих мікропроцесорів. У системах NonStop відповідальність за відновлення після виявлення несправності в апаратурі покладається на програмне забезпечення.
Операційна система NonStop Kernel систем NonStop безперервно розвивалася і до теперішнього часу перетворилася з патентованої фірмової операційної системи до системи, яка забезпечує повністю відкриті інтерфейси, побудовані на основі промислових стандартів. Для підтримки стійкості критично важливих процесів в NonStop Kernel реалізовані низькорівневі механізми контрольних точок, а також спеціальний шар програмних засобів, на якому будується як патентована середу Guardian, так і відкрите середовище Posix-XPG / 4.

Архітектура систем Integrity

Основним завданням компанії Tandem при розробці систем сімейства Integrity було забезпечення стійкості до одиночних відмов апаратури при дотриманні 100% переносимості стандартних UNIX-додатків. Для маскування апаратних несправностей у системах Integrity використовується потрійне модульне резервування (TMR - triple-modular redundancy) в процесорі, кеш-пам'яті і основної пам'яті.
Три процесора виконують однакові потоки команд, але працюють з незалежною синхронізацією. Процесори синхронізуються під час обробки звернень до глобальної пам'яті і при обслуговуванні зовнішніх переривань. Усі звернення до глобальної пам'яті з виходів резервуються процесорів надходять через схеми голосування в пару контролерів TMR. Схеми голосування на основі порівняння звернень між собою виявляють можливі несправності процесорів і посилають достовірні запити в іншу частину системи. Для виявлення несправностей в конструкціях контролера TMR і процесора в / в використовуються засоби самоконтролю. Кожен периферійний контролер містить стандартну плату VME, яка через спеціальну плату адаптера приєднується до пари шин в / в, захищених парністю. Плата адаптера дозволяє здійснювати комутацію контролера з двома процесорами в / в.
У системах Integrity реалізація плати основного процесора не вимагає складної логіки самоконтролю. Однак це робить її конструкцію відмінною від конструкції процесорної плати систем NonStop, хоча в обох використовуються одні й ті ж мікропроцесори. Архітектура нових систем об'єднує вимоги базової конструкції Integrity при збереженні сумісності з вимогами систем NonStop.

Архітектура системи на базі ServerNet

Нова системна архітектура, побудована на базі ServerNet, об'єднує властивості систем NonStop і Integrity. Вона вирішує загальну задачу побудови відмовостійких систем різного масштабу шляхом реалізації гнучких методів з'єднання стандартних функціональних блоків (модулів ЦП / пам'яті, підсистем зовнішньої пам'яті і комунікаційних адаптерів).
Рис. 11. Архітектура системи на базі ServerNet.
На Рис. 11. показана архітектура типової системи, побудованої на базі ServerNet. Ця система складається з кількох процесорних вузлів і вузлів вводу / виводу, об'єднаних один з одним системної мережею ServerNet. Базовим елементом системної мережі ServerNet є маршрутизатор, виконаний у вигляді окремої замовний НВІС. Для забезпечення відмовостійкості передбачається можливість побудови двох незалежних підмереж ServerNet: X і Y. У типовій конфігурації системи більшість її вузлів мають двопортовий інтерфейси, що забезпечують під'єднання кожного вузла до цих незалежним подсетям. Однією з додаткових можливостей нової архітектури є наявність спеціальної шини когерентності, допускає підключення до чотирьох ЦП. Ця шина забезпечує узгоджене стан спільної для кількох процесорних вузлів пам'яті та їх кешей при виконанні програм, розроблених в розрахунку на мультипроцесорну обробку в системі з розділяється загальною пам'яттю.
При роботі під управлінням операційних систем, що підтримують відмовостійкість програмними засобами (подібних NonStop Kernel), процесорні вузли виконують незалежні потоки команд, всі пересилання даних здійснюються ЦП по мережі ServerNet.
Як вже зазначалося, для забезпечення відмовостійкості в системі Integrity потрібні три процесорних кристала і три масиви мікросхем пам'яті. Нова архітектура вимагає чотирьох процесорних кристалів (два на модуль ЦП) і двох масивів мікросхем пам'яті. Вартість реалізації цих двох підходів істотно залежить від розміру пам'яті. Для типових систем обидва методи мають порівнянну вартість.
ServerNet
ServerNet являє собою швидку, масштабовану, надійну системну мережу, що забезпечує гнучкість з'єднання великої кількості ЦП і периферійних пристроїв в / в між собою. Головними властивостями цієї мережі комутації пакетів є мала затримка і висока надійність передачі даних. Для зменшення затримки в мережі застосовується метод черв'ячної маршрутизації, що не вимагає прийому всього пакету до його відсилання до наступного приймача. Фізичний рівень ServerNet утворюють незалежні канали прийому та передачі, кожен з яких має 9-бітове поле команд / даних і сигнал синхронізації. Поле команд / даних забезпечує кодування 256 символів даних і до 20 символів команд. Символи команд використовуються для управління рівнем ланки, ініціалізації і сигналізації про помилки. Кодування в одних і тих же лініях команд і даних скорочує кількість контактів і спрощує виявлення помилок у логіці управління.
Система використовує ServerNet для організації зв'язків ЦП-ЦП, ЦП-В / В і В / В-В / В. Пересилання між мікропроцесором і пам'яттю для кожного вузла ЦП залишаються локальними.
Дані в мережі ServerNet пересилаються зі швидкістю 50 Мбайт в секунду. Така швидкість передачі даних була обрана виходячи з того, щоб перевершити потреби існуючих периферійних пристроїв при дотриманні низьких цін. У майбутніх поколіннях ServerNet продуктивність ліній зв'язку буде збільшуватися в міру необхідності.
В даний час максимальна довжина лінії зв'язку ServerNet обмежена 30 м. У майбутніх адаптерах передбачається збільшення відстані між вузлами ServerNet за допомогою послідовних оптоволоконних ліній зв'язку. Передбачається, що цей перехід буде відносно простим, оскільки всі функції управління використовують одні й ті ж лінії команд / даних.
Усі транзакції по мережі ServerNet відбуваються в два етапи: виконання запиту і очікування відповідної відповіді, який повинен повернутися до закінчення заданого інтервалу часу (лічильника таймауту). Всі вузли ServerNet підтримують можливість видачі кілька вихідних запитів в інші вузли.
У НВІС маршрутизатора ServerNet реалізований матричний перемикач розмірністю 6х6. Рішення про направлення маршрутизації приймається на основі аналізу ідентифікатора приймача із заголовка пакету. До складу маршрутизаторів входять вхідні буфера FIFO, логіка арбітражу і управління потоком даних, реалізована за допомогою ЗУПВ таблиця маршрутизації і матричний перемикач
(Мал. 12.). Ініціалізація і реконфігурація мережі виконуються програмними засобами шляхом завантаження відповідних таблиць маршрутизації.
Рис. 12. НВІС 6-портового маршрутизатора ServerNet.
Процесорний модуль
Одним з базових елементів системи є процесорний модуль (ЦП), блок-схема якого показана на Рис. 13. У ЦП, побудованому на принципах швидкого прояву несправностей, є два порти ServerNet, що забезпечують його з'єднання через системну мережу з іншими ЦП і пристроями в / в. Для реалізації механізмів поділюваної загальної пам'яті кілька ЦП можуть об'єднуватися один з одним за допомогою шини когерентності.
Рис. 13. Блок-схема ЦП.
До складу ЦП входять два мікропроцесора, кожен з яких має незалежний вторинний кеш. Кожен мікропроцесор під'єднується до шини пам'яті за допомогою НВІС процесорного інтерфейсу. При виконанні звернень до пам'яті ці НВІС порівнюють виходи обох мікропроцесорів для виявлення всіх можливих помилок мікропроцесора і кеша. Пам'ять ЦП захищена кодом ECC, який забезпечує корекцію всіх одиночних помилок і виявлення будь-яких помилок в окремих мікросхемах ДЗУПВ або адресних лініях. Масив мікросхем пам'яті з'єднується з шиною пам'яті ЦП через пару НВІС контролерів пам'яті. Ці НВІС під час звернень до пам'яті взаємно перевіряють виходи один одного.
ЦП можуть мати прямий доступ до пам'яті інших ЦП за допомогою додаткової шини когерентності. Ця шина забезпечує апаратну підтримку стандартних додатків UNIX або Windows NT, які використовують симетричну мультипроцесорну обробку (SMP). Кожен ЦП під'єднується до шини за допомогою пари Самоконтролюючою НВІС інтерфейсу когерентності. Ці НВІС забезпечують кеш-когерентний доступ до загальної пам'яті використовуючи дубльовану пам'ять тегів і стандартний протокол анулювання блоків кеш-пам'яті. Вони забезпечують також когерентність кеш-пам'яті при виконанні звернень до пам'яті з боку В / В. Всі передачі даних по шині когерентності захищені кодом ECC. Перевірка синдрому ECC для даних, що пересилаються по шині, і порівняння виходів НВІС дозволяє виявляти збої шини або НВІС інтерфейсу.
НВІС процесорного інтерфейсу ЦП реалізують два порти ServerNet. Лінії прийому даних обох портів ServerNet під'єднуються до обох НВІС процесорного інтерфейсу. Кожна НВІС формує дані для передачі по обох портів ServerNet, але реально дані передаються тільки з одного порту. Друга НВІС приймає дані, передані іншій НВІС, порівнює отримане значення зі значенням, яке вона сформувала сама, і сигналізує про помилку при будь-якому неузгодженості даних.
Організація вводу / виводу
Нова система в / в забезпечує практично необмежені можливості масштабування за кількістю поєднуваних вузлів та пропускної здатності мережі. Вона ефективно підтримує модель розподілених обчислень дозволяючи будь-якому процесору звертатися до будь-якого контролеру в / в і допускаючи реалізацію прямих зв'язків контролер-контролер.
Дуплексная робота
Апаратна відмовостійка система реалізується за допомогою дуплексного пари, яка створюється шляхом відповідного конфігурування двох процесорних модулів. Ідентичне стан пам'яті і кешей в цих двох модулях підтримується завдяки виконанню на обох ЦП одного і того ж програмного коду з тими ж самими даними, а також надходженню в пам'ять обох ЦП усього потоку вводу. Обидва ЦП генерують ідентичні вихідні потоки виводу. Один з цих потоків вибирається маршрутизаторами для пересилки в контролери в / в або інші процесори.
Модулі ЦП мають розвинені засоби виявлення несправностей. ЦП зупиняється при виявленні його схемами контролю будь-якої помилки. Зупинка ЦП призводить до того, що з обох його портів ServerNet буде передана заборонена кодова комбінація. У результаті маршрутизатор може визначити несправний ЦП (основоположним правилом системи встановлено, що всі помилки ЦП повинні призводити до передач по ServerNet заборонених кодових комбінацій).
Коли маршрутизатор, приєднаний до дуплексному ЦП, виявляє помилку, він починає виконання протоколу відновлення. Цей протокол реалізований повністю апаратно без залучення програмних засобів. При цьому один з ЦП виключається з роботи, а інший свою роботу продовжить. Протокол гарантує, що справний ЦП залишиться працювати. Проте існують випадки, коли в виключеному ЦП несправності відсутні. Наприклад, до виключення ЦП з роботи можуть призвести несправності в одному з маршрутизаторів або в одній з ліній зв'язку ServerNet. У цих випадках система обслуговування може виключити з роботи несправний маршрутизатор, а виключений ЦП перевести у стан online.
Якщо при пересиланні пакету з ЦП маршрутизатор виявляє несправність лінії зв'язку ServerNet, він позначає пакет як недостовірний. Будь-який вузол ServerNet, який отримає цей пакет, буде його ігнорувати. Це означає, що несправність у ЦП, маршрутизаторі або лінії зв'язку може призвести до втрати одного або декількох пакетів. При нормальній дуплексної роботі тільки один з двох маршрутизаторів дуплексних процесорів пересилає пакети, що надходять з кожного ЦП. Це обмежує втрату пакетів межами однієї підмережі ServerNet. Інтерфейсні кристали виявляють втрату пакетів ServerNet за допомогою засобів тимчасового контролю. Програмне забезпечення введення / виводу виконує відновлення шляхом повторної передачі даних по альтернативному шляху.
Можливості масштабування системи
ServerNet забезпечує широкі можливості для масштабування системи. Зазвичай розширення виконується за допомогою вбудованих кабельних з'єднань, а також установки в гнізда розширення ServerNet плат маршрутизаторів. Крім того, додавання кожного ЦП забезпечує збільшення числа ліній зв'язку ServerNet і ефективно розширює загальну пропускну здатність в / у системи. На відміну від інших масивно-паралельних архітектур мережі ServerNet не обмежені лише регулярними топологіями типу гіперкубів або торів. Мережа ServerNet дозволяє збільшити число ліній зв'язку в будь-якому місці, де потрібна додаткова пропускна здатність. Програми з середніми вимогами до системи межз'єднань можуть задовольнятися мінімальною кількістю зв'язків, а отже, використовувати досить дешеву мережу, в той час як додатки з високою інтенсивністю обробки даних можуть розраховувати на організацію мережі з більшою зв'язністю.
В даний час в області масштабованих розподілених обчислень почали широко використовуватися також стандартні системи UNIX. У ряді наукових програмах кластери робочих станцій почали замінювати суперкомп'ютери. Передбачається, що ця тенденція стане головною рушійною силою для посиленої розробки додатків і операційного середовища розподілених обчислень.
Система обслуговування
Основні функції системи обслуговування включають інсталяцію системи, формування повідомлень про помилки, діагностику і керування засобами контролю живлячих напруг і температурних режимів роботи. Системою обслуговування керують два сервісні процесора (SP), які розміщуються в кожній стійці і працюють як спеціалізовані контролери в / в ServerNet. SP, розміщені в різних стійках, також пов'язані один з одним за допомогою ServerNet.
Система обслуговування використовує спеціальну систему незалежних шин. Ці шини базуються на двох стандартних для промисловості інтерфейсах: SPI (Serial Peripheral Interconnect) компанії Motorola і систему сканування в стандарті IEEE 1149.1 JTAG. SPI використовується як недорогий послідовної шини в / в для зв'язку з усіма засобами контролю і управління станом навколишнього середовища. Система обслуговування використовує кошти сканування для управління, ініціалізації, тестування і відображення роботи всіх НВІС. Застосовуване Tandem розширення до стандарту IEEE 1149.1, забезпечує доступ до регістрів НВІС. Робота засобів сканування ніяк не порушує нормальну роботу НВІС. Цей універсальний механізм забезпечує засіб для ініціалізації НВІС, визначення топології ServerNet і передачі повідомлень про помилки.

Перші системи Tandem на базі технології ServerNet

Структурна схема одного з базових варіантів сервера дана на Рис. 14. Можна виділити три головні підсистеми: процесорну підсистему, підсистему в / в і підсистему зовнішньої пам'яті.
Процесорна підсистема будується на базі системних плат (SPU), кожна з яких включає по два мікропроцесора з пам'яттю і логікою порівняння, пов'язані дубльованими каналами з підсистемою в / в. Як мікропроцесорів застосовуються процесори MIPS R4400 з кеш-пам'яттю першого рівня ємністю 32 Кбайт (16 Кбайт - кеш команд і 16 Кбайт - кеш даних), що працюють на тактовій частоті 200 МГц. Об'єм кеш-пам'яті другого рівня складає 1 Мбайт / процесор. Обсяг основної пам'яті системи може досягати 1 Гбайт (у чотирьохпроцесорній конфігурації).
Підсистема в / в ServerNet створює відмовостійку магістраль передачі даних між SPU і контролерами периферійних пристроїв і комунікаційними адаптерами. Відмовостійкість забезпечується завдяки використанню двох незалежних підмереж Servernet. У складі кожного сервера є багатофункціональний контролер SSC (Standard System Controller). SSC забезпечує інтерфейс ServerNet з контролерами в / в, контролерами SCSI-2 для внутрішніх пристроїв масової пам'яті, сервісним процесором, а також послідовними і мережевими інтерфейсами для підтримки засобів діагностики і консолі. Пара контролерів SSC забезпечують відмовостійкий доступ до пристроїв масової пам'яті. Кожен контролер SSC містить пару інтерфейсів шини SCSI-2, які з'єднані з іншим контролером SSC і забезпечують два незалежних шляхи доступу до всіх внутрішніх дисковим і стрічковим накопичувачів. Система підтримує "Віддзеркалення" дисків для забезпечення безперервного доступу до зберігаються на дисках даними.
У сервери можуть також встановлюватися додаткові контролери Ethernet, асинхронного й синхронного інтерфейсів, кожен з яких має по два порти для забезпечення доступу до процесорів через два незалежних підмережі Servernet. Контролери SSC і додаткові контролери в / в можуть замінюватися в процесі роботи системи (в режимі "гарячої" заміни). Основні характеристики серверів S4000-CM S4000-CO представлені в Таблиці ...
Рис. 14. Структурна схема сервера сімейства Integrity S 4000
.
Таблиця 4. Основні параметри моделей CM і CO сімейства Integrity S 4000
S4000-CM S4000-CO
Можливості стійки
Кількість плат SPU
48
Процесорні конфігурації:
Симплексний
1-4 проц.SMP1-4 проц.SMP
Дуплексная (відмовостійка)
1-2 проц.SMP1-4 проц.SMP
Кількість маршрутизаторів
24
Кількість плат SSC
24
Кількість гнізд в / в ServerNet
1020
Кількість місць установки
пристроїв зовнішньої пам'яті
1236
Процесор
Мікропроцесор
MIPS RISC R4400 MIPS RISC R4400
Тактова частота
200 МГц 200 МГц
Первинний кеш
16 Кб - команди
16 Кб - дані 16 Кб - команди
16 Кб - дані
Вторинний кеш
1 Мб / процесор 1 Мб / процесор
Основна пам'ять
Обсяг
128/256ECC/проц. 128/256ECC/проц.
Максимально в системі
1024 Мб 1024 Мб
Пропускна здатність шини пам'яті (пікова)
400 Мб / с / відс. 400 Мб / с / відс.
Підсистема в / в
Кількість каналів в / в
2 підсистеми в / в
ServerNet2 підсистеми в / в
ServerNet
Пропускна здатність каналів в / в (пікова)
200 Мб / с / відс. 150 Мб / с / відс.
Пропускна здатність каналів в / в (пікова)
800 Мб / с / сист. 600 Мб / с / сист.


Висновок

У рефераті було розглянуто спосіб побудови сервера на базі багатопроцесорної SMP архітектури, але це не єдине можливе рішення. Сервер може бути побудований на базі супер комп'ютера або групи дешевих персональних комп'ютерів об'єднаних в кластер.

Бурхливий розвиток мережевих технологій призвело до появи нових напрямків у побудові серверних систем (кластерні системи). Дуже складно визначити який тип і клас сервера потрібно вибрати, якій фірмі виробникові віддати перевагу. Кожна фірма для своєї продукції розробляє набір тестів, які враховують специфіку оцінюваної системи і часто не є об'єктивними.

У цьому випадку на допомогу приходить набір стандартних тестів, що розробляються незалежними організаціями. Основні типи тестів - SPEC, AIM, TPC та інші. У таблиці 5. представлені параметри продуктивності розглянутих систем.

Як видно з таблиці найкращі характеристики мають системи побудовані на базі процесорів фірми Alpha. Фірма DEC після переходу з процесорів VAX на Alpha поступово займає лідируюче положення. Основними состовляющие успіху є потужний процесор з високою тактовою частотою, хороша масштабованість серверів (до 16 процесорів) і можливість об'єднання машин у кластер.

Таблиця 5. Характеристики продуктивності

Компанія

Кофігурація

tpmC

MIPS

SPECint95

Ціна

Digital

AlphaServer 2100 5 / 300

263

7.03

-

Digital

AlphaServer 8400 5 / 350 (8 CPUs)

11,456

300

10.1

2,972,726

HP

HP 9000 K570

14.6

Tandem

NonStop Himalaya K 10000-112

20,918

-

-

3,529,520

Tandem

Integrity NR/4436 Server

6,313

-

-

-

Bull

Escala Series T (360MHz)

~ 2,000

-

14.2

1,409,965

 


Список літератури

1) www.citfofum.ru

2) www.hp.com

3) www.dec.com

4) www.microprocessor.sco.ru

5) www.parallel.ru

Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Реферат
250.9кб. | скачати


Схожі роботи:
Архітектура серверів корпоративних баз даних 2
Архітектура серверів корпоративних баз даних 2 лютого
Архітектура серверів корпоративних баз даних 2 Список літератури
Архітектура серверів корпоративних баз даних 2 Список літератури
Архітектура серверів корпоративних баз даних 2 Список літератури
Архітектура серверів корпоративних баз даних 2 Список літератури
Архітектура серверів корпоративних баз даних 2 Список літератури
Архітектура серверів корпоративних баз даних 2 Список літератури
Архітектура серверів корпоративних баз даних 2 Список літератури
© Усі права захищені
написати до нас