Comments (3)
In short: no you cannot do this. Here is why:
blacs_grid_info
does return an info
value. For any value != 0, this indicates that the Blacs-grid has not been set up successfully. Since the algorithms in ELPA do rely on a correct Blacs-grid, you can run into the error messages you quoted, if your combination of matrix size, block size and process grid does not return info = 0
in blacs_grid_info.
I do agree, that with ScaLapack this might still work, since ScaLapack might be able to work with an "uncorrect" Blacs-grids, ELPA however does not.
I dare speculate, however, that in the cases where ELPA does return the error messages from above, but ScaLapack on the other hand runs successfully, that the info
return code !=0 (i.e. not correct blacs setup).
However, there is a way to solve this with ELPA:
- ELPA does allow you to create multiple solver objects, and
- you can create sub-MPI-communicators (MPI_COMM_SPLIT) , such that the number of MPI processes chosen does allow a correct (info=0) blacs initialization.
So you could create several sub-communicators , and with these create several ELPA objects, and use the correct communicator (ELPA object) depending on the matrix size.
Concerning the 1x1 matrix: I admit this is not implemented in ELPA at all (but could be special cased)
from elpa.
Awesome. Thanks for your suggestions. I thought I was going crazy.
I admit 1x1 matrix is not the target audience of a highly parallel diagonalizer.
I will take a look at the sub-MPI communicators as recommended and potentially we will just modify the code to use a serial diagonalizer for small matrix where no_elems < n_procs
from elpa.
I will close this "issue". Thanks for your help.
from elpa.
Related Issues (20)
- Undefined variable _XOR_EPI breaks builds with AVX512 on non Intel CPUs HOT 7
- Is cholesky decomposition with gpusolver not implemented yet? HOT 2
- Checking configure option to disable non-implemented gpuBLAS with redistribute matrix HOT 3
- Inconsistent checks for HAVE_SKEWSYMMETRIC in C headers HOT 2
- Problem With mpiifort and mpiicc HOT 5
- Does amd GPU on multi-node still be tested? HOT 4
- ifort and icc HOT 7
- Compile error: generated manually_preprossessed file has Syntax error HOT 16
- How to compile with AMD GPU and MPI? HOT 4
- Eigenvector Check: what do check on errmax=0 do? HOT 2
- Compile error when with AMD GPU and MPI: uncomplete fortran_constants.F90 file and "Symbol 'elpa_2stage_complex_nvidia_gpu' has no IMPLICIT type" HOT 3
- complex_double_eigenvectors_2stage check fails with AMD gpu stream enabled HOT 2
- inconsistent result among 1step\2step and scalapack HOT 6
- Inconsistency in deprecated options HOT 1
- Can ELPA only use half of symmetric Matrix? HOT 1
- add topic tags
- Error when running ELPA build with the Nvidia GPU kernels on system without Cuda driver HOT 2
- Error when building ELPA with AVX512
- Four tests failed HOT 4
- complex_double vs double_complex in documentation HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from elpa.