Информация об изменениях

Сообщение Симуляция на реактивных потоках от 05.01.2017 9:09

Изменено 09.01.2017 23:18 VladD2

Симуляция на реактивных потоках
Привет!

Наверняка вы знакомы или даже работали с Simulink (или подобными инструментами). Симуляция там реализована как пошаговое вычисление состояния модели, т.е. на каждом шаге значения выходов блоков (состояние) с прошлого шага "передаётся" на входы блоков, затем все блоки вычисляются, в результате чего получаем состояния для следующей итерации (видео о блоках: youtube.com/watch?v=qoj8Pa2wi0A).

Идея в том, чтобы реализовать подобный инструмент, но построенный на асинхронном обмене сообщениями (на реактивных потоках в частности) вместо пошагового выселения состояния. Т.е. в целом это будет работать также: значения с выходов блоков будут передаватся на входы, но в виде посылки сообщений, а вычисления блоков будет выполнятся асинхронно.

Думаю, это даст возможность ускорить (через распараллеливание/распределение вычислений) симуляцию. Что вероятно позволит симулировать более сложные модели.

Что думаете вы?

Здесь
Автор: C.A.B
Дата: 05.01.17
можно попинать мою скромную попытку реализовать это, и здесь почитать больше и посмотреть код.

Спасибо!
Симуляция на реактивных потоках
Привет!

Наверняка вы знакомы или даже работали с Simulink (или подобными инструментами). Симуляция там реализована как пошаговое вычисление состояния модели, т.е. на каждом шаге значения выходов блоков (состояние) с прошлого шага "передаётся" на входы блоков, затем все блоки вычисляются, в результате чего получаем состояния для следующей итерации (видео о блоках: https://www.youtube.com/watch?v=qoj8Pa2wi0A).

Идея в том, чтобы реализовать подобный инструмент, но построенный на асинхронном обмене сообщениями (на реактивных потоках в частности) вместо пошагового выселения состояния. Т.е. в целом это будет работать также: значения с выходов блоков будут передаватся на входы, но в виде посылки сообщений, а вычисления блоков будет выполнятся асинхронно.

Думаю, это даст возможность ускорить (через распараллеливание/распределение вычислений) симуляцию. Что вероятно позволит симулировать более сложные модели.

Что думаете вы?

Здесь
Автор: C.A.B
Дата: 05.01.17
можно попинать мою скромную попытку реализовать это, и здесь почитать больше и посмотреть код.

Спасибо!