How many cores can CP2K utilize in parallel computing.

774 views
Skip to first unread message

huan...@mail.huji.ac.il

unread,
Oct 3, 2013, 8:30:09 AM10/3/13
to cp...@googlegroups.com
Dear All,

I would like to know is there an up-limit number of cores for CP2K parallel computing. My supervisor want to purchase some new computers for running CP2K/QuickStep. So we need to make sure that is it possible to run parallel computing with, such as, 40 or more cores?

Another question is that Is it possible for sharing the CPU in different nodes for parallel computing? For example, if it is possible to use 2 nodes (each node has 40 processors) for one MD simulation? If it available, how to do it? Do I need to write some special codes in submitting script?   The version of CP2K I used is 2.3.

I appreciated it very much if someone could answer my questions. Thanks in advance.

Best regards,
Huan

Iain Bethune

unread,
Oct 3, 2013, 8:45:05 AM10/3/13
to cp...@googlegroups.com
Dear Huan,

Like other parallel programs which make use of MPI, CP2K does not know or care exactly where each MPI process is running. Allocation and placement of MPI processes onto physical nodes is up to the MPI library you have installed on your cluster. We regularly run CP2K on several thousands of CPU cores on large-scale HPC machines, so depending on the size of system you wish to study you will find CP2K to be very scalable. Without knowing more, I would suggest that you benchmark CP2K with your existing system to better understand the performance and scalability.

How to run a parallel job across multiple compute nodes across depends exactly on which MPI library (e.g. OpenMPI, MPICH2, Intel MPI...) you use and if you use any batch job submission system (e.g. SLURM, PBS, Sun Grid Engine...). Typically, one needs to have the mpi deamon running on each node and all the nodes added to a node-list file or similar, then the 'mpirun' command will launch MPI ranks across your two nodes. Best thing is to speak to your local systems administrators who may be able to help more specifically.

Also, you might consider upgrading to a more recent release of CP2K as 2.3 is over a year old and there have been many improvements, new features and performance improvements since.

Cheers

- Iain

--

Iain Bethune
Project Manager, EPCC

Email: ibet...@epcc.ed.ac.uk
Twitter: @IainBethune
Web: http://www2.epcc.ed.ac.uk/~ibethune
Tel/Fax: +44 (0)131 650 5201/6555
Mob: +44 (0)7598317015
Addr: 2404 JCMB, The King's Buildings, Mayfield Road, Edinburgh, EH9 3JZ
> --
> You received this message because you are subscribed to the Google Groups "cp2k" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to cp2k+uns...@googlegroups.com.
> To post to this group, send email to cp...@googlegroups.com.
> Visit this group at http://groups.google.com/group/cp2k.
> For more options, visit https://groups.google.com/groups/opt_out.


--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

Jörg Saßmannshausen

unread,
Oct 3, 2013, 8:45:07 AM10/3/13
to cp...@googlegroups.com
Hi Huan,

> I would like to know is there an up-limit number of cores for CP2K parallel
> computing. My supervisor want to purchase some new computers for running
> CP2K/QuickStep. So we need to make sure that is it possible to run parallel
> computing with, such as, 40 or more cores?

Yes we can! (Obama).
Yes, you can run cp2k on more than 40 cores. Some of the guys here are using a
few hundreds of cores on the national cluster.

> Another question is that Is it possible for sharing the CPU in different
> nodes for parallel computing? For example, if it is possible to use 2 nodes
> (each node has 40 processors) for one MD simulation? If it available, how
> to do it? Do I need to write some special codes in submitting script? The
> version of CP2K I used is 2.3.

Again, you can. That is where the MPI kicks in.
I have done runs between 36 nodes. However, if you are a using a large number
of nodes (these are the physical boxes) you will need a fast network
connection between the nodes here. That is the reason why people are using
networks like InfiniBand.

> I appreciated it very much if someone could answer my questions. Thanks in
> advance.

You are welcome.

All the best from a grey London!

Jörg

> Best regards,
> Huan

--
*************************************************************
Jörg Saßmannshausen
University College London
Department of Chemistry
Gordon Street
London
WC1H 0AJ

email: j.sassma...@ucl.ac.uk
web: http://sassy.formativ.net

Please avoid sending me Word or PowerPoint attachments.
See http://www.gnu.org/philosophy/no-word-attachments.html

huan...@mail.huji.ac.il

unread,
Oct 3, 2013, 8:56:50 AM10/3/13
to cp...@googlegroups.com
Dear Iain,

Thank you very much for your rapid response and detailed explanation as well as suggestion.

Cheers,
Huan

huan...@mail.huji.ac.il

unread,
Oct 3, 2013, 8:59:30 AM10/3/13
to cp...@googlegroups.com, Jörg Saßmannshausen
Dear Jörg,
Thank you very much.  :)
All the best,
Huan


Huan Wang

unread,
Oct 6, 2013, 9:21:20 AM10/6/13
to cp...@googlegroups.com
Dear Iain,

Do you know what is the recommended memory per core for NAMD & CP2K? 
Is that possible/often happened when the speed of computations slowed down due to the memory was insufficient? 

Best wishes,
Huan






--
You received this message because you are subscribed to a topic in the Google Groups "cp2k" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/cp2k/WbfiDAZTdgg/unsubscribe.
To unsubscribe from this group and all its topics, send an email to cp2k+uns...@googlegroups.com.

Iain Bethune

unread,
Oct 7, 2013, 3:45:57 AM10/7/13
to cp...@googlegroups.com
Hi Huan,

I can't comment on NAMD (except to give the same general responses as for CP2K). The amount of memory needed per core depends on the size of the system and also the number of cores, since in CP2K the large data structures are distributed. What happens when you fill your memory depends on the system - on many HPC systems, CP2K will stop since attempts to allocate more memory will fail, but on a cluster system there may be virtual memory so performance will reduce.

There is no substitute for benchmarking with your own system to understand the performance and memory requirements properly.

Huan Wang

unread,
Oct 7, 2013, 4:19:44 AM10/7/13
to cp...@googlegroups.com
Dear Iain,
Thanks for your reply. 
So, the memory requirement depends on the system to be studied. Is that means if I purchased larger memory, such as 64 GB than 32 GB, calculation performance will faster and more stable with the same number of cores?

Huan

Iain Bethune

unread,
Oct 7, 2013, 4:23:22 AM10/7/13
to cp...@googlegroups.com
Not necessarily. You should only buy more memory if you need it. Run the application and inspect how much memory it is using using e.g. the 'top' utility on Linux.

The discussion is going somewhat off-topic to CP2K, so if you have further questions please reply off-list.

Huan Wang

unread,
Oct 7, 2013, 4:26:14 AM10/7/13
to cp...@googlegroups.com
Thanks a lot.
It's my fault for off-topic question. Sorry about that.
Huan
Reply all
Reply to author
Forward
0 new messages