Боюсь, что вся сложность будет заключаться в «просто портировать»… Матлаб тем и привлекателен, что время написания скрипта предельно мало, даже для малоопытного пользователя — не нужно вникать в различные реализации алгоритмов, например. А если использовать матлаб с учетом некоторых нюансов, то прирост от портирования на С/С++ будет мизерным (уже не говоря про время, потраченное на код).
С/С++, Cuda, OpenAL, Mex и все в этом роде становится бесполезным брендом перед задачей решения диф. уравнений численными методами ибо решалку нельзя разделить, так как есть прямая зависимость от результатов предыдущего решения системы диф. уравнений. Можно только запустить решение с различными начальными параметрами, что собственно и сделано. Остается только вешать на воркеров (на ядра). Хотя, если кто-то обладает подробной информацией об ускорении функции ODE45 любыми методами — прошу привести процесс и результаты ускорения. (Уменьшение точности, и другие манипуляции с свойствами функции — не в счет)
Возможно, но даже реализация своего численного метода в моей задаче вряд-ли даст большой прирост производительности, так как нужно решать системы диф. уравнений на длинных промежутках относительного времени. Причем разных систем. поэтому, если при решении одной системы диф. уравнений и будет какой-то прирост, то в другой системе может и не быть (или совсем падение производительности), а разрабатывать свой метод для каждой системы не целесообразно.
Интересная идея. Удачи с начинаниями! Если будут какие-то вопросы — помогу чем смогу. Правда только в настройке Матлаб, так как с Raspberry не работал.
Спасибо, будем посмотреть. Правда не придется ли создавать 32 мыла? И интересно какая там схема подключения? Все к одному по типу «звезда» или все-со всеми (полносвязное подключение)? Надо разбираться.
Создание и использование Matlab кластеров