Компьютерные чипы непостоянны: при гипермасштабируемых облаках часты редкие просчеты

Компьютерныечипынепостоянныпригипермасштабируемыхоблакахчастыредкиепросчеты

Компьютерные микросхемы продвинулись до такой степени, что перестали быть надежными: они стали «непостоянными», как говорит Google, и могут не выполнять свои вычисления предсказуемым образом.

Не то чтобы они когда-либо были полностью надежными. Ошибки ЦП существуют столько же, сколько и сами ЦП. Они возникают не только из-за упущений при проектировании, но и из-за условий окружающей среды и из-за отказов физических систем, вызывающих сбои.

Но эти ошибки, как правило, бывают достаточно редкими, и только самые чувствительные расчеты становятся предметом всесторонняя проверка, если системы работают должным образом. Чаще всего компьютерные чипы считаются заслуживающими доверия.

Однако в последнее время два из самых крупных в мире источников стресса для ЦП, Google и Facebook, стали обнаруживать неправильное поведение ЦП все чаще, достаточно, что они сейчас призывая технологические компании работать вместе, чтобы лучше понять, как выявлять эти ошибки и исправлять их.

«Наше приключение началось с того, что бдительные производственные группы все чаще жаловались на машины-рецидивисты, искажающие данные», – сказал Питер Хохшильд. инженер Google, в видео , представленном в разделе «Горячие темы в операционных системах» (HotOS) 2021 конференции на этой неделе.

«Эти машины достоверно обвиняли в повреждении нескольких различных стабильных, хорошо отлаженных крупномасштабных приложений. Каждая машина была обвинена неоднократно независимыми командами, но обычная диагностика не обнаружила в них ничего плохого “.

Более внимательно изучив задействованный код и операционную телеметрию с их машин, инженер Google s начали подозревать проблемы с их оборудованием. Их расследование показало, что количество аппаратных ошибок было больше, чем ожидалось, и эти проблемы проявлялись спорадически, спустя много времени после установки, и на отдельных ядрах ЦП, а не на целых микросхемах или семействе компонентов.

Исследователи Google, исследующие эти тихие коррумпированные ошибки выполнения (CEE), пришли к выводу, что виноваты «ртутные ядра» – процессоры, которые время от времени просчитывались при различных обстоятельствах, что противоречило прогнозам. (Это меркуриально, как в непредсказуемом, а не Mercurial , как в одноименной системе контроля версий.)

Ошибки не были результатом ошибок при проектировании архитектуры микросхем, и они не обнаруживаются во время производственных испытаний. Скорее, как предполагают инженеры Google, ошибки возникли из-за того, что мы довели производство полупроводников до такой степени, что сбои стали более частыми и у нас нет инструментов для их заблаговременного выявления.

В статье под названием «Ядра, которые не считаются» , Хохшильд и его коллеги Пол Тернер, Джеффри Могул, Рама Говиндараджу, Партасарати Ранганатан, Дэвид Каллер и Амин Вахдат приводят несколько правдоподобных причин, по которым ненадежность компьютерных ядер только сейчас привлекает внимание, в том числе увеличение парка серверов, которые делают редкие проблемы более заметными внимание к общей надежности и улучшениям в разработке программного обеспечения, которые уменьшают количество ошибок программного обеспечения.

«Но мы считаем, что есть более фундаментальная причина: все меньшие размеры функций, которые приближают пределы масштабирования CMOS в сочетании с постоянно растущей сложностью архитектурного проектирования “, – констатируют исследователи, отмечая, что существующие методы проверки плохо подходят для выявления недостатков, которые возникают спорадически или в результате физического износа после развертывания.

Не только Google

Facebook тоже заметил ошибки. В феврале агентство социальной рекламы опубликовало статью «Скрытое повреждение данных в масштабе». в нем говорится: «Скрытое искажение данных становится более распространенным явлением в центрах обработки данных, чем наблюдалось ранее». В документе предлагаются стратегии смягчения последствий, но не устраняется основная причина.

По мнению исследователей Google, Facebook обнаружил симптом ненадежных ядер – незаметное повреждение данных. Но для выявления причины проблемы и решения проблемы потребуется дополнительная работа.

Риски, связанные с некорректным поведением ядер, включают не только сбои, для которых существующая модель отказоустойчивости обработка ошибок может учитывать, но также и неправильные вычисления и потерю данных, которые могут остаться незамеченными и представлять особый риск в масштабе.

Хохшильд рассказал о случае, когда неисправное оборудование Google провело то, что можно было бы описать как автоматическая атака программ-вымогателей.

Одно из наших ртутных ядер повредило шифрование. Он сделал это таким образом, что только он мог расшифровать то, что он неправильно зашифровал

«Одно из наших ртутных ядер испортило шифрование», – пояснил он. «Он сделал это таким образом, что только он мог расшифровать то, что было неправильно зашифровано».

Исследователи Google отказались раскрыть обнаруженные скорости CEE в своих центрах обработки данных, сославшись на «бизнес-причины», хотя они предоставили приблизительную цифру «порядка нескольких ртутных ядер на несколько тысяч машин – аналогично скорости, сообщаемой Facebook».

В идеале Google хотел бы видеть автоматизированные методы идентификации Mercurial cores и предлагает такие стратегии, как тестирование ЦП на протяжении всего жизненного цикла чипа, вместо того, чтобы полагаться только на тестирование на выгорание перед развертыванием. В настоящее время мегакорпорация полагается на управляемый человеком опрос целостности ядра, который не является особенно точным, потому что инструменты и методы для выявления сомнительных ядер все еще находятся в разработке.

«По нашему недавнему опыту , примерно половина из этих идентифицированных людей подозреваемых фактически доказано при более глубоком расследовании, что они являются ртутными ядрами – мы должны извлечь «признания» посредством дальнейшего тестирования (часто после первой разработки нового автоматизированного теста) », – объясняют исследователи Google. «Другая половина – смесь ложных обвинений и ограниченной воспроизводимости».

Пусть начнется Основная инквизиция. ®

Leave a comment

Your email address will not be published. Required fields are marked *