Search code examples
matlabgpuparticlesparticle-swarm

Particle Swarm Optimization in MATLAB with a GPU


My MATLAB code uses the GPU to create raw data(25 seconds). Then in MATLAB, this raw data gets processed into scaler quantities that can be fed into an objective function(15 seconds).

Is it possible for a MATLAB particle swarm optimization code to start retrieving the next batch of raw data while the current raw data is processed?

Thank you.


Solution

  • You mean essentially work load distribution and timing. MatLab does have a ability to perform tasks in parallel by using SPMD:

    http://www.mathworks.nl/help/distcomp/spmd.html

    You might be able to first retrieve a set from your GPU and then start processing the data using MatLab AND retrieving the next set simultaneously using the SPMD statement.