Дополнительные сведения

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

Язык Single-assignment C является высокоэффективным чистым функциональным языком программирования, предназначенным для численных расчетов и обработки массивов данных. Эта черта отличает SaC. от других известных языков функционального программирования, как-то Haskell, Miranda или ML. С другой стороны, синтаксис языка максимально приближен к синтаксису языка C, так что задача переноса исходных текстов программ может быть решена значительно эффективнее, чем в таких языках, предназначенных для обработки массивов, как SISAL или APL.

Координационный язык S-Net представляет собой специализированный координационный язык для построения сетевых систем потоковой обработки данных из отдельных компонент, которые могут быть реализованы на любом языке программирования, допускающем вызов функций из динамических или статических библиотек.

Язык Microthreaded C или μTC представляет собой развитие идеи многопоточной обработки данных на многоядерном вычислительном процессоре. Синтаксис языка основан на синтаксисе языка C, расширеном пятью новыми инструкциями и может служить промежуточным языком при компиляции систем потоковой обработки данных, написанных на SaC. и S-Net для многоядерных процессоров.