Основы надежности
Отдельные ускорители отказывают редко, но при масштабировании до тысяч узлов интенсивности отказов компонентов умножаются, и прерывание становится непрерывным условием эксплуатации. В масштабе кластера среднее время между отказами (MTBF) падает с лет до часов, и восстановление после отказов превращается в основной путь исполнения. Это приложение собирает количественные расчеты надежности, на которых стоят главы книги об отказоустойчивости: вывод вероятностей отказа, оптимальных интервалов контрольных точек Янга–Дэйли и моделей наложения доступности. В терминах C³ оно развивает ось координации, где контрольные точки, восстановление и доступность определяют, какая доля вычислений и коммуникации парка превращается в полезную работу.
Как пользоваться этим приложением
Приложение задумано как справочник для перехода от интуиции («отказы случаются чаще в масштабе») к количественным инженерным решениям («как часто делать контрольные точки?» или «сколько нужно запасных узлов?»).
Разобранные примеры в этом приложении используют типовой парк обучения из 10 000 GPU, если не указано иное.
- «Как часто что-то будет отказывать?» — начните с раздела «Вероятность отказа в масштабе» и каскада MTBF в разделе «Каскад MTBF».
- «Как часто делать контрольные точки?» — используйте модель Янга–Дэйли из раздела «Модель Янга–Дэйли» и разобранный пример из раздела «Разобранный пример: оптимальный интервал контрольных точек».
- «Сколько времени теряется на восстановление?» — смотрите анатомию восстановления в разделе «Анатомия времени восстановления» и анализ goodput в разделе «Goodput и rawput».
- «Когда использовать избыточность, а когда контрольные точки?» — сравните стратегии в разделе «Контрольные точки с перезапуском, избыточность и эластичное обучение» и наложение доступности в разделе «Формула наложения доступности».
Вероятность отказа в масштабе
Рассмотрим запуск обучения на кластере из 10 000 GPU в течение 30 суток. Какова вероятность, что за это время откажет хотя бы один смоделированный компонент узла? Ответ — практически 100 % — определяет, нужна ли системе отказоустойчивость как основное проектное требование или лишь как приятное дополнение.
Отдельные аппаратные компоненты удивительно надежны. GPU класса дата-центра работает десятки тысяч часов до отказа. Но физика крупных систем работает против надежности: каждый дополнительный компонент — еще одна возможность отказа, а суммарная интенсивность отказов растет линейно с числом компонентов. Интенсивности отказов на уровне компонентов систематически агрегируются в прогнозы отказов кластера.
Интенсивности отказов компонентов
Инженеры по надежности характеризуют компоненты двумя взаимодополняющими метриками. Интенсивность Failure in Time (FIT) считает отказы на устройство-часов работы; эта единица выбрана потому, что отдельные компоненты отказывают так редко, что отказы в час давали бы неудобно малые числа. Обратная величина, среднее время до отказа (Mean Time To Failure, MTTF), вычисляет средний срок службы в часах (уравнение):
Эталонные интенсивности FIT и значения MTTF (таблица «Интенсивности отказов компонентов») характеризуют надежность компонентов в типичных узлах обучения на GPU, опираясь на опыт крупных парков и складских вычислителей (Kokolis et al., 2025; Zu et al., 2024; Barroso et al., 2019). Эти значения предполагают стационарную фазу «полезной жизни» на кривой ванны, где интенсивность отказов приблизительно постоянна: не доминируют ни ранние отказы (детская смертность), ни износ (конец срока службы) (Klutke et al., 2003).
Интенсивности отказов компонентов: эталонные значения FIT/MTTF порядка величины в стационарной фазе полезной жизни. Основаны на анализе крупного исследовательского кластера GPU (Kokolis et al., 2025), данных об устойчивости и эксплуатации суперкомпьютера TPUv4 (Zu et al., 2024) и проектировании складских машин (Barroso et al., 2019).
| Компонент | Интенсивность FIT | MTTF | MTTF (годы) | Типичный режим отказа |
|---|---|---|---|---|
| GPU | 20 000 | 50 000 ч | 5,7 года | Дефект кристалла, термическая усталость |
| HBM | 5 000 | 200 000 ч | 22,8 года | Накопление переворотов битов, TSV |
| NIC | 6 666,7 | 150 000 ч | 17,1 года | Деградация трансивера |
| Блок питания (PSU) | 10 000 | 100 000 ч | 11,4 года | Старение конденсаторов |
| Коммутатор PCIe | 5 000 | 200 000 ч | 22,8 года | Пайка, повреждение от электростатики |
| Оптический кабель | 20 000 | 50 000 ч | 5,7 года | Изгиб волокна, износ разъема |
| Коммутатор ToR | 3 333,3 | 300 000 ч | 34,2 года | Отказ ASIC, подшипник вентилятора |
Каждый компонент по отдельности выглядит очень надежным: GPU служит в среднем 5,7 года. Трудности начинаются с того, как ведет себя узел, когда одновременно работает много таких компонентов.
Каскад MTBF
Вычислительный узел — последовательная система: если отказывает любой компонент, отказывает узел. Для независимых компонентов с постоянной интенсивностью отказов уравнение суммирует отдельные интенсивности в интенсивность отказов узла:
Представьте каждый компонент как тикающие часы, отсчитывающие время до отказа. У узла с 8 GPU, 2 сетевыми картами (NIC) и 2 блоками питания (PSU) 12 независимых часов: узел отказывает, когда первые часы доходят до нуля. Чем больше часов, тем короче ожидаемое ожидание.
Для кластера из одинаковых узлов та же логика действует уровнем выше, как показывает уравнение:
Это каскад MTBF: надежность деградирует линейно с числом компонентов на каждом уровне, а уровни накладываются друг на друга. Узел с MTBF 5 172,4 ч звучит надежно. Но у кластера из 1 250 таких узлов MTBF всего 4,14 ч: отказ раз в несколько часов — ожидаемое устойчивое состояние.
Таблица «MTBF кластера по масштабу» показывает, как MTBF кластера сокращается с ростом парка.
MTBF кластера по масштабу: с ростом размера кластера суммарный MTBF сокращается пропорционально. На 10 000 GPU отказы происходят раз в несколько часов; на 100 000 GPU — непрерывно. Конфигурация узла: 8 GPU, 2 NIC, 2 PSU на узел.
| GPU в кластере | Узлы | MTBF кластера | Ожидаемых отказов в сутки |
|---|---|---|---|
| 256 | 32 | 161,6 ч | 0,1 |
| 1 024 | 128 | 40,4 ч | 0,6 |
| 2 048 | 256 | 20,2 ч | 1,2 |
| 8 192 | 1 024 | 5,1 ч | 4,8 |
| 10 000 | 1 250 | 4,1 ч | 5,8 |
| 100 000 | 12 500 | 24,8 мин | 58 |
Переход от сотен GPU к десяткам тысяч — качественная смена режима. На 256 GPU между отказами может пройти целый день. На 10 000 GPU кластер ожидает несколько отказов за смену. На 100 000 GPU отказы — непрерывное фоновое условие: система никогда не бывает полностью здоровой.
Вероятность отказа во время задания
MTBF определяет среднее время между отказами, но у заданий обучения фиксированная длительность. Практиков интересует вероятность того, что их задание будет прервано хотя бы раз.
При экспоненциальной модели отказов (постоянная интенсивность) уравнение дает вероятность хотя бы одного отказа за задание длительностью :
Когда , эта вероятность быстро приближается к 1. Таблица «Вероятность хотя бы одного отказа» показывает конкретные числа для разных размеров кластера и длительностей заданий.
Вероятность хотя бы одного отказа: для больших кластеров и многосуточных заданий отказ почти неизбежен. Любая система, работающая в правой нижней области этой таблицы, должна считать отказоустойчивость основным проектным требованием, а не оптимизацией.
| GPU в кластере | 1 сутки (24 ч) | 1 неделя (168 ч) | 30 суток (720 ч) |
|---|---|---|---|
| 256 | 13,8 % | 64,6 % | 98,8 % |
| 1 024 | 44,8 % | 98,4 % | > 99,9 % |
| 2 048 | 69,5 % | > 99,9 % | > 99,9 % |
| 8 192 | 99,1 % | > 99,9 % | > 99,9 % |
| 10 000 | 99,7 % | > 99,9 % | > 99,9 % |
| 100 000 | > 99,9 % | > 99,9 % | > 99,9 % |
Для любого кластера свыше нескольких тысяч GPU, выполняющего задания дольше суток, вероятность столкнуться хотя бы с одним отказом практически равна 100 %. Поэтому глава «Отказоустойчивость» рассматривает отказоустойчивость не как защитную меру, а как фундаментальное архитектурное требование.
Экспоненциальная модель отказов предполагает постоянную интенсивность отказов, которая выполняется в стационарной фазе полезной жизни. При приработке (первые несколько сотен часов) и износе (на подходе к концу срока службы) интенсивности отказов выше. На практике операторы парков наблюдают, что у только что развернутых узлов в первую неделю интенсивность отказов в 2–3 выше, из-за чего тестирование при приработке (burn-in) необходимо перед допуском узлов в промышленные кластеры.
Неизбежность отказов при долгих заданиях обучения ставит практический вопрос: раз отказы будут прерывать исполнение, как минимизировать потерянный прогресс?
Оптимизация контрольных точек
Каждая контрольная точка сохраняет прогресс, но стоит времени. Если делать их слишком редко, отказ уничтожит часы обучения. Если слишком часто, узким местом становятся накладные расходы самой записи контрольных точек. Формула Янга–Дэйли дает математически оптимальную точку баланса, и она зависит всего от двух измеримых величин: сколько времени занимает запись контрольной точки и как часто происходят отказы (Young, 1974; Daly, 2006).
Модель Янга–Дэйли
Оптимальный интервал контрольных точек уравновешивает две конкурирующие стоимости. Запись контрольной точки занимает время (стоимость контрольной точки), в течение которого полезного обучения нет. Но чем длиннее интервал между контрольными точками, тем больше работы теряется при отказе: в среднем половина интервала. Уравнение задает формулу Янга–Дэйли, минимизирующую ожидаемые суммарные накладные расходы:
где — время записи контрольной точки в секундах, а — MTBF системы на уровне кластера или задания в секундах.
Интуиция за уравнением похожа на среднее геометрическое: когда контрольные точки дешевы относительно MTBF (, обычный случай), оптимальный интервал лежит между двумя временными масштабами. Если бы контрольные точки не занимали времени, оптимальной была бы запись на каждом шаге. Если бы система никогда не отказывала, контрольные точки не требовались бы. Квадратный корень интерполирует между этими крайностями.
Формула предполагает, что отказы подчиняются экспоненциальному распределению (свойство отсутствия памяти) и что стоимость контрольной точки мала по сравнению с . Оба допущения хорошо выполняются для промышленных кластеров обучения: экспоненциальная модель согласуется с наблюдаемыми данными об отказах, а современные системы контрольных точек пишут на быстрое параллельное хранилище за десятки секунд, тогда как MTBF измеряется часами.
Размер контрольных точек
Размер контрольной точки определяет время записи , которое входит в формулу Янга–Дэйли. Для типичных контрольных точек обучения в смешанной точности с оптимизатором адаптивной оценки моментов (Adam) каждому параметру требуется около 14 байт постоянного состояния:
- 2 байта для весов модели в BF16
- 4 байта для мастер-весов FP32
- 4 байта для первого момента FP32 (Adam )
- 4 байта для второго момента FP32 (Adam )
Уравнение агрегирует эти стоимости на параметр в полный объем контрольной точки:
Здесь — число обучаемых параметров модели, постоянное состояние весов и оптимизатора которых нужно сериализовать.
Размеры контрольных точек Adam в смешанной точности (таблица «Размеры контрольных точек при обучении Adam в смешанной точности») показывают, как состояние растет от управляемых гигабайт до терабайт масштаба передовых моделей:
Размеры контрольных точек при обучении Adam в смешанной точности: каждому параметру нужно около 14 байт постоянного состояния контрольной точки (веса модели + мастер-веса FP32 + моменты оптимизатора); градиенты обычно временны и пересчитываются после восстановления, а не сериализуются как долговременное состояние контрольной точки. Время записи предполагает суммарную пропускную способность хранилища 100 ГБ/с.
| Размер модели | Размер контрольной точки | Время записи при 100 ГБ/с |
|---|---|---|
| 7 млрд | 98 ГБ | 0,98 с |
| 13 млрд | 182 ГБ | 2 с |
| 70 млрд | 980 ГБ | 10 с |
| 175 млрд | 2 450 ГБ | 24 с |
| 1 трлн | 14 000 ГБ | 140 с |
В масштабе передовых моделей (175 млрд+ параметров) эти размеры достигают терабайтов. Поэтому время записи контрольной точки становится значимой статьей затрат, которая напрямую влияет на оптимальный интервал Янга–Дэйли. Стратегии контрольных точек в главе «Отказоустойчивость» обсуждают техники сокращения — асинхронные контрольные точки, инкрементальные дельты и распределенное хранилище, — и все они улучшают результат Янга–Дэйли, уменьшая множитель под квадратным корнем.
Разобранный пример: оптимальный интервал контрольных точек
Сочетание времени записи контрольной точки и MTBF на 10 000 GPU дает конкретную частоту контрольных точек.
Сценарий: Янг–Дэйли для модели на 175 млрд на кластере из 10 000 GPU
Постановка: допустим, обучается модель на 175 млрд параметров на кластере из 10 000 GPU. MTBF кластера равен 4,14 ч (таблица «MTBF кластера по масштабу»). Размер контрольной точки — 2 450 ГБ, а параллельное хранилище пишет со скоростью 100 ГБ/с.
Шаг 1: время записи контрольной точки ().
Шаг 2: применим формулу Янга–Дэйли (уравнение).
Интерпретация: оптимальный интервал контрольных точек составляет примерно 14,2 мин. Накладные расходы одних только контрольных точек равны 2,9 % времени обучения.
Системный вывод: если кластер удвоить до 20 000 GPU, MTBF сократится вдвое, а оптимальный интервал уменьшится до 10,1 мин: контрольные точки нужно делать чаще, потому что отказы случаются чаще. Это иллюстрирует фундаментальное противоречие в масштабе: большие кластеры быстрее, но требуют более частых прерываний, чтобы защитить прогресс.
Граничные условия формулы Янга–Дэйли заслуживают внимания. Когда приближается к (стоимость контрольной точки приближается к MTBF), накладные расходы контрольных точек и повторной работы становятся столь велики, что одних контрольных точек с перезапуском может не хватить для полезного движения вперед. В таких случаях нужны избыточность или эластичное обучение, о чем говорится в разделе «Контрольные точки с перезапуском, избыточность и эластичное обучение».
Бюджеты восстановления
Когда происходит отказ, система не возобновляет обучение мгновенно. Обнаружение, перепланирование, перезагрузка состояния и повтор потерянной работы — каждый этап занимает время. Понимание этой анатомии восстановления показывает, какая фаза доминирует и куда направить инженерные усилия.
Анатомия времени восстановления
Восстановление — не одно событие, а конвейер фаз, у каждой из которых свой бюджет времени. Уравнение суммирует их в полное время восстановления:
Все члены — длительности: обнаружение отказа, планирование замены, перезагрузка контрольной точки и повтор потерянной работы обучения с момента последней контрольной точки. Их сумма — время по часам, прежде чем задание вернется к продуктивному обучению.
Таблица «Разбивка времени восстановления» разбивает восстановление на фазы, определяющие, как долго кластер остается ниже полной продуктивности после отказа.
Разбивка времени восстановления: каждая фаза вносит вклад в полное время между отказом и возобновлением на полной скорости. В сценарии на 10 тыс. GPU с моделью на 175 млрд доминирует повтор, потому что он пересчитывает работу, потерянную с момента последней контрольной точки.
| Фаза | Типичная длительность | Что происходит |
|---|---|---|
| 30 с | Истекает тайм-аут heartbeat; воркер объявляется отказавшим (подтверждение добавляется к бюджету в главе «Отказоустойчивость») | |
| 60 с | Заменяющий узел выделяется из пула запасных | |
| 24,5 с | Контрольная точка читается из хранилища в память GPU | |
| ~7,1 мин | Пересчет шагов обучения с момента последней контрольной точки | |
| Всего | ~9 мин | Система снова полностью продуктивна |
Разложение этой последовательности показывает, что время повтора обычно доминирует и напрямую управляется интервалом контрольных точек: в среднем приходится повторять половину интервала. Это создает усиливающую петлю с формулой Янга–Дэйли: более короткие интервалы означают меньше повторов, но больше накладных расходов контрольных точек, а формула находит минимум этой суммы.
Остальные фазы предлагают цели для инженерной оптимизации. можно сократить более агрессивными интервалами heartbeat (ценой ложных срабатываний). зависит от заранее выделенных горячих запасных узлов — решение по оркестрации парка, рассмотренное в главе «Оркестрация парка». растет с размером контрольной точки и пропускной способностью хранилища, что мотивирует техники сжатия и шардинга контрольных точек, обсуждаемые в главе «Отказоустойчивость».
Goodput и rawput
Не все время кластера обучения дает полезный прогресс. Rawput — скорость шагов, которую настроенный кластер мог бы выдержать без прерываний на контрольные точки и восстановление. Goodput — скорость зафиксированных шагов обучения, которые вносят вклад в итоговую модель:
Смоделированный разрыв между rawput и goodput имеет два источника:
- Накладные расходы контрольных точек ( 2,9 %): обучение приостанавливается во время каждой записи контрольной точки.
- Накладные расходы восстановления и повторной работы ( 3,6 %): время, потерянное на обнаружение, перепланирование, перезагрузку и повтор работы, отброшенной после каждого отказа.
В масштабе 10 000 GPU опубликованные отчеты Meta, Google и других устойчиво показывают 10–25 % суммарных накладных расходов от отказов и контрольных точек вместе. Кластеру, который номинально способен завершить запуск обучения за 30 суток, поэтому требуется 33–38 суток по часам. Стратегии оркестрации парка в главах «Оркестрация парка» и «Эксплуатация ML-систем в масштабе» направлены на сужение этого разрыва: каждый возвращенный процентный пункт накладных расходов напрямую означает сэкономленные деньги и сокращенное время обучения.
Перспектива: скрытая цена масштаба
Распространено заблуждение, что удвоение размера кластера вдвое сокращает время обучения. На практике удвоение с 5 000 до 10 000 GPU вдвое уменьшает MTBF и увеличивает накладные расходы от отказов. Эффективное ускорение меньше 2, а в предельном масштабе добавление GPU может даже увеличить время по часам, если механизмы отказоустойчивости не поспевают. Это надежностный аналог закона Амдала: последовательные накладные расходы восстановления ограничивают выгоду от параллелизма.
Выбор стратегии
Контрольные точки с перезапуском — не единственная стратегия отказоустойчивости. Для нагрузок обслуживания, где простой измеряется упущенной выручкой, избыточность дает принципиально иной компромисс. Для эластичного обучения система может сжиматься вокруг отказов, а не останавливаться. Выбор правильной стратегии зависит от терпимости нагрузки к задержке, стоимости и сложности.
Контрольные точки с перезапуском, избыточность и эластичное обучение
Три канонические стратегии представляют разные точки в пространстве компромисса между стоимостью, сложностью и скоростью восстановления.
Контрольные точки с перезапуском периодически сохраняют полное состояние системы и после отказа откатываются к последней контрольной точке. Это рабочая лошадка крупномасштабного обучения: концептуально просто, хорошо изучено и эффективно, когда MTBF намного больше стоимости контрольной точки. Слабое место в том, что восстановление требует остановить всех воркеров и повторить потерянные вычисления.
Избыточность поддерживает дублирующие копии состояния или вычислений. Если одна реплика отказывает, другая сразу ее подхватывает. Это доминирующая стратегия для обслуживания инференса, где недопустимы даже секунды простоя. Цена — 2–3 вычислительных ресурсов, что непомерно для обучения, но оправдано для обслуживания, критичного для выручки.
Эластичное обучение позволяет заданию обучения продолжаться с меньшим числом воркеров при отказе, а не останавливаться полностью. Воркеры возвращаются, когда становятся доступны заменяющие узлы. Это минимизирует простой по часам, но требует фреймворков, поддерживающих динамическое изменение размера мира (например, TorchElastic), и вносит сложность в подстройку скорости обучения и нормализацию градиентов. Таблица «Сравнение стратегий отказоустойчивости» суммирует компромиссы.
Сравнение стратегий отказоустойчивости: каждая стратегия лучше в своем режиме. Реальные системы часто сочетают стратегии: контрольные точки с перезапуском для обучения и избыточность для сервиса метаданных и уровня хранения контрольных точек.
| Критерий | Контрольные точки с перезапуском | Избыточность | Эластичное обучение |
|---|---|---|---|
| Задержка восстановления | Минуты (повтор) | Миллисекунды (переключение) | Секунды (реконфигурация) |
| Накладные ресурсы | ~3–13 % (хранилище + ввод-вывод) | 100–200 % (реплики) | ~5–10 % (запасная мощность) |
| Подходящая нагрузка | Обучение (пакетное) | Обслуживание (онлайн) | Обучение (долгое) |
| Реализация | Простая | Умеренная | Сложная |
| Управление состоянием | Периодические снимки | Непрерывная репликация | Распределенное с повторным шардингом |
| Режим отказа | Задание паузится, повторяет | Прозрачно для пользователя | Провал пропускной способности, продолжение |
Формула наложения доступности
Для нагрузок обслуживания доступность обычно выражают в процентах: 99 % («две девятки»), 99,9 % («три девятки») и так далее. Избыточность повышает доступность за счет запуска независимых реплик. Система недоступна, только когда все реплики одновременно недоступны; это записывает уравнение:
где — доступность одной реплики, а — число реплик.
Оценка наложения доступности независимых реплик (таблица «Наложение доступности независимых реплик») количественно показывает выигрыш от добавления мощности обслуживания.
Наложение доступности независимых реплик: начиная с доступности одной реплики в 99 %, каждая дополнительная реплика резко сокращает ожидаемый простой. Предполагается, что отказы реплик независимы.
| Реплик | Доступность системы | Девятки | Простой в год |
|---|---|---|---|
| 1 | 99,00 % | 2,0 | 87,6 ч |
| 2 | 99,9900 % | 4,0 | 52,6 мин |
| 3 | 99,9999 % | 6,0 | 31,5 с |
Наложение независимых избыточных реплик дает резкий выигрыш в доступности: две реплики с доступностью 99 % дают доступность 99,99 %, сокращая годовой простой примерно с 87 часов до менее часа. Поэтому системы обслуживания инференса почти повсеместно развертывают несколько реплик за балансировщиком нагрузки: цена лишней реплики мала по сравнению с бизнес-ценностью доступности «четыре девятки».
Однако допущение независимости критично. Коррелированные отказы — отключение питания всей стойки, программные ошибки, вызванные конкретным входом, или сетевые разделения, изолирующие домен отказа, — сводят на нет наложение доступности. Поэтому глава «Отказоустойчивость» подчеркивает изоляцию доменов отказа: реплики нужно размещать в разных стойках, разных зонах питания и в идеале в разных дата-центрах, чтобы их режимы отказа были действительно независимы.
Итоги
Ключевые выводы: отказ как физическое ограничение
- Интенсивность отказов растет линейно с числом компонентов: один GPU отказывает раз в 5,7 года; кластер из 10 000 GPU переживает отказ раз в 4,14 ч. В масштабе парка отказ — непрерывное фоновое условие, а не исключительное событие.
- Каскад MTBF накапливается через уровни системы: MTBF узла определяется суммой интенсивностей отказов независимых компонентов; MTBF кластера затем делится на число узлов. Таблица «MTBF кластера по масштабу» дает эталонные числа для планирования емкости.
- Вероятность отказа задания быстро приближается к достоверности: для кластеров свыше нескольких тысяч GPU с многосуточными заданиями вероятность хотя бы одного отказа превышает 99 %. Отказоустойчивость в таком масштабе не опциональна, а необходима для завершения любого запуска обучения.
- Интервал контрольных точек Янга–Дэйли: формула (принцип «закон контрольных точек Янга–Дэйли») оптимизирует частоту контрольных точек, уравновешивая стоимость записи контрольных точек и стоимость потерянной работы. Ей нужны всего два измеримых входа: время записи контрольной точки и MTBF системы.
- У восстановления четыре фазы: обнаружение, перепланирование, перезагрузка и повтор. Повтор обычно доминирует и управляется интервалом контрольных точек. Каждая фаза предлагает свои возможности оптимизации.
- Выбор стратегии зависит от типа нагрузки: контрольные точки с перезапуском подходят для пакетного обучения. Избыточность подходит для обслуживания, чувствительного к задержке. Эластичное обучение соединяет их, но добавляет сложность.
- Доступность накладывается экспоненциально при независимых репликах: независимые реплики повышают доступность экспоненциально, но коррелированные отказы обрушивают этот выигрыш. Изоляция доменов отказа — условие, при котором избыточность эффективна.
Вывод интервала контрольных точек Дэйли второго порядка
Формула Янга () дает точную базовую оценку, когда время записи контрольной точки пренебрежимо мало по сравнению с MTBF системы (), но кластеры масштаба передовых моделей сталкиваются с немалым временем записи. Дэйли (2006) вывел более точный оптимальный интервал второго порядка, который учитывает вероятность отказа во время выполнения контрольной точки.
Математическая постановка и доказательство через разложение Тейлора
Пусть и . Если отказы поступают по пуассоновскому процессу с интенсивностью , ожидаемое полное время на вычислительный интервал равно:
Разложим экспоненциальный член рядом Тейлора второго порядка в окрестности :
Подстановка этого разложения в уравнение дает ожидаемое потерянное время на интервал в уравнении:
Минимизация доли потерянного времени при дает квадратное уравнение:
Применение формулы корней квадратного уравнения и выбор положительного корня дают оптимальный интервал контрольных точек Дэйли второго порядка из уравнения:
Сравнение Янга первого порядка и Дэйли второго порядка
По мере роста отношения времени записи контрольной точки к MTBF () формула Янга первого порядка () все сильнее завышает оптимальный вычислительный интервал, рассчитанный по уравнению, потому что игнорирует ненулевую вероятность нескольких отказов в длинных окнах выполнения контрольной точки. При формула Янга первого порядка завышает оптимальный интервал на 27,44 %, что приводит к запаздывающим контрольным точкам и избыточной повторной работе при отказе.
Модель возмущения внимания при тихом повреждении данных (SDC)
Не все аппаратные неисправности проявляются как явные сбои системы, двухбитовые ошибки ECC или ловушки ядра. Тихое повреждение данных (Silent Data Corruption, SDC) возникает, когда однобитовые ошибки или неисправности арифметико-логического устройства (ALU) проскальзывают мимо проверок четности и портят значения тензоров в SRAM, памяти с высокой пропускной способностью (HBM) или регистровых файлах, не вызывая исключения. В нагрузках глубокого обучения SDC особенно опасно, потому что единичные поврежденные значения с плавающей запятой распространяются через нелинейные операции и дестабилизируют обучение всего парка (Dixit et al., 2021).
Модель переворота бита экспоненты в FP16
Рассмотрим элемент тензора с плавающей запятой половинной точности IEEE 754 (FP16), представляющий вектор запроса , значение активации или элемент матрицы весов. FP16 отводит 16 бит: 1 бит знака (), 5 бит экспоненты () и 10 бит мантиссы ().
Скалярное значение , представленное битовой строкой , равно:
Допустим, космический луч, падение напряжения или сбой SRAM вызывают переворот одного бита в старшем бите экспоненты (бит 14). Значение экспоненты меняется с на :
Переворот одного бита экспоненты масштабирует величину числа с плавающей запятой на множитель .
Насыщение вероятностей softmax и взрыв градиента
Пусть — матрица оценок внимания до softmax для длины последовательности и размерности проекции . Допустим, событие SDC портит запись токена в матрице запросов на , где :
где у матрицы возмущений ненулевые элементы в строке : .
Возмущение вероятностей внимания для строки токена равно:
Поскольку , экспонента полностью доминирует над всеми остальными членами знаменателя строки:
Это насыщение вероятностей заставляет распределение внимания схлопнуться в дельта-функцию на позиции поврежденного ключа. При обратном распространении градиент функции потерь по параметрам весов запроса получает неограниченный скалярный множитель, пропорциональный :
Это вызывает катастрофическое повреждение параметров на всех параллельных рангах на следующем шаге оптимизатора, делает все последующие выходы модели бессмысленными и требует отката к последней проверенной чистой контрольной точке.