Dear Developers
I run yambo4.0.2
to do g0w0 calculations (yambo -g n -p p -V qp)
but I got this error:
<06s> P0001: CPU structure provided for the Response_G_space ENVIRONMENT is incomplete. Switching to defaults
P0001: [ERROR] STOP signal received while in :[05] Dynamic Dielectric Matrix (PPA)
P0001: [ERROR]Impossible to define an appropriate parallel structure
I run the same input with yambo-3.4.1and the same system(32 cpus) without any error!!
would you please help me to solve this problem?!
Best regards
yambo-4.0.2 error
Moderators: Davide Sangalli, andrea.ferretti, myrta gruning, andrea marini, Daniele Varsano
-
- Posts: 165
- Joined: Tue Jan 21, 2014 9:03 am
yambo-4.0.2 error
S. Ataei, PhD student at University of Tehran, Iran.
-
- Posts: 165
- Joined: Tue Jan 21, 2014 9:03 am
Re: yambo-4.0.2 error
Dear Developers,
I think my error may be related to the parallel options,
since When I use yambo -g n -p p -V all there are some parameters about parallelization
"X_all_q_CPU= "" # [PARALLEL] CPUs for each role
X_all_q_ROLEs= "" # [PARALLEL] CPUs roles (q,k,c,v)
X_all_q_nCPU_invert=0 # [PARALLEL] CPUs for matrix inversion
SE_CPU= "" # [PARALLEL] CPUs for each role
SE_ROLEs= "" # [PARALLEL] CPUs roles (q,qp,b)"
but I do not know what they mean!
would you please tell me what do they mean and how should I use them?
I think my error may be related to the parallel options,
since When I use yambo -g n -p p -V all there are some parameters about parallelization
"X_all_q_CPU= "" # [PARALLEL] CPUs for each role
X_all_q_ROLEs= "" # [PARALLEL] CPUs roles (q,k,c,v)
X_all_q_nCPU_invert=0 # [PARALLEL] CPUs for matrix inversion
SE_CPU= "" # [PARALLEL] CPUs for each role
SE_ROLEs= "" # [PARALLEL] CPUs roles (q,qp,b)"
but I do not know what they mean!
would you please tell me what do they mean and how should I use them?
S. Ataei, PhD student at University of Tehran, Iran.
- Daniele Varsano
- Posts: 4198
- Joined: Tue Mar 17, 2009 2:23 pm
- Contact:
Re: yambo-4.0.2 error
Dear Samaneh,
yes indeed, you need to choose your parallelization strategy. You can activate that variable by using -V par, without having to activate all the optional variables.
They do determine the parallelization strategy, as an example with 32 cpus:
"X_all_q_CPU= "2 4 4 1" # [PARALLEL] CPUs for each role
X_all_q_ROLEs= "q k c v" # [PARALLEL] CPUs roles (q,k,c,v)
X_all_q_nCPU_invert=0 # [PARALLEL] CPUs for matrix inversion
SE_CPU= "1 16 2" # [PARALLEL] CPUs for each role
SE_ROLEs= "q qp b" # [PARALLEL] CPUs roles (q,qp,b)"
Here you define a parallelization where in the screening (X), where the tasks are divided by processors: (the eps-1_q are done 2 at the same time, the summation in k vectors is divided among 4 processor and the same for the conduction bands in the sum over states.
For the self energies (SE), 16 calculations of qp will be done at the same time, each calculation will use 2 cpus to parallelize the sum over bands. And so on.
The product of the CPU for each role have to be the same of the cpus used. Next you can also use an hybrid mpi/open-mp parallelization.
You can have a look to the tutorial aimed to deal with the parallelization strategy:
http://www.yambo-code.org/tutorials/Parallel/
Best,
Daniele
Best,
Daniele
yes indeed, you need to choose your parallelization strategy. You can activate that variable by using -V par, without having to activate all the optional variables.
They do determine the parallelization strategy, as an example with 32 cpus:
"X_all_q_CPU= "2 4 4 1" # [PARALLEL] CPUs for each role
X_all_q_ROLEs= "q k c v" # [PARALLEL] CPUs roles (q,k,c,v)
X_all_q_nCPU_invert=0 # [PARALLEL] CPUs for matrix inversion
SE_CPU= "1 16 2" # [PARALLEL] CPUs for each role
SE_ROLEs= "q qp b" # [PARALLEL] CPUs roles (q,qp,b)"
Here you define a parallelization where in the screening (X), where the tasks are divided by processors: (the eps-1_q are done 2 at the same time, the summation in k vectors is divided among 4 processor and the same for the conduction bands in the sum over states.
For the self energies (SE), 16 calculations of qp will be done at the same time, each calculation will use 2 cpus to parallelize the sum over bands. And so on.
The product of the CPU for each role have to be the same of the cpus used. Next you can also use an hybrid mpi/open-mp parallelization.
You can have a look to the tutorial aimed to deal with the parallelization strategy:
http://www.yambo-code.org/tutorials/Parallel/
Best,
Daniele
Best,
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/
-
- Posts: 165
- Joined: Tue Jan 21, 2014 9:03 am
Re: yambo-4.0.2 error
Dear Daniele,
Thank you alot.
how about the parameter
"NLogCPUs=0"
how should I change it according to the other parallel parameters?
Thank you alot.
how about the parameter
"NLogCPUs=0"
how should I change it according to the other parallel parameters?
S. Ataei, PhD student at University of Tehran, Iran.
- Daniele Varsano
- Posts: 4198
- Joined: Tue Mar 17, 2009 2:23 pm
- Contact:
Re: yambo-4.0.2 error
Just keep it equal to 0, all the cpu's will print their log file in the LOG directory. It is useful in case of crashing to understand with of the cpu's is failing.
Daniele
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/