Возможно, до 15% всех сбоев ПО могут быть следствием аппаратных проблем в памяти. Такой анализ дал новый инструмент Mozilla
Похоже, в мире потребительской (и не только) электроники существует проблема, о которой раньше толком не знали. Инженер Mozilla рассказал о том, что до 15% сбоев браузера Firefox происходят из-за bit flip (переворота битов), что является не программной, а исключительно аппаратной проблемой.
Переворот бита представляет собой ситуацию, когда значение бита данных неожиданно меняется с 1 на 0 или наоборот. Это именно сбой, и причин у него может быть много, начиная с проблем в самом чипе и заканчивая влиянием космического излучения высокой энергии.
В случае с Firefox определить причины этих сбоев невозможно, но важен именно сам факт того, что это просто огромный процент среди всех сбоев ПО.
Данные были получены посредством нового инструмента, разработанного Габриэлем Светло (Gabriel Svetlo). Он же и рассказал о том, что удалось понять благодаря этому инструменту.
Несколько лет назад я разработал способ обнаружения битовых искажений в отчетах о сбоях Firefox, а в прошлом году мы развернули реальный тестер памяти, который запускается на компьютерах пользователей после сбоя браузера. Сегодня я проанализировал данные, полученные в результате этих тестов. Вот несколько цифр, чтобы дать вам представление о масштабах проблемы.
За последнюю неделю мы получили около 470 000 сообщений о сбоях. Это не отражает всех сбоев, поскольку система является добровольной, реальное число сбоев будет в несколько раз больше. Тем не менее, из них около 25 000 сбоев были обнаружены как потенциально связанные с изменением битов. Это один сбой из каждых двадцати, потенциально вызванный некачественной/нестабильной памятью, это огромная цифра! И поскольку это консервативная эвристика, мы недооцениваем реальное число, оно, вероятно, будет как минимум вдвое больше.
Другими словами, до 10% всех сбоев, которые наблюдают пользователи Firefox, вызваны не программными ошибками, а аппаратными дефектами! Если вычесть сбои, вызванные исчерпанием ресурсов (например, нехваткой памяти), эта цифра возрастает примерно до 15%.
Чтобы подтвердить эту оценку, я проанализировал данные, полученные от пользователей, которые запускали тест памяти после сбоя: на каждые два сбоя, которые, по нашему мнению, были вызваны изменением битовой синхронизации, тест памяти обнаружил одну реальную аппаратную проблему. Следует помнить, что это не всесторонняя проверка всей оперативной памяти компьютера, тест проверяет только до 1 ГБ памяти и работает не более 3 секунд.
И для справки, я рассматриваю это в основном на компьютерах и телефонах, но это затрагивает все устройства. Маршрутизаторы, принтеры и т.д., что угодно. Тот самый навороченный MacBook на базе ARM с оперативной памятью, припаянной к процессору? У нас много сбоев из-за них, удачи вам с заменой оперативной памяти без высококвалифицированного специалиста и специального оборудования
Если данные специалистов Mozilla верны, вероятно, их можно экстраполировать на всё ПО и всё аппаратное обеспечение. А это значит, что наша привычная электроника на самом деле сбоит намного чаще, чем мы думаем, и в первую очередь именно из-за памяти. Можно ли с этим что-то сделать, неясно.