Questions tagged [scalapack]

ScaLAPACK is a library of high-performance linear algebra routines for parallel distributed memory machines. ScaLAPACK solves dense and banded linear systems, least squares problems, eigenvalue problems, and singular value problems.

The goals of the ScaLAPACK project are the same than the one’s of LAPACK, namely:

efficiency (to run as fast as possible),

scalability (as the problem size and number of processors grow),

reliability (including error bounds),

portability (across all important parallel machines),

flexibility (so users can construct new routines from well-designed parts),

and ease of use (by making the interface to LAPACK and ScaLAPACK look as similar as possible).

62 questions
2
votes
1 answer

Should I place a barrier before calling pdpotri()?

I am using pdpotrf() in order to perform the Cholesky decomposition. Then I want to call pdpotri(), in order to invert the matrix. The function is called from every process, just after pdpotrf(). Should I put a barrier there, so that I am sure that…
gsamaras
  • 71,951
  • 46
  • 188
  • 305
2
votes
1 answer

Confused with pdpotrf arguments

I want to do a Cholesky factorization in a distributed environment. For that purpose, I use pdpotrf(). However, I am struggling understanding the parameters needed by the function and they provide no C example on how to use it (and an example would…
gsamaras
  • 71,951
  • 46
  • 188
  • 305
2
votes
1 answer

How to use pdgemr2d to copy distributed matrix in total to all processes?

I'd like to copy a (nxn) matrix, which is distributed over a (pxq) grid of processes to all processes, so that each process has the whole (nxn) matrix, similar to an allgather operation from mpi. I understand that scalapacks pdgemr2d routine is the…
chris
  • 317
  • 2
  • 9
2
votes
0 answers

ScaLAPACK, "Semaphore timeout period has expired" while calling Cblacs_gridinit()

I use ScaLAPACK from Intel MKL, with MPICH2 installed over a network of Windows 7 computers. It works fine when I run jobs on single machine, like: mpiexec -n 16 Z:/myprogram.exe # Z:/ is a mapped network drive Moreover, it works fine over…
1
vote
1 answer

Example of using MPI_Type_create_subarray to do 2d cyclic distribution

I would like to have an example showing how to use MPI_Type_create_subarray to build 2D cyclic distribution for large matrix. I know that MPI_Type_create_darray will give me 2D cyclic distribution, but it is not compatible with SCALAPACK process…
dev.robi
  • 19
  • 5
1
vote
0 answers

Small matrices in ScaLAPACK: How to deal with empty blocks

I have a large matrix describing a physical system. The last two rows are fundamentally different from the others, and therefore need to be set up separately. Furthermore, it makes no sense to distribute each of these rows over different processes.…
Jakob Filser
  • 131
  • 9
1
vote
0 answers

ScaLapack installation fails with its auto installer package on Centos7 but it succeeds on Centos 6.7. Why?

I am trying to install the ScaLAPACK with the help of Python-based installer available at http://www.netlib.org/scalapack/scalapack_installer.tgz on CentOS 7(64bit). It is installing successfully but failing in test routines step and showing the…
1
vote
1 answer

Blacs: processor grids that do not use all MPI cores

I have problems with Scalapack when processor grids do not use all available MPI cores. Say I know the grid to setup Pc*Pr<=NP When I setup a process grid Cblacs_get(0, 0, &ctxt); const char *order = ( column_major ? "Col" : "Row"…
Denis
  • 1,526
  • 6
  • 24
  • 40
1
vote
0 answers

Efficient complex matrix-matrix multiplication: matrix shapes and memory

In my code the deepest loop level contains a BLAS routine for matrix-matrix multiplication. Since this operation is the most expensive operation (regarding computation time) I would like to know what is important to make a matrix-matrix…
thyme
  • 388
  • 5
  • 18
1
vote
1 answer

Scalapack returns wrong answer

I am trying to write some c code to find all the eigenvalues of large matrices using the pzheevd routine from scalapack. I have the following simple example which has hard coded a simple 4x4 matrix. Using a single process, 2 processes or 4 I get the…
1
vote
2 answers

Segmentation fault using SCALAPACK in Fortran? No backtrace?

I'm trying to find the eigenvalues and eigenvectors of a Hermitian matrix using SCALAPACK and MPI in Fortran. For bug-squashing, I made this program as simple as possible, but am still getting a segmentation fault. Per the answers given to people…
Sam Norris
  • 11
  • 1
1
vote
0 answers

MPI I/0 reading submatrix from file blockcyclic

I have a huge matrix and need to perform matrix operations on huge submatrices of that matrix. The matrix is stored CMOed binary in a file. There is no problem reading this matrix as a whole blockcyclic using MPI_FILE_CREATE_DARRY(), but I couldn't…
zp3
  • 5
  • 2
1
vote
0 answers

ScaLapack operation, word and message counts

I was wondering if anyone knows any papers or working notes that count how many operations Scalapack routines perform and especially how many messages they send and how many words. In terms of operation counts I can always browse Golub and Van…
1
vote
2 answers

Scalapack not present in Intel MKL on OSX?

I installed ifort composer 2013 SP1 update 1 (103) on OSX 10.8, but apparently I don't have scalapack libraries. Is scalapack not provided on OSX (it is on linux/win) or am I doing something wrong?
Stefano Borini
  • 138,652
  • 96
  • 297
  • 431
1
vote
3 answers

C/Fortran hybrid code using MPI/ScaLAPACK seg faults in a weird way

I am trying to translate this CODE from Fortran into C. This is what I have so far: #include #include #include #include #include "mpi.h" #define PRINT_NOTHING 0 #define PRINT_UP_TO_MESGS …
Eduardo
  • 697
  • 8
  • 26