[Программирование, Отладка] Intel ControlFlag — система машинной отладки человеческих ошибок кода

Автор Сообщение
news_bot ®

Стаж: 6 лет 4 месяца
Сообщений: 27286

Создавать темы news_bot ® написал(а)
09-Дек-2020 11:30

Человеку, как известно, свойственно ошибаться. Самые вопиющие ошибки попадают в учебники, а с миллионами остальных нам приходится как-то жить и тратить свой рабочий ресурс на их исправление. По подсчетам исследователей из Университета Пенсильвании, на отладку кода уходит порядка 50% бюджета разработки ПО. Это чудовищно много, но надежда у человечества все-таки есть — будущее за машинными дебаггерами. На прошедшей совсем недавно конференции Intel Labs Day Intel представила ControlFlag — аналитическую систему машинного программирования, способную самостоятельно обнаруживать ошибки в программном коде.

В своей работе Intel ControlFlag использует машинное обучение, формальные методы распознавания, а также свои знания языков программирования, компиляторов и компьютерных систем. В ходе предварительных испытаний ControlFlag изучила более 1 млрд. немаркированных строк продакшен-кода и уже на этом этапе умудрилась обнаружить в них ряд пропущенных дефектов. Например, была проанализирована широко используемая утилита cURL и выявлена неизвестная ранее аномалия. В результате это побудило разработчиков cURL выпустить исправленную версию инструмента.
Специфическим функционалом аналитической системы является выявление аномалий. Находясь в привычной природной среде, мы наблюдаем в ней определенные закономерности, и, соответственно, учимся считать их нормальными. Аналогичным образом и ControlFlag обучается на заранее проверенных примерах определять «нормальные» паттерны, выявляя на их основе аномалии в коде. ControlFlag способна обнаруживать их независимо от используемого языка программирования.
Методика самообучения ControlFlag для распознавания паттернов способна адаптироваться к стилю разработчика. ControlFlag может определять даже стилистические вариации в языке программирования — аналогично тому, как читатели распознают различия между полными словами и их сокращениями. Решение также может настраивать идентификацию ошибок и выдавать рекомендации по их устранению, опираясь на собственные знания. Эти опции помогают ControlFlag не считать за ошибку стилистические вариации кода, используемые разными командами разработчиков.
Ожидается, что в будущем задача отладки кода будет еще сильнее влиять на разработчиков и IT-индустрию в целом. По мере развития прогресса возрастает роль гетерогенных архитектур, в которых используются специализированные процессоры для управления большими массивами данных. Параллельно усложняется и программное обеспечение, необходимое для управления такими системами – это значительно повышает риск возникновения ошибок. Кроме того, все сложнее найти специалистов с опытом безошибочного, эффективного и безопасного программирования на различном оборудовании. Это также повышает риск появления новых и трудно обнаруживаемых ошибок в коде.
Как только ControlFlag будет полностью реализован, он сможет решить эту проблему путем автоматизации тестирования, мониторинга и отладки кода. Это не только повысит продуктивность разработчиков, предоставив им больше времени для творчества, но и поможет решить проблему высокой стоимости разработки ПО.
Как вы понимаете, публичная история Intel ControlFlag еще только начинается, информации о системе пока еще совсем мало. Нам очень интересна эта тема — надеемся, и вам тоже. Мы твердо рассчитываемся к ней вернуться — уже с конкретными фактами и данными.
===========
Источник:
habr.com
===========

Похожие новости: Теги для поиска: #_programmirovanie (Программирование), #_otladka (Отладка), #_intel_controlflag, #_sistema_mashinnoj_otladki_koda (система машинной отладки кода), #_blog_kompanii_intel (
Блог компании Intel
)
, #_programmirovanie (
Программирование
)
, #_otladka (
Отладка
)
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 23-Июн 06:58
Часовой пояс: UTC + 5