Google разрабатывает проект SiliFuzz для массового обнаружения скрытых дефектов CPU

Google разрабатывает проект SiliFuzz для массового обнаружения скрытых дефектов CPU

Google прилагает все усилия для проактивного обнаружения дефектов программного обеспечения в ключевых проектах с открытым исходным кодом. Но теперь стало известно, что компанией также разрабатывается система SiliFuzz, которая будет обнаруживать дефекты в процессорах.

Что это

Принцип работы SiliFuzz заключается в анализе производительности процессора путем выполнения заранее подготовленных тестовых данных, собранных с помощью эмуляторов. Это одна из разновидностей фазирования — процессор загружается «случайными» вычислениями, результат которых проверяется на выходе. Если есть несоответствие, процессор считается неисправным.

Для чего это нужно

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

По сути, задача разработчиков — создать систему, способную регулярно тестировать каждое ядро каждого сервера Google с минимальным влиянием на его производительность. В своем нынешнем виде SiliFuzz выбирает момент времени, когда нагрузка на конкретную машину не слишком велика, и последовательно тестирует группы из четырех потоков (2 ядра с SMT) не более чем за две минуты. В настоящее время разработчики сосредоточились на процессорах x86-64, которые широко используются самой компанией Google.

Основная цель проекта — автоматизировать обнаружение скрытых дефектов, приводящих к просчетам, которые гораздо опаснее простых сбоев и аварий, поскольку лишь небольшие отклонения в работе чипа приводят к накоплению целого массива ошибок. В некоторых случаях разница составила менее 0,0000003%, но этого может быть достаточно для возникновения серьезных проблем.

Какова эффективность

Около 45% дефектов, обнаруженных с помощью SiliFuzz, не отслеживаются другими инструментами. В будущем разработчики планируют расширить SiliFuzz, увеличить скорость работы программы и в целом улучшить качество ее работы.

Источник: phoronixgithub

Иллюстрации: Laura Ockel on Unsplash

Для тех, кто хочет знать больше: