Molcas Forum

Support and discussions for Molcas and OpenMolcas users and developers

You are not logged in.

Announcement

Welcome to the Molcas forum. You can choose an avatar and change the default style by going to "Profile" → "Personality" or "Display".

#1 2021-04-27 16:27:26

leo.c
Member
Registered: 2021-03-23
Posts: 5

Estimated memory requirements (CASPT2)

Hello everyone,

As I was trying to estimate the memory requirements for a future job (CASPT2), I failed to understand the relation between the given estimated memory requirements and the assigned value of MOLCAS_MEM (=112500 MB in the present case using only one thread on one process).

 Estimated memory requirements:
  POLY3 :              12590917656
  RHS:                     1324472
  SIGMA :                  2359744
  PRPCTL:                        0
 Available workspace:  12647109326

In which units are expressed these quantities ? I would have assumed bytes if nothing is specified but if so the value of the MOLCAS_MEM variable is about 10 times greater than the available workspace value given. I do not understand the difference here.

By the way I am using an openmp version with no GA of OpenMolcas 21.02.

Offline

#2 2021-04-27 16:51:19

Ignacio
Administrator
From: Uppsala
Registered: 2015-11-03
Posts: 1,201

Re: Estimated memory requirements (CASPT2)

I'd guess it's in 8-byte words (the space a single 64-bit integer/real takes)

Offline

#3 2021-04-27 17:37:25

leo.c
Member
Registered: 2021-03-23
Posts: 5

Re: Estimated memory requirements (CASPT2)

Indeed, order of magnitude checks out with 8-byte words. Thank you I should have checked that to begin with.

I have an additional question, perhaps a little off-topic. For such jobs, where multiple cores are usually not an option due to the high amount of memory needed, I wondered if there was a significant gain from using a serial build of OpenMolcas instead of the OpenMP build on 1 core. I have read something pointing in that direction in an old post, but I was curious to know if that was still relevant for the current version.

Offline

#4 2021-04-28 08:18:11

Ignacio
Administrator
From: Uppsala
Registered: 2015-11-03
Posts: 1,201

Re: Estimated memory requirements (CASPT2)

OpenMP parallelization (multiple threads) does not use more memory, at least not as far as MOLCAS_MEM is concerned, the memory is shared by all threads. It happens within a single process/node, and only (so far) in the linear algebra libraries (e.g. MKL). It should mostly be safe and faster than a single thread.

MPI/GA parallelization (multiple processes) runs a separate copy of the program on each process, which can be on different physical nodes. The MOLCAS_MEM value applies for each process, and each process uses its own separate memory.

Using a parallel (MPI) build of OpenMolcas with MOLCAS_NPROCS=1 should be equivalent to a serial build

Offline

#5 2021-04-28 15:25:34

leo.c
Member
Registered: 2021-03-23
Posts: 5

Re: Estimated memory requirements (CASPT2)

Thanks for clarifying these few points.

Offline

Board footer

Powered by FluxBB 1.5.11

Last refresh: Today 22:56:50