Содержание
SanDisk выложила в открытый доступ алгоритм SPRandom, который резко ускоряет pre-conditioning SSD. Компания заявляет, что подготовка накопителя к стабильной производительности сокращается с более 160 часов до примерно 6,5 часа.
Если вы когда-то читали про «прогрев» SSD в дата-центрах, то это оно. Только здесь речь не про мифический прирост в играх, а про реальную экономию дней при вводе хранилищ в строй.
SPRandom доводит SSD до steady state за одну полную запись
Новые SSD «из коробки» часто показывают плавающую производительность. Пока контроллер не заполнит флеш-память, не разгонит сборку мусора (garbage collection), не выровняет износ (wear levelling) и не распределит резервные блоки (over-provisioning), поведение по IOPS и задержкам может заметно гулять.
Pre-conditioning как раз нужен, чтобы вывести накопитель в steady state. Тогда производительность становится предсказуемой, и диск можно спокойно ставить в прод.
Классические методы pre-conditioning требуют записать объём, который в 2 раза и больше превышает ёмкость диска. Обычно это комбинация последовательных и случайных записей. SPRandom делает иначе: он записывает данные по каждому логическому адресу один раз и этим закрывает задачу меньше чем за 5% времени от «традиционного» подхода.
Цифры: 128 ТБ за 6,5 часа вместо недели
В данных, которые приводит SanDisk, разница особенно заметна на больших ёмкостях. SSD на 128 ТБ при обычной подготовке требует более 160 часов — это почти 7 дней. С SPRandom тот же цикл занимает около 6,5 часа.
Для 256 ТБ цифры ещё жёстче: традиционный подход — до 250 часов (примерно 10,5 дня). SPRandom снова укладывается в 6,5 часа.
- Снижение времени: примерно на 95%-97,4% по приведённым примерам
- Запись по накопителю: один полный проход физической записи
- Цель: steady state производительность до ввода в эксплуатацию
Внутри — «умная математика» про over-provisioning
По описанию SanDisk, алгоритм делит накопитель на перекрывающиеся секции. Размер перекрытия соответствует ожидаемому over-provisioning для каждой секции. По мере роста физических адресов доля over-provisioning постепенно уменьшается по всему объёму.
Дальше вступает математика: SPRandom рассчитывает, как over-provisioning распределится после pre-conditioning. Это нужно, чтобы steady state наступил после одного прохода записи, без повторных «заливок» на 2x-3x ёмкости.
Кому это нужно: гиперскейлерам и AI, а не вашему ПК
Главные выгодоприобретатели здесь — операторы гиперскейл-дата-центров и владельцы AI-инфраструктуры. Они покупают SSD тысячами и хотят как можно быстрее вводить их в работу. Если с каждого диска убрать больше 150 часов подготовки, это напрямую снижает сроки развёртывания и операционные затраты.
AI-нагрузки особенно чувствительны к «плавающему» сториджу. При обучении и инференсе важна стабильность ввода-вывода на больших массивах, где тысячи дисков работают параллельно.
А вот для домашнего ПК смысл почти нулевой. Никто не гоняет pre-conditioning неделями на одном SSD ради игр. И пользователь не заметит разницу в повседневных сценариях.
SanDisk выпустила код SPRandom как расширение для инструмента FIO (Flexible IO Tester), и он доступен всей индустрии. Подробности о публикации алгоритма и контекст по рынку накопителей есть у Blocks and Files.