Run serial code on parallel cluster interactively
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi, I need help from the experts.
Suppose I have a slow machine, and I have an access to a fast parallel cluster. Let say my code is fully serial - no parallel language constructs like parfor or spmd. If I want to run the code on the cluster, of course I can submit a batch job using batch function. But, what if I want to run interactively? So far, interactive processing only allows parallel programming, but if my machine is extremely slow, using even one worker on the cluster is still benificial.
What I do currently is using this workaround:
parpool('MyCluster', 1);
spmd (1)
MyVariable = myFunction.
end
MyVariable = MyVariable{:}
I am looking for a more elegant (official?) solution. Using an spmd as a workaround is far from elegant: (i) codes need to be enclosed by spmd blocks, (ii) variables created in spmd blocks are Composite objects that must be indexed by curly braces first before they can be used/displayed normally.
Please help and suggest a better way. Thanks!
6 comentarios
Damian Pietrus
el 16 de En. de 2024
Yes, if you wanted to launch MATLAB directly on a compute node, you'd have to connect to it via RDP or SSH depending on it's operating system. You'd then treat it the same as any other MATLAB session, though I'll warn again that you should be cautious of resource contention if you were to try this.
I've put in an internal enhancement request for this type of interactive workflow from a remote client with MATLAB Job Scheduler so our dev team can take it under consideration.
Respuestas (0)
Ver también
Categorías
Más información sobre Third-Party Cluster Configuration en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!