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

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

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

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

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

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

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

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

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

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

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

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

Первая полоса
«Уэбб» раскрыл тайну центра Млечного Пути: почему там формируется слишком мало звезд
Космос
Рак распространяется как сеть: российские ученые наблюдали в 3D особенности развития опухолей
Наука
Солнечная буря сдавила магнитное поле Юпитера «как гигантский мяч для сквоша»
Космос
Анализ крови определяет стадию болезни Альцгеймера с точностью 92%: это поможет подобрать терапию
Наука
ИИ впервые прошел тест Тьюринга: GPT-4.5 обманул людей в 73% случаев
Новости
В Сколково нашли способ увеличить емкость суперконденсаторов для электромобилей
Наука
ИИ ускорил поиск дефектов трубопроводов в 30 раз
Новости
Под пирамидами Гизы нашли «скрытый город», но с учеными согласны не все
Наука
В Земле нашли «червоточину»: что происходит с литосферой
Наука
Появились новые фото угрожающего Земле астероида
Космос
Российский ИТ-рынок замедляется: почему это происходит и что дальше
Новости
«Яндекс» запустил конкурента Google и ChatGPT: чем отличается и как работает
Новости
Трагедию с Xiaomi на автопилоте начали расследовать в Китае
Новости
Посмотрите, как выглядит самый быстрый пассажирский самолет в мире
Новости
Странная форма материи меняет планеты: как она повлияет на Землю
Космос
Новые фотодиоды в 10 раз чувствительнее аналогов: они пригодятся в медицине
Наука
В России создадут региональный совет по дронам: зачем он нужен
Новости
Государство компенсирует бизнесу 20% затрат на роботов: как работает система
Новости
Разработан маршрутизатор для фотонов: он объединит квантовые компьютеры в единую сеть
Наука
ИИ обнаружил два новых гена, которые влияют на риск ишемического инсульта
Наука