Templet Logo
Rus|Eng
Rus|Eng

Проект Темплет

актор-задачные вычисления на множестве ядер, кластерах, в Интернете

The Templet Project

actor-task computing across multiple cores, clusters, and the Internet

Добро пожаловать на сайт исследовательского проекта Templet Самарского национального исследовательского университета!

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

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

Концепция проекта включает следующие положения.


  1. Унифицированный взгляд на вычислительный процесс представлен моделью управления вычислениями в сети. Основной элемент модели – это управляющий узел, формирующий поток задач для исполняющих узлов. Более сложные варианты этой модели используются для обеспечения лучшей масштабируемости программ.
  2. Представление структуры и семантики программ. Управляющий узел отслеживает большое количество параллельных задач. Специальная модель программирования применяется чтобы упростить код управляющего узла. Модель программирования использует акторы и темпоральную логику действий для описания семантики программ. Структура программ представляется в виде микросервисов.
  3. Технология программирования с максимальным повторным использованием. Как альтернатива разработке нового языка для выражения семантики модели программирования используется технология автоматического поддержания структуры кода в соответствии с моделью. Эта технология полностью совместима с существующими интегрированными системами разработки и упрощает использование готовых библиотек для обработки потока задач на исполняющих узлах.
  4. Разработка и запуск программ, обмен вычислительными ресурсами. Функцию сетевой операционной системы для программ выполняет система управления развертыванием. Это специальный веб-сервис, совмещающий автоматизацию для модели программирования, управление вычислениями в сети, обмен сетевыми ресурсами между пользователями.

Мы разработали и продолжаем совершенствовать инструменты, доказывающие работоспособность нашей концепции:

Разработанные инструменты используются для обучения параллельному и распределенному программированию студентов бакалавриата и магистратуры Самарского национального исследовательского университета (hpc.ssau.ru/node/3130), а также в исследованиях по Государственному контракту Министерства образования и науки Российской Федерации (№9.1616.2017/4.6).

Welcome to the Templet research project of Samara National Research University!

The global network connects almost all computing, sensor and executive devices. The network is a single computer with unlimited power and capabilities. Programs for the network are necessary for high-performance scientific computing, data processing, controlling of technical objects, organization of interaction between the physical environment and people.

The goal of the Templet project is to simplify the programming of the network to the programming level of a single computer. The Templet project exists to take full advantage of computing resources in scientific, educational and industrial applications through the implementation of actor-task computing, a generic approach that adapts actor model for many-task computing across multiple cores, clusters, and the Internet.

The concept of the project includes the following provisions.


  1. A unified view of the computational process is represented by a model of computation in the network. The main element of the model is the control node that forms the task flow for the executing nodes. More complex versions of this model are used to provide better program scalability.
  2. Representation of the structure and semantics of programs. The control node monitors a large number of parallel tasks. A special programming model is used to simplify the code of the control node. The programming model uses actors and temporal logic of actions to describe the semantics of programs. The structure of the programs is represented in the form of microservices.
  3. Programming technology with maximum reuse. As an alternative to developing a new language for expressing the semantics of the programming model, the technology of automatically maintaining the structure of the code is used in accordance with the model. This technology is fully compatible with existing integrated development systems and simplifies the use of ready-made libraries for processing task flow on executing nodes.
  4. Development and launch of programs, exchange of computing resources. The function of the network operating system for programs is performed by the deployment management system. This is a special web service combining automation for the programming model, managing calculations in the network, sharing network resources between users.

We have developed and continue to improve tools that prove the efficiency of our concept:

The developed tools are used to teach the parallel and distributed programming of undergraduate and graduate students of Samara National Research University (hpc.ssau.ru/node/3130), as well as in studies on the State Contract of Russian Ministry of Education and Science (#9.1616.2017/4.6).

Прект Templet Самарского национального исследовательского университета
The Templet Project of Samara National Research University