Milk: новый язык программирования для работы с большими данными

На проходящей в Хайфе 25-ой Конференции PACT 2016 исследователи МТИ представили новый язык программирования Milk, позволяющий разработчикам более эффективно управлять памятью в программах, которые работают с разрозненными значениями в больших наборах данных. Его производительность, как показали испытания, в 4 раза выше, чем у существующих языков.

Проблема больших наборов данных не в том, что их много, объясняет профессор Саман Амарасингх, а в том, что они «рассредоточены». Современные микрочипы не оптимизированы под рассредоточенные данные. Если алгоритму нужны, скажем, всего 20 книг из двух миллионов хранящихся в базе данных, скорее всего, находящиеся рядом с нужной книгой еще 100 книг окажутся совершенно несвязанными с ней. Таким образом, придется обращаться к памяти за каждой отдельной книгой, а это крайне неэффективно и медленно, пишет MIT News.

Milk добавляет несколько команд в OpenMP, расширение таких языков, как С и Fortran, который облегчает написание кода для многоядерных процессоров. С его помощью программист вставляет пару дополнительных строчек вокруг любой инструкции, которая ищет относительно малое число элементов в большом объеме данных. Затем компилятор Milk решает, как управлять памятью в соответствии с командами.

Создан язык программирования живых клеток

Когда ядро получает от Milk запрос на какие-то данные, оно не запрашивает их в основной памяти. Вместо этого оно добавляет адрес элемента данных в список сохраненных локально адресов. Когда список становится достаточно длинным, все ядра объединяют их и группируют адреса, а затем перераспределяют их по ядрам. Таким образом, каждое ядро запрашивает только те элементы, которые ему нужны и которые оно может эффективно найти.

«Большинство важных приложений сегодня используют большое количество данных, но, к сожалению, растущий разрыв между производительностью памяти и процессора означает, что они используют аппаратное обеспечение не на полную мощность, — говорит Матей Захария из Стэнфорда. — Milk помогает преодолеть этот разрыв, оптимизировав доступ памяти в обычных структурных компонентах».

Маск: «Мы находимся на грани, нужно поднажать»

Новые технологии и проблемы, возникающие с их внедрением, нередко требуют новых подходов. Хотя языков программирования много, время от времени возникает необходимость в новых. Еще одним примером может служить язык Simit, о котором мы писали в августе, разработанный инженерами МТИ и ускоряющий компьютерное моделирование в 200 раз.

Подписывайтесь
на наши каналы в Telegram

«Хайтек»новостионлайн

«Хайтек»Dailyновости 3 раза в день

Первая полоса
Телескоп запечатлел столкновение галактик на скорости 3,2 млн км/ч
Космос
Укус вместо укола: создана вакцина от малярии, распространяемая комарами
Наука
Физики определили форму отдельного фотона
Наука
Создатели ChatGPT планируют выпустить собственный браузер
Новости
Плотность промышленных роботов в мире удвоилась за семь лет
Новости
В Гибралтаре нашли «фабрику», на которой неандертальцы варили клей
Наука
Nvidia раскрыла, какие товары компании будут в дефиците и когда
Новости
Посмотрите на первое в истории фото звезды из другой галактики
Космос
Чрезвычайно молодую планету нашли у звезды с «кривым» диском
Космос
Предложен способ навигации дронов без GPS: по «отпечаткам рельефа»
Новости
Ученые раскрыли тайну гигантских черных дыр ранней Вселенной
Космос
Microsoft и Atom Computing выпустят коммерческий квантовый компьютер в 2025 году
Новости
Создан робот-голубь, который летает как настоящая птица
Наука
На страницах тысячелетнего Голубого Корана нашли скрытый текст
Наука
Уязвимость ИИ: типы атак LLM-injection и способы защиты от них
Технологии
Intel случайно упомянула о планах по разработке ИИ-ускорителя
Новости
S.T.A.L.K.E.R. 2: Heart of Chornobyl вышел спустя 15 лет: цены, патчи, бесплатный контент и концовка
Новости
Посмотрите, как прототип космоплана Aurora разогнали до 1,1 Маха 
Новости
Российских айтишников обяжут преподавать в вузах: кого это коснется
Новости
Киберспорт в России сегодня: плюсы и минусы разных бизнес-моделей
Мнения