Эффективное программирование гибридных суперкомпьютеров является чрезвычайно сложной задачей в силу неоднородности вычислительных устройств и многоуровневой иерархии памяти. Подход проекта CENTAUR к решению этой задачи заключается в создании специализированных предметно-ориентированных библиотек, которые призваны автоматизировать перемещение данных в памяти гибридной машины при решении задач некоторых определённых классов. На этой странице собраны методические рекомендации по созданию таких библиотек. Мы исходим из того, что у авторов библиотеки имеется представление о том, как выглядят типичные программы для решения задач из той предметной области, для которой создается библиотека. Предполагается, что эти программы некоторым образом модифицируются, в результате чего происходит выделение типичных коммуникационных операций в специализированную библиотеку. При описании мы будем опираться на задачи из области вычислительной механики в качестве примера.
В кратком виде методику создания и использования предметно-ориентированной библиотеки можно описать следующей последовательностью шагов:
|