Как создать программное обеспечение для компьютера в 50 раз быстрее, чем что-либо в мире

Исследователи, стоящие за проектом в течении Project Министерства энергетики США (DOE), хотят воплотить эту возможность в судьбу и делают это, создавая технологии и инструменты для суперкомпьютеров Exascale — вычислительных совокупностей, по крайней мере, в 50 раз стремительнее, чем те, каковые употребляются на данный момент.

Эти инструменты улучшат свойство исследователей разбирать и визуализировать сложные явления, такие как рак и ядерные реакторы, что ускорит инновации и научные открытия.

Разработка уровней ПО, каковые поддерживают и соединяют приложения и оборудование, имеет ответственное значение для реализации этих совокупностей нового поколения.«Эти программные среды должны быть надежными и достаточно эластичными, чтобы трудиться с широким спектром приложений, и должны быть замечательно интегрированы с аппаратным и прикладным программным обеспечением, чтобы приложения имели возможность трудиться и трудиться без сбоев», — сказал Раджив Тхакур, специалист по информатике из Аргоннского национального отделения Министерства энергетики США.

Лаборатория и директор по программным разработкам Exascale Computing Project (ECP).Исследователи из отдела математики и информатики Аргонны сотрудничают с сотрудниками из пяти вторых основных национальных лабораторий ECP DOE — Лоуренса Беркли, Лоуренса Ливермора, Сандиа, Ок-Риджа и Лос-Аламоса — в дополнение к другим лабораториям и университетам.Их цель — создать новые и приспособить существующие программные разработки для работы в экзафакте, преодолевая неприятности, отысканные в нескольких основных областях, таких как память, мощность и вычислительные ресурсы.

Контрольная точка / перезапускАргоннский ученый-компьютерщик Франк Каппелло возглавляет проект ECP, ориентированный на расширенную контрольную точку / перезапуск, механизм защиты для противодействия сбоям , появляющимся при работе приложений.

«Учитывая их сложность, сбои в высокопроизводительных совокупностях являются несложным явлением, и кое-какие из них приводят к сбоям, каковые приводят к сбою параллельных приложений», — сказал Каппелло.«Многие приложения ECP уже имеют контрольную точку / перезапуск, но, вследствие того что мы движемся к еще более сложной совокупности на экзафосфоре, нам нужны более сложные методы для этого. Для нас это показывает обеспечение действенной и действенной контрольной точки / перезапуска для приложений ECP, каковые его не достаточно, а вторым приложениям — более действенная и масштабируемая контрольная точка / перезапуск ».

Каппелло также руководит проект, направленный на сокращение больших количеств данных, генерируемых этими машинами, каковые дорого хранить и действенно передавать.«Мы разрабатываем методы, каковые смогут уменьшить количество данных как минимум на порядок. Неприятность в том, что вы додаёте некую погрешность при уменьшении количества данных», — сказал Каппелло.«В этом случае основное внимание уделяется контролю погрешности; вы хотите осуществлять контроль погрешность, чтобы она не оказывала влияние на научный результат в конечном итоге, но наровне с этим была действенной при сокращении, и это одна из задач, над которыми мы трудимся».

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

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

ВластьЕще один основной ресурс, что изучают исследователи Beckman и Argo Project, — это мощность. Как и при с памятью, методы распределения ресурсов питания смогут ускорить или замедлить вычисления в высокопроизводительной совокупности.

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

Ультратонкие элементы управления также необходимы для управления ядрами в эксафлопсной совокупности.«С каждым поколением суперкомпьютеров мы добавляем ядра обработки, но системное ПО, которое заставляет их трудиться, требует способов разделения всех ядер и управления ими», — сказал Бекман. «А вследствие того что мы имеем дело с миллионами ядер, помимо этого мелкие изменения смогут очень сильно оказать влияние на отечественные возможности; повышение производительности, скажем, на два-три процента эквивалентно вычислениям тысяч ноутбуков. «Одна концепция, которую его коллеги и Бекман исследуют для лучшего управления ядрами, — это контейнеризация, метод группировки выбранного количества ядер совместно и обработки их как единицы или «контейнера», которым вероятно руководить независимо.

«Инструменты, каковые у нас имеется сейчас для управления ядрами, не так верны, что затрудняет регулирование того, какой объем работы выполняется одним набором ядер по сравнению с другим», — сказал Бекман. «Но мы заимствуем и адаптируем концепции контейнеров для высокопроизводительных вычислений, чтобы дать пользователям возможность трудиться и руководить тем, как они используют эти ядра, более шепетильно и напрямую».Программные библиотеки

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

PETSc — это библиотека, которая предоставляет решения для конкретных численных расчетов. TAO — это библиотека, которая предоставляет решения крупномасштабных задач оптимизации, таких как расчет самая экономичной стратегии перезагрузки топливных стержней в ядерном реакторе.Не считая масштабирования разнообразных программных библиотек, ученые ECP также ищут способы улучшить их качество и совместимость.

«Библиотеки традиционно разрабатывались независимо, и из-за различных стратегий, используемых для их разработки и реализации, было сложно использовать пара библиотек в комбинациях. «уровни программного стека совместно забранные», — сказала аргоннский ученый-вычислительный специалист Лоис Керфман Макиннес.Макиннес имеется одним из глав проекта xSDK, определяющий политику сообщества для регулирования внедрения пакетов ПО. Такая политика упростит совместимость различных библиотек между собой.

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

6 комментариев к “Как создать программное обеспечение для компьютера в 50 раз быстрее, чем что-либо в мире”

  1. Капустина Екатерина Мироновна

    Слово в слово, как когда то говорил Сеня Кролик. А воз и ныне там

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *