Author Topic: Check parallel performance  (Read 8642 times)

0 Members and 1 Guest are viewing this topic.

Offline Derek Stewart

  • Regular QuantumATK user
  • **
  • Posts: 9
  • Reputation: 0
    • View Profile
Check parallel performance
« on: February 10, 2009, 20:11 »
Hi everyone,

I would like to check the parallel performance of ATK on my cluster.  I was wondering which specific bulk and molecule systems were used to generate the Benchmark in the "Parallel calculations using ATK".  Are they included with the examples?

Also, the tutorial mentions that you always need to type the full path for ATK to run it in parallel.  There is a way to get around this problem of typing the entire path for ATK for parallel jobs.  In bash, you can add a PATH statement to your .bashrc file and this will load in the proper PATH on the other nodes in your cluster.

Best regards,

Derek

Offline Nordland

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 812
  • Reputation: 18
    • View Profile
Re: Check parallel performance
« Reply #1 on: February 10, 2009, 22:13 »
I guess for the twoprobe you can find the system by building the MTJ in VNL and use that as a reference value, however I know one thing,
the graph in the manual about the speed-up is properly outdated since ATK has been improved a lot in the serial mode, so it can often change
how the scaling looks like.
I am looking forward to see your results if you want to share them with us....

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5576
  • Country: dk
  • Reputation: 96
    • View Profile
    • QuantumATK at Synopsys
Re: Check parallel performance
« Reply #2 on: February 10, 2009, 23:49 »
Hi Derek,

that graph is indeed obsolete, sorry about that.

From a principal perspective, I would run the scaling tests on the systems that are of interest to you! Even if ATK scales fantastically for carbon nanotubes, it doesn't really matter, if you are going to study metallic interfaces... :)

Generally speaking, ATK scales better in parallel for two-probes with many k-points in the transverse plane, or medium-sized bulk systems with many k-points. The scaling is also better for "long" systems compared to compact ones, since the long system can be partitioned in diagonal blocks more efficiently.

And yet, to be a bit more constructive than that...! I was able to dig up the original system used in the scaling test reported in the aforementioned figure. The systems are attached in a zip file as VNL files. If you give a day or two, I'll convert them to full, ready-to-run scripts with good parameters for convergence.

The systems are (I may skip some later, but here they all are, for now):
  • A molecular cluster with 30 water atoms
  • A C60 buckyball
  • A bulk cluster with 63 Si atoms and one B doping atom
  • A small bulk perovskite
  • A (12,0) CNT (bulk)
  • A (5,5) CNT (bulk)
  • Li-DTB-Li two-probe
  • A two-probe with a (5,5) nanotube with an N-O adsorbant

In addition, please find attached also a recent scaling test performed in Japan, on the Tsubame supercluster. For this quite typical two-probe system, quite nice scaling is observed even up to 32 cores for the SCF part, and all the way up to 128 cores for "analysis" (transmission spectrum). Note how going from 64 nodes to 128 cuts the "physical properties" calculation almost straight in half, and it's 100 times faster than for 1 node. It's nice if you can get the results in 4-5 hours instead of 4-5 days!!!

Thanks for the bash path hint! There are of course many such little tricks that can make life a lot easier. Just remember to update the path statement when you install a new version of ATK!

Offline Derek Stewart

  • Regular QuantumATK user
  • **
  • Posts: 9
  • Reputation: 0
    • View Profile
Re: Check parallel performance
« Reply #3 on: February 11, 2009, 05:18 »
Hi Anders,

Thanks for the zip file and the info on the parallel scaling.  They should give me a good place to start.

Best regards,

Derek
 

Offline carbn9

  • Regular QuantumATK user
  • **
  • Posts: 24
  • Reputation: 0
    • View Profile
Re: Check parallel performance
« Reply #4 on: February 21, 2009, 08:13 »
Hi friends, I tried the (5,5) CNT simulation sent by Anders Blom. I see that the simulation file, there are 64 C atoms in the scattering region with 16 C atoms in the electrode. Unit cell of a (5,5) CNT has 20 atoms as VNL shows. How did you construct this simulation file? With 4 unit cells? Moreover, how can we construct a two-probe system from another CNT i.e. how can we specify the electrode atoms and electrode unit cell? Thanks...

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5576
  • Country: dk
  • Reputation: 96
    • View Profile
    • QuantumATK at Synopsys
Re: Check parallel performance
« Reply #5 on: February 21, 2009, 18:15 »
My apologies, it's a typo. It's really a (4,4) electrode, with 16 atoms in the period.

To create these kinds of systems, you can quite easily build them in VNL. First use the Nanotube Builder, then bring the tube into the the Atomic Manipulator, cleave it, and keep adding "surface layers" until you have a correctly repeated system. You have to adjust the "central region width" carefully to match the corresponding bond length between the terminating layers.

A simpler method is to use the script provided in this post on the Forum! :)