Blitz++ — высокопроизводительная библиотека функций векторной математики, написанная на C++.
Особенности Данная библиотека была разработана для выполнения научных расчетов и обеспечивает производительность наравне с Fortran 77/90.
Blitz++ использует шаблоны C++, которые обеспечивают компилятор метаинформацией, позволяющей получить на выходе хорошо оптимизированный код. В результате этого, обеспечивается высокая скорость выполнения математических операций над массивами данных, без ущерба для синтаксиса программы, чем не могут похвастаться другие подобные математические программные системы. Библиотека Blitz++ признана пионером в использовании этого способа метапрограммирования.
В библиотеке поддерживаются операции с матрицами, тензорами и векторами. Имеется реализация генератора случайных чисел. Размерность для массивов ограничена 11-ю измерениями. При этом, поддерживается сортировка массивов как в стиле C, так и в стиле Fortran.
История развития Проект начался в Vision and Image Processing Lab — одной из лабораторий кафедры проектирования инженерных систем университета Ватерлоо и был поддержан как часть :en:Natural Sciences and Engineering Research Council при программе PGS A.
В начале 1998-х Future Technologies Group в :en:National Energy Research Scientific Computing Center предоставила доступ к своим суперкомпьютерам для тестирования производительности и бенчмаркинга. В дальнейшем, разработка библиотеки продолжилась в Extreme Computing Laboratory Индианского университета в Блумингтоне.
В настоящее время, работы над библиотекой ведутся в Open Systems Laboratory Индианского университета в Блумингтоне.
Проекты Библиотека Blitz++ используется в нескольких научных проектах, таких как, например: Sunrise — расчет поглощения и рассеяния света для нужд астрофизики C++QED — открытый фреймворк для симуляции динамики квантовых процессов Helios — гирокинетический симулятор поведения плазмы в ядре установки типа Токамак
Примечания
См. также Matrix Template Library (MTL) Basic Linear Algebra Subprograms (BLAS) Iterative Template Library (ITL)
Ссылки Домашняя страница проекта (c сайт на частичной реконструкции) Страница проекта на SourceForge
Категория:Библиотеки C++ Категория:Линейная алгебра