Как правило, если вы можете написать свой код Matlab «векторизованным» способом, то такие пакеты, как AccelerEyes и Jacket, имеют разумную возможность заставить вещи работать на GPU.Вы можете проверить это в некоторой степени заранее, проверив, может ли сам Matlab работать на нескольких ядрах на процессоре (в наши дни Matlab будет использовать несколько ядер, если что-то будет распараллелено очевидным образом).
Если это не такне работает, тогда вам нужно перейти на C / C ++ через mex, а затем оттуда вызвать OpenCL самостоятельно.Mex - это то, как Matlab общается с C-кодом, поэтому вы пишете C-код, который вызывается Matlab (и получает матрицы и т. Д.), Затем инициализирует и вызывает OpenCL.Это больше работы, но может быть вашим единственным маршрутом (и, даже если автоматизированные пакеты работают до некоторой степени, этот подход все же может дать больше ускорений, потому что вы можете быть умнее в управлении памятью, например, если вы знаете, что делаете).