Трилинос
Разработчик(и) | Сандианские национальные лаборатории |
---|---|
Стабильная версия | 14.4.0 [1] / 2 августа 2023 г |
Репозиторий | |
Доступно в | С++ и С |
Лицензия | Модифицированная лицензия BSD , Меньшая стандартная общественная лицензия GNU |
Веб-сайт | трилинос |
Trilinos — это набор с открытым исходным кодом библиотек программного обеспечения , называемых пакетами , предназначенных для использования в качестве строительных блоков для разработки научных приложений. Слово «Трилинос» греческого происхождения и передает идею «жемчужной нити», подразумевая ряд программных пакетов, связанных между собой общей инфраструктурой. Trilinos был разработан в Национальных лабораториях Сандии на основе основной группы существующих алгоритмов и использует функциональные возможности таких программных интерфейсов, как BLAS , LAPACK и MPI . [2] [3] [4] В 2004 году Trilinos получила награду R&D100. [5]
Несколько суперкомпьютерных комплексов предоставляют своим пользователям установленную версию Trilinos. К ним относятся Национальный научно-вычислительный центр энергетических исследований (NERSC), [6] Blue Waters в Национальном центре суперкомпьютерных приложений , [7] и суперкомпьютер «Титан» в Национальной лаборатории Ок-Ридж . [8]
Функции
[ редактировать ]Trilinos содержит пакеты для:
- Построение и использование разреженных графов и матриц , а также плотных матриц и векторов.
- Итерационное и прямое решение линейных систем .
- Параллельная многоуровневая и алгебраическая предобусловливание .
- Решение нелинейных, собственных и нестационарных задач.
- Задачи оптимизации с ограничениями PDE .
- Секционирование и балансировка нагрузки распределенных структур данных.
- Автоматическая дифференциация
- Дискретизация уравнений в частных производных.
Trilinos поддерживает параллельные вычисления с распределенной памятью через интерфейс передачи сообщений (MPI). Кроме того, в некоторых пакетах Trilinos расширяется поддержка параллельных вычислений в общей памяти. Они делают это с помощью пакета Kokkos, который предоставляет общий интерфейс C++ для различных моделей параллельного программирования, включая OpenMP , POSIX Threads и CUDA .
Языки программирования
[ редактировать ]Большинство пакетов Trilinos написаны на C++ . Для Trilinos версии 12.0 и более поздних версий требуется поддержка C++11. написаны на C. Некоторые пакеты Trilinos, такие как ML и Zoltan , Некоторые пакеты, такие как Epetra, имеют дополнительные реализации некоторых вычислительных ядер на Фортране , но Фортран не требуется для сборки этих пакетов.
Некоторые пакеты Trilinos имеют привязки для других языков программирования. К ним относятся Python, C, Fortran и MATLAB.
Лицензии на программное обеспечение
[ редактировать ]Каждый пакет Trilinos может иметь собственную лицензию на программное обеспечение. Большинство пакетов имеют открытый исходный код ; большинство из них имеют модифицированную лицензию BSD , а некоторые пакеты находятся под лицензией GNU Lesser General Public License (LGPL). Библиотеки BLAS и LAPACK являются обязательными зависимостями. [2]
См. также
[ редактировать ]- БЛАС
- ЛАПАК
- Интерфейс передачи сообщений
- Список программного обеспечения для численного анализа
- Сандианские национальные лаборатории
Ссылки
[ редактировать ]- ^ Релизы trilinos/Trilinos — GitHub , дата обращения: 1 ноября 2023 г.
- ^ а б «Проект Трилинос» . Сандианские национальные лаборатории . Проверено 24 июня 2014 г.
- ^ Геру, Майкл А.; Бартлетт, Роско А.; Хоул, Вики Э .; Хукстра, Роберт Дж.; Ху, Джонатан Дж.; Колда Тамара Георгиевна ; Лехук, Ричард Б.; Лонг, Кевин Р.; Павловский, Роджер П.; Фиппс, Эрик Т.; Сэлинджер, Эндрю Г.; Торнквист, Хайди К .; Туминаро, Рэй С.; Уилленбринг, Джеймс М.; Уильямс, Алан; Стэнли, Кендалл С. (2005). «Обзор проекта Трилинос». АКМ Транс. Математика. Программное обеспечение . 31 (3): 397–423. CiteSeerX 10.1.1.150.5502 . дои : 10.1145/1089014.1089021 . S2CID 4679315 .
- ^ Пален, Брок; Сквайрс, Джефф; Геро, Майк; Уилленбринг, Джим. «RCE 49: Трилинос» . Подкаст «Исследования, вычисления и инженерия» (RCE) . Проверено 24 июня 2014 г.
- ^ «Исследования, финансируемые Министерством энергетики, получили 26 наград» . science.osti.gov. 12 октября 2004 г. Проверено 3 августа 2020 г.
- ^ «Трилинос» . Национальный научно-вычислительный центр энергетических исследований (NERSC) . Проверено 24 июня 2014 г.
- ^ «Трилинос» . Blue Waters: устойчивые петамасштабные вычисления . Национальный центр суперкомпьютерных приложений (NCSA) . Проверено 24 июня 2014 г.
- ^ «Трилинос» . Вычислительный центр для руководителей в Ок-Ридже . Окриджская национальная лаборатория . Проверено 24 июня 2014 г.