Jump to content

РафтЛиб

РафтЛиб
Оригинальный автор(ы) Джонатан Бирд
Первоначальный выпуск конец 2014 ( конец 2014 )
Стабильная версия
0,9 / январь 2020 г. ( 2020-01 )
Предварительный выпуск
1.0а / 18 мая 2020 г .; 4 года назад ( 18.05.2020 )
Написано в С++
Операционная система Linux , MacOS , Windows
Тип Аналитика данных, высокопроизводительные вычисления, обработка сигналов, машинное обучение, алгоритмы, большие данные
Лицензия Лицензия Апач 2.0
Веб-сайт www .raftlib .что

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

Пример [ править ]

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

#include <raft>
#include <raftio>
#include <cstdlib>
#include <string>

class hi : public raft::kernel
{
public:
    hi() : raft::kernel()
    {
       output.addPort< std::string >( "0" ); 
    }

    virtual raft::kstatus run()
    {
        output[ "0" ].push( std::string( "Hello World\n" ) );
        return( raft::stop ); 
    }
};

int
main( int argc, char **argv )
{
    /** instantiate print kernel **/
    raft::print< std::string > p;
    /** instantiate hello world kernel **/
    hi hello;
    /** make a map object **/
    raft::map m;
    /** add kernels to map, both hello and p are executed concurrently **/
    m += hello >> p;
    /** execute the map **/
    m.exe();
    return( EXIT_SUCCESS );
}

Ссылки [ править ]

  1. ^ «RaftLib: библиотека шаблонов C++ для высокопроизводительной параллельной обработки потоков» (PDF) . Проверено 10 августа 2016 г.
  2. ^ «Онлайн-моделирование и настройка систем параллельной потоковой обработки» (PDF) . Проверено 10 августа 2016 г.
  3. ^ «Пример здравствуй, мир» . Проверено 10 августа 2016 г.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 05b196e17b3446391e5057b2d6bbb4f0__1656929100
URL1:https://arc.ask3.ru/arc/aa/05/f0/05b196e17b3446391e5057b2d6bbb4f0.html
Заголовок, (Title) документа по адресу, URL1:
RaftLib - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)