Getting Started with ScaLAPACK - Really Naive Question

Open discussion regarding features, bugs, issues, vendors, etc.

Getting Started with ScaLAPACK - Really Naive Question

Postby Richard Furse » Mon Sep 20, 2010 11:24 am

Hi there - I've been using LAPACK for a number of years and have some code that I'd like to parallelise over multiple machines - I'm running an optimisation, each iteration of which requires a number (currently 24, but ideally ~100) of complex-valued SVDs, each of which is taking of the order of 10mins. Yes I know, there probably should be a simpler way of doing this, but life is too short...

I'm currently splitting the optimisation over 8 threads at the application level, but ideally I'd like to farm out to a grid of machines and I'm wondering if converting the SVDs to ScaLAPACK would be an answer, but I'm missing something really basic - if I replace my LAPACK calls with ScaLAPACK calls, parts of the problem can be sent by MPI/PVM/whatever to another machine - but what actually runs on that other machine? Is it a copy of my own program? I already do a bunch of things within main(), not least setting up the higher level optimisation - does the program end up with an extra entry point once linked? Or do I need to write a separate program to solve the SVD only and shell out to that with a filename or suchlike?

BTW, the 1997 ScaLAPACK docs say somewhere that complex SVD isn't supported yet. Is this still the case? I'm generally using MKL on Windows (which does seem to include pcgesvd() etc) and ATLAS on Linux.

Clues appreciated,

Richard Furse
Posts: 1
Joined: Mon Sep 20, 2010 10:49 am

Return to User Discussion

Who is online

Users browsing this forum: Google [Bot] and 6 guests