Сам ты винчестер! Разбираемся в конструкции SSD
Привет, Гиктаймс! До тех пор, пока твердотельные накопители не перещеголяют HDD по соотношению цены и ёмкости, покупатели будут продолжать кивать на жёсткие диски и рассказывать, что «вон там точно такие же диски раздают намного дешевле». Поэтому, во имя великой борьбы с увеличивающейся энтропией и просто ликбеза ради необходимо поговорить о конструктивных особенностях SSD.
Когда явления или предметы прогрессируют, принято считать, что они становятся сложнее. Уж в компьютерной индустрии — так наверняка. Пользователям такие истины являются в виде «теорий заговора», мол, все устройства сегодня выходят из строя на следующий день после гарантии. Энтузиасты, кстати, в таких причитаниях тоже не отстают и сетуют, что новые технологии уже не починишь с помощью скотча и паяльника, и подозрения только усугубляются год от года. К слову, аналогичный путь уже прошла автомобильная промышленность.
Но с SSD история сложилась иначе — они не стали следующим этапом эволюции накопителей предыдущего типа, а вышли в открытую продажу, когда жёсткие диски уже были, мягко говоря, не новшеством. Десятилетия подряд считывающая головка в HDD носится себе над ферромагнитным слоем и считывает информацию с дорожек на «блинах». Конечно, с годами механика усложнилась и сегодня эта самая головка работает даже не в вакууме, а в гелии, но согласитесь — это всего лишь обновленные декорации к старой пьесе.
С твердотельными накопителями же ситуация обстоит проще и сложнее одновременно. Их даже прежними «мерялками» не измерить. Раньше производительность жёстких дисков можно было определять «на глазок» по скорости вращения шпинделя (любой пионер знает, что 7200 об/мин при прочих равных круче, чем 5400 об/мин) и объёму кэш-памяти. Но «патефонный» принцип считывания информации уходит в историю, а на его место пришла разномастная флэш-память, толпа производителей контроллеров, причём каждый со своим модельным рядом, и всё это при всё том же буфере памяти да с новыми аббревиатурами IOPS, TBW, DWPD и прочих неведомых словах.
А ведь всё это — даже не маркетинговые термины-пустышки, а важная информация, которая поможет выбрать SSD, предугадать его срок службы и даже заранее предсказать скорость новейших моделей. Сегодня мы разберёмся, что контролируют контроллеры и зачем им нужен кэш, в чём измеряется надёжность SSD и о чём на самом деле сообщают стандартные аббревиатуры.
Контроллер — «заведующий» флэш-памятью в SSD
Никто не любит лишнюю бюрократию, особенно в компьютерных комплектующих, но с момента своего изобретения накопителям был жизненно важен правильный режим работы. Такую миссию можно было бы возложить и на «мозги», то есть, операционную систему ПК, но несовместимости и конфликты ПО всех достали ещё с незапамятных времён, поэтому жёсткие диски общаются с компьютером посредством интегральной схемы, а на печатной плате SSD зиждятся контроллер и работник его балда — кэш.
Схема работы твердотельного накопителя сходна с типовой возней в сетевом супермаркете. Контроллер — это такой завхоз… ой, простите, администратор магазина. Руководит приемом товаров (файлов), распределяет их складу (запись в ячейки в флэш-памяти), командует грузчиками, когда нужно пополнить торговый зал (чтение из ячеек памяти) или требует перенести товары на витрины с молочными продуктами на место бытовой химии (функция TRIM).
Накопитель Kingston SSDNow V300 — спасибо товарищу SandForce за наш счастливый апгрейд!
Контроллеры остаются скромными трудягами без своей героической летописи: ну вот не получится так просто взять и расписать их поступательную эволюцию. Если копать совсем уж глубоко, микросхемы такого типа восходят корнями к старенькому Intel 8051 и представляют собой не больно интеллектуальный, но достаточно быстрый и надёжный «мозговой центр» накопителя. Состоит он из процессора с ядрами ARM/RISC, в повседневной работе находит и исправляет ошибки памяти, оперирует данными из буфера (кэша), контролирует передачу данных на интерфейсы SATA/PCIe, шифрует файлы, когда это требуется, да ещё умно «размазывает» данные по NAND, чтобы ячейки изнашивались равномерно и накопитель прослужил дольше. А курирует все эти хлопотные занятия микропрограмма (firmware), известная в народе как «прошивка».
Сегодня в массовых SSD контроллеры используют строго параллельное подключение к памяти. Потому что один-единственный грузчик Вася не будет успевать выполнять задачи администратора так быстро, как от него требуется. Другое дело, что с распределением обязанностей между коллективом грузчиков работа завертится в должном темпе. Теперь вы понимаете преимущества многоканального подключения NAND для операций при большой глубине очереди.
Производителей контроллеров сегодня немало (SandForce, Phison, Marvell, Indilinx, LAMD, MDX, Intel, Silicon Motion), но отличаются между собой далеко не кардинальным образом. Разница обнаруживается на уровне бизнес-подхода. К примеру, SandForce и Phison отпускают производителям SSD контроллеры «под ключ» — с прошивкой и софтом для обслуживания. Остальные производители продают контроллеры дешевле, но при большей доле самообслуживания производителями. Или же не продают их вообще и оставляют для своих продуктов — так поступают, к примеру, Intel и Samsung.
За годы широкого использования SSD на свет появились поистине «меметичные» модели контроллеров. Одним из таких представителей считается SandForce SF-2281 — суперзвезда индустрии SSD, которая, как и многие наши кумиры, не сподобилась вовремя уйти и стать классикой. Несколько лет тому назад, когда эта модель отправилась в серию, производители SSD расхватывали её огромными тиражами. Всё потому, что помимо пресловутого «сервиса с человеческим лицом» LSI SandForce включил в свой контроллер очень интересную фичу — сжатие данных.
Контроллер SandForce SF-2281 обходился без отдельной кэш-памяти, а вот современные Phison с ней взаимодействуют обязательно
В отличие от жёстких дисков, где местоположение файлов в памяти зависит от файловой системы, в SSD файлы складируются блоками туда, по наитию контроллера. И в этом нет ничего зазорного — хорошее вино не становится хуже, если его наливают не из такой сказочно красивой бочки, как в рекламном буклете. Но, если для последовательных операций распределение файлов уже выполнено оптимальным образом, то перемещение/копирование пачки мелких файлов — работа хлопотная (огромное количество однотипных операций) и трудозатратная. Учитывая, что наиболее мелкие файлы в рутине операционной системе или являются часть программ, или представляют собой документы, LSI научила контроллеры SF-2281 сжимать такие файлы и за счёт этого неплохо повышать скорость работы.
Кроме того, 2281-й был уникален по причине отсутствия отдельной кэш-памяти на повседневные нужды — все операции выполнялись в рамках служебной памяти контроллера. По соотношению цены/производительности и долговечности такие накопители «рулили» долго, но сегодня к такой модели сформировалось отношение, как к Windows XP (в смысле, что хорошие были времена, но кто прошлое помянет…), поэтому все новые накопители Kingston постепенно переехали на аппаратную платформу Phison. Производительность на базе таких моделей варьируется в зависимости от класса накопителя, но 8-канальные четырёхъядерные чипы «едут» вполне в духе времени, способны распознавать «пустопорожние» (с большим количеством пустых блоков, иначе говоря, нулей) данных и работать с ними быстрее, а главное — не допускают деградации скорости накопителя и работают надёжно.
Блок-схема 4-ядерного контроллера Phison PS3110-S10 в новых накопителях Kingston
Такие качества нашей компании всегда импонировали, тем более, что все мы наблюдали за накопителем от известного производителя смартфонов, в котором из-за ленивой «сборки мусора» скорость работы проседала до анекдотичных величин. Впрочем, в нашей топ-модели HyperX Predator используется контроллер Marvell 88SS9293 — во флагманских накопителях возможность «слепить под себя» прошивку дорогого стоит.
Чем занят буфер памяти (кэш)
Без буфера памяти сегодня не обходятся даже скромные по объёму SSD
Верный подмастерье и помощник контроллера. Не увеличивает скорость работы накопителя сам по себе, но помогает в рутинных задачах. Например, как только операционная система даёт команду стереть/изменить файлы на накопителе, внутри SSD начинается следующее трюкачество:
1. Блок, который нужно изменить, отправляется в кэш-память и там видеоизменяется, как и просила «операционка»;
2. Исходные данные в микросхеме NAND отправляются на удаление, контроллер приглядывает данным из буфера новое местоположение исходя из износа ячеек;
3. Кэш переписывает модифицированные данные на новое место.
В этот же самый кэш время от времени кочуют таблицы со служебной информацией о состоянии NAND и ячейках, которые износились окончательно. В общем, задачи «подай-принеси» и «дай старшему на блок-схему взглянуть» этот компонент SSD выполняет исправно.
Ехал IOPS через TBW, видит — DWPD
Когда новый SSD только попадает на рынок, составить впечатление о его скорости и надёжности до выхода тематических обзоров получается не всегда. Раньше (а кто-то и до сих пор) компании боролись с дефицитом информации эпитетами «невероятный, потрясающий, беспрецедентно технологичный накопитель для взыскательных покупателей», но вешать лапшу на уши гикам сегодня чревато, поэтому на помощь приходят сухие цифры и конкретные термины.
IOPS (input/output operations per second) или «количество операций ввода/вывода в секунду» — количество блоков, которые успевают считаться или записаться за сами видите какой промежуток времени. Вычисляются IOPS элементарно: делим скорость считывания на размер блока. Если файл объёмом 10 Кбайт считывается со скоростью 1000 Кбайт/с, значит производительность накопителя в этом конкретном режиме работы равна 100 IOPS.
Iometer — уже немолодая, но проверенная временем утилита для замера IOPS
Во избежание разногласий такие показания сегодня принято снимать с помощью программы Iometer, а современные накопители Kingston, для справки, выжимают (чтение/запись файлов весом 4 Кбайт) порядка 95000/26000 IOPS в случае с недорогими моделями и 160000/130000 в случае с флагманским HyperX Predator.
Понятное дело, что крупными блоками данных SSD оперирует значительно быстрее, чем мелкими, поэтому производители указывают максимально возможное количество IOPS для случайных и последовательных операций. Относиться к таким данным следует так же, как к пометкам «до 100500 Мбит/с на вашем безлимитном тарифе!» у интернет-провайдеров, но за неимением точных результатов тестов и такая информация об SSD будет полезной.
TBW (Total Bytes Written) — объём данных, который можно записать на SSD, прежде чем он испустит дух. Чем больше цифра (а сегодня такой показатель указывают аж в петабайтах) — тем надёжнее накопитель и, как правило, выше гарантийный срок. Воодушевляющие цифры греют душу, но нужно помнить, что в реальности накопитель износится раньше — слишком многое зависит от количества незанятого места, на котором контроллер будет вести свою бурную деятельность и воевать с износом ячеек. Кстати, приглашаем всех взглянуть, как ведут себя наши накопители при работе «на убой».
DWPD (Drive Write Per Day) — забавный измеритель, который показывает, сколько раз в день можно полностью перезаписывать накопитель начиная с первого и заканчивая последним днём гарантии. Словом, вычисление подобно подсчёту образа жизни по горячо любимым нами социальным квотам, где выход за N-киловатт электричества означает «ты попал, парень, плати по двойному/тройному/ещё какому-нибудь тарифу». Вот и покупатель комплектующих волен прикинуть, сколько гигабайт он гоняет по накопителю в день, а затем оценить, выработает ли его SSD свой ресурс до окончания гарантийного обслуживания.
Главное — не размер, а умение пользоваться
Мы намеренно не останавливались на провоцирующих зевоту частностях. Потому что цифры чуть выше средних по рынку/неуспехи многих накопителей носили локальный характер и по прошествии лет уже не впечатляют. И «пришивать к делу» результаты тестирования отдельных моделей мы также не станем — смаковать нюансы обработки команд и сборки мусора отдельными контроллерами нам ещё доведётся в топиках, посвященных тестированию. Словом, после того, как мы сегодня разобрались с типичной конструкцией современных SSD, самое время вникнуть в уникальные новшества таких накопителей. Об этом и поговорим в ближайшем будущем.
Спасибо за внимание и оставайтесь с Kingston на Гиктаймс!
Для получения дополнительной информации о продукции Kingston и HyperX обращайтесь на официальный сайт компании. В выборе своего комплекта HyperX поможет страничка с наглядным пособием.
Наши предыдущие посты: