1 / 18

MATLAB*P 2.0: User Friendly, Interactive Environment for Parallel Scientific Computing

MATLAB*P 2.0: User Friendly, Interactive Environment for Parallel Scientific Computing. Ron Choy, Alan Edelman Lab. For Computer Science MIT. MATLAB*P: a parallel MATLAB project. We all love MATLAB It’s useful for numerical experiments as well as for real production systems

jamuna
Download Presentation

MATLAB*P 2.0: User Friendly, Interactive Environment for Parallel Scientific Computing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MATLAB*P 2.0: User Friendly, Interactive Environment for Parallel Scientific Computing Ron Choy, Alan Edelman Lab. For Computer Science MIT

  2. MATLAB*P: a parallel MATLAB project • We all love MATLAB • It’s useful for numerical experiments as well as for real production systems • Don’t you wish it runs faster?

  3. Outline • Project background • The system • How to use? • Benchmarks

  4. Why parallel MATLAB • MATLAB only runs on single processor • It was fine before, but the size of interesting problems grows faster than CPU speed • Solution: • Use compiled language – hard(er) • Make a parallel MATLAB

  5. Parallel MATLAB Survey • 26 projects • 4 approaches • Message passing • Embarrassingly parallel • Compilation • Backend support MATLAB*P

  6. MATLAB*P • Provide a parallel backend to MATLAB • Backend is based on popular numerical libraries: • ScaLAPACK • FFTW • PARPACK • …

  7. Focus • Require minimal learning on user’s part • Reuse of existing scripts • Mimic MATLAB behaviour • Data stay on backend until explicitly retrieved by user • Extendable backend

  8. Example • A = randn(1024*p,1024*p); • E = eig(A); • e = pp2matlab(E); • plot(e,’*’);

  9. Example 2 • J = 1:n; • J = J(ones(n,1),:); • I = J’; • E = ones(n,n); • H = E./(I+J-1);

  10. Example 3 • d = randn(10000*p,1); • a = 1:9999*P; • z = mm(‘chi2rnd’,a); • e = stebz(d,z)

  11. Example 4 • Index = 1:100*p; • B = mm(‘mywork’, Index);

  12. Visualization package • A term project done by a group of students in a parallel computing class at MIT • Provides the equivalent of mesh, surf and spy to distributed matrices

  13. Benchmarks • Does all this power and convenience come at a cost? • Sadly it does • Communication between MATLAB and server • Data distribution to mimic MATLAB • Good news: it amortizes

  14. To obtain more information … • Parallel MATLAB survey • http://supertech.lcs.mit.edu/~cly/survey.html • MATLAB*P homepage • http://supertech.lcs.mit.edu/~cly/matlabp.html • My email address: cly@mit.edu

More Related