Ssd-накопичувачі - надшвидка пам’ять

SSD-накопичувачі можуть працювати настільки швидко, що вузьким місцем в системі виявляється програмне забезпечення. Windows і інші ОС повинні зазнати змін.
Технічний прогрес є для комп'ютерної індустрії свого роду еліксиром життя. Постійно з'являються нові продукти, які ще кілька років тому здавалися абсолютною утопією, змінюючи навколишній світ до невпізнання. Одна з подібних «утопій» в області накопичувачів даних незабаром стане реальністю. Уявіть собі, що ви включаєте комп'ютер і, не встигнувши відпустити кнопку, бачите перед собою готову до роботи операційну систему.

Або, запустивши вимогливе до ресурсів таких програм, як Photoshop, відразу ж починайте створення - вам більше не доводиться подовгу чекати завантаження модулів і інтерфейсу програми. А для збереження на диску HD-фільму розміром 4 Гбайт системі потрібно менше однієї секунди.

Початком революції в області накопичувачів даних стане поява твердотільних дисків на основі пам'яті нового покоління, які будуть з'єднуватися з системною платою по високошвидкісним інтерфейсів. Уже сьогодні серверні SSD, що підключаються через роз'єм PCI Express, забезпечують більш високу швидкість передачі даних в порівнянні з класичними твердотільними носіями. А з виходом нових процесорів від компанії Intel на базі мікроархітектури Ivy Bridge дане збільшення продуктивності торкнеться і домашні комп'ютери. За прогнозами експертів, в перспективі накопичувачі даних забезпечуватимуть час доступу на рівні оперативної пам'яті, а застосування нових технологій призведе в найближчі роки до злиття ОЗУ і жорсткого диска.

Завершиться революція глобальними перетвореннями операційних систем, таких як Microsoft Windows або Mac OS X. Адже чим швидше працює жорсткий диск, тим більше вузьким місцем в системі стає ОС. Саме до такого висновку прийшла група інженерів-дослідників з Університету Сан-Дієго в ході роботи над накопичувачем під кодовим ім'ям Moneta. Про те, які зміни необхідно внести в операційні системи і яким при цьому виявиться приріст продуктивності, ви дізнаєтеся з цієї статті.

НА ГРАНИЧНОЮ ШВИДКОСТІ: накопичувачі нового покоління

У найближчі кілька років жорсткі диски зможуть зберігати дані зі швидкістю до 4 Гбайт / с. Це стане реальним завдяки застосуванню абсолютно нових технологій.

Використовуючи SSD-накопичувач, вже сьогодні можна отримати значний приріст продуктивності ПК, проте максимальна швидкість передачі даних обмежена інтерфейсом SATA III, за допомогою якого диск підключається до системної плати. Теоретична пропускна здатність у нього становить 6 Гбіт / с, але на практиці навіть найшвидші SSD-носії, наприклад OCZ Vortex 3, забезпечують лише 500 Мбайт / с.

Більш високої пропускної здатності дозволяє досягти наступник SATA III - інтерфейс SATA Express, завдяки якому твердотільні диски зможуть передавати дані зі швидкістю 1,6 Гбайт / с. Для обміну інформацією SATA Express задіє другий високошвидкісний протокол - PCI Express 3.0. Відзначимо, що найшвидші серверні SSD забезпечують максимальну швидкість передачі даних на рівні 3 Гбайт / с, а якщо новий інтерфейс PCI Express 3.0 набуде поширення, то вона збільшиться вдвічі.

Читання і запис: наносекунди

У пам'яті на основі фазового переходу використовується металевий сплав халькогенід, який в залежності від прикладеної напруги приймає кристалічну або аморфну ​​структуру. З огляду на те що в РСМ, як і у флеш-пам'яті, що зберігаються дані необхідно спочатку видалити, по швидкості роботи чіпи РСМ не можуть зрівнятися з DRAM. Резистивна ж пам'ять подає більше надій, але в даний час існують лише прототипи таких чіпів, що випускаються компаніями HP, Panasonic, Samsung і Sony і випускає кондиціонери mitsubishi electric.

У ReRAM всі зусилля спрямовані на те, щоб зробити ізоляційний матеріал струмопровідних, приклавши до нього напруга, в результаті чого значення біта стає рівним 1. Щоб змінити його, необхідно докласти зворотна напруга, яке відновить ізоляційні властивості матеріалу. На відміну від флеш- і PCM-пам'яті технологія ReRAM забезпечує пряму перезапис даних. Швидкості читання і запису однакові і знаходяться на рівні оперативної пам'яті - ідеальні передумови для отримання високопродуктивного накопичувача майбутнього.

Ssd-накопичувачі - надшвидка пам'ять

ОПЕРАЦІЙНА СИСТЕМА гальмує роботу швидких накопичувачів

Windows і інші ОС при такій високій пропускної здатності нових дисків не здатні забезпечити ефективне збереження даних.

З масовим поширенням SSD-накопичувачів ми вже забули про тривалий час завантаження програм, характерне для класичних жорстких дисків на магнітних пластинах. Однак багато функцій сучасних операційних систем все ще оптимізовані під стандартні HDD. Накопичувачів нового покоління необхідна повна реорганізації ОС, так як вони мають більш низьким робочою напругою і мають менший час доступу, що дозволяє їм виконувати більшу кількість операцій в секунду.

Windows і інші системи вимагають значної переробки

Який саме обсяг робіт зі зміни ОС належить виконати, з'ясувала група дослідників з Університету Сан-Дієго, створивши пристрій під кодовим ім'ям Moneta, в якому використовуються РСМ - чіпи пам'яті на основі фазового переходу. Воно підключається до комп'ютера по інтерфейсу PCI Express і, за твердженнями розробників, забезпечує пропускну здатність в 4 Гбайт / с.

Moneta працює під управлінням ОС Linux, але відмінності від Windows або Mac OS X, що стосуються операцій збереження даних, в даній системі незначні. Результати вимірювань швидкості передачі даних справедливі по відношенню до всіх сучасних ОС, і вони невтішні: при використанні РСМ операційна система істотно сповільнює роботу пам'яті.

Ssd-накопичувачі - надшвидка пам'ять

Відзначимо, що архітектура Windows 7 і інших сучасних ОС оптимізована в першу чергу під роботу з магнітними жорсткими дисками (HDD). Так, функціонування системи значно уповільнює планувальник введення / виведення (Input / Output Scheduler), який управляє всіма зверненнями до жорсткого диска. Зазвичай операція над файлом складається з запитів (Request) на запис або читання даних з накопичувача.

Планувальник введення / виведення перерозподіляє запити з метою уникнення можливих збоїв при передачі інформації. Дана модель доцільна у випадку з жорстким диском на основі магнітних пластин (HDD), але при використанні SSD-накопичувача необхідність в подібних діях відпадає, так як твердотільний носій володіє дуже малим часом доступу. Варто відзначити, що в ОС Linux використовується планувальник введення / виведення Noop, який об'єднує кілька запитів без їх попереднього перерозподілу і передає їх драйверу жорсткого диска.

Але і на цю операцію витрачається час, так як за розкладом необхідно кожен раз створювати новий потік команд. Після передачі даних диску потік команд, що відповідає за операції читання / запису, призупиняється, а після виконання жорстким диском свого завдання він повинен бути знову активований - це необхідно для того, щоб HDD зміг «відзвітувати» про успішне завершення операції. Даний підхід доцільний на комп'ютерах, які використовують двоядерні CPU. У сучасних же багатоядерних системах, що одночасно виконують до восьми потоків команд, такі ситуації виникають рідко.

Щоб збільшити швидкість передачі даних, розробники Moneta спочатку позбулися планувальника. В результаті вони домоглися того, щоб дані передавалися без попереднього розподілу та об'єднання. Зазвичай запит складається з кількох команд, а драйвер диска здійснює їх збір для подальшого приміщення в кеш-пам'ять накопичувача. В процесі виконання даної операції марно витрачається час, Розробники Moneta також урізали запити, які стали містити лише одну команду довжиною 64 біта. Дані заходи дозволили істотно підвищити кількість операцій введення / виводу, що виконуються Moneta, - приблизно до одного мільйона в секунду.

Можливості оптимізації системи

Однак варто зазначити, що дані зміни ще не дозволяють досягти максимальної швидкодії. Потрібно ще одна операція по модифікації, при якій відбувається зміна архітектури операційної системи. Справа в тому, що в сучасних ОС програми, які ініціюють операції по збереженню даних, виконуються з обмеженими правами, тобто функціонують в рамках призначеного для користувача режиму. Навпаки, закріплений за ОС режим ядра (привілейований режим) не знає ніяких обмежень - він і керує в кінцевому підсумку апаратними засобами.

Таким чином, запити на збереження даних, перед тим як бути обробленими, повинні бути спочатку переведені в режим ядра ОС.

Ssd-накопичувачі - надшвидка пам'ять

Розробники Moneta домоглися скасування звернення до ядру, створивши власний драйвер, який працює в режимі користувача. Таким чином, ОС практично не втручається в процес передачі даних. Під питанням залишаються файлова система і система управління правами, що визначає, наприклад, кому з користувачів дозволений доступ до того чи іншого файлу. Обмін даною інформацією між додатком і ядром виконується незалежно від процесу передачі даних. Завдяки цьому не порушується модель безпеки архітектури ОС.

В майбутньому будь-яка програма зможе безпосередньо і без втрати часу отримувати доступ до файлу для його читання або запису. Операційна система буде «залишатися осторонь», в той час як драйвер жорсткого диска стане відповідати за управління процесами збереження даних. Єдине завдання ОС буде полягати в тому, щоб за допомогою файлової системи брати участь в протоколюванні даних змін. Таким чином, висока швидкість роботи дискової підсистеми можлива тільки в модифікованої ОС.