RaftLib

редактировать
RaftLib
Rl.svg
Автор (ы) исходного текста Джонатан Бирд
Первый выпускконец 2014 г. ( конец 2014 г.)
Стабильный выпуск 0.9 / январь 2020 г. (2020-01)
Предварительный выпуск 1.0a / 18 мая 2020 г.; 4 месяца назад (2020-05-18)
Написано наC ++
Операционная система Linux, macOS, Windows
Тип Аналитика данных, HPC, обработка сигналов, машинное обучение, алгоритмы, большие данные
Лицензия Лицензия Apache 2.0
Веб-сайтwww.raftlib.io

RaftLib - это портативная система параллельной обработки, целью которой является обеспечение максимальной производительности при одновременном повышении производительности программистов. Это позволяет программисту собирать массово-параллельную программу (как локальную, так и распределенную) с использованием простых операторов, подобных iostream. RaftLib обрабатывает потоки, выделение памяти, размещение памяти и автоматическое распараллеливание вычислительных ядер. Он позволяет создавать приложения из цепочек вычислительных ядер, образующих задачу и конвейерный параллельный вычислительный граф. Программы написаны на C ++ (хотя планируются другие языковые привязки).

Пример

Вот пример Hello World для демонстрационных целей:

#include #include #include #include class hi: public raft :: kernel {public: hi (): raft :: kernel () {output.addPort < std::string>("0"); } виртуальный плот :: kstatus run () {output ["0"].push (std :: string ("Hello World \ n")); возврат (raft :: stop); }}; int main (int argc, char ** argv) {/ ** создать экземпляр ядра печати ** / raft :: print < std::string>p; / ** создать экземпляр ядра hello world ** / привет, привет; / ** создаем объект карты ** / raft :: map m; / ** добавляем ядра в карту, и hello, и p выполняются одновременно ** / m + = hello>>p; / ** выполнить карту ** / m.exe (); возврат (EXIT_SUCCESS); }
Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-03 06:28:33
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте