from ATK.MPI import *
if processIsMaster():
print '# Master node'
else:
print '# Slave node'
+------------------------------------------------------------------------------+
| |
| Atomistix ToolKit 10.8.0 |
| |
+------------------------------------------------------------------------------+
Traceback (most recent call last):
File "test.py", line 1, in <module>
from ATK.MPI import *
ImportError: No module named ATK.MPI
+------------------------------------------------------------------------------+
| |
| Atomistix ToolKit 10.8.0 |
| |
+------------------------------------------------------------------------------+
Traceback (most recent call last):
File "test.py", line 1, in <module>
from ATK.MPI import *
ImportError: No module named ATK.MPI
[root@node1 ~]# mpiexec -n 2 atkpython test_mpi.py
[root@node1 ~]# MKL_NUM_THREADS=2 MKL_DYNAMIC=FALSE atkpython test_mpi.py
mpiexec -n 2 -env MKL_NUM_THREADS 2 -env MKL_DYNAMIC FALSE atkpython test_mpi.py
lmxendutil -licstat | grep -i -A5 dftmaster | grep used | cut -f1 -d" "
declare -i available_lic
declare -i used_lic
declare -i max_lic
available_lic=0
max_lic=`lmxendutil -licstat | grep -i -A5 dftmaster | grep used | cut -f3 -d" "`
# Stick in loop until license is available
while [ "$available_lic" -eq 0 ]; do
used_lic=`lmxendutil -licstat | grep -i -A5 dftmaster | grep used | cut -f1 -d" "`
available_lic=max_lic-used_lic
done
# Now we there know there's a license available
... if Intel MKL is called in a parallel region, it will use only one thread by default. If you want the library to use nested parallelism, and the thread within a parallel region is compiled with the same OpenMP compiler as Intel MKL is using, you may experiment with setting MKL_DYNAMIC to FALSE and manually increasing the number of threads.
###############################################################
# Bulk configuration
###############################################################
# Set up lattice
vector_a = [16.7841067732, 0.0, 0.0]*Angstrom
vector_b = [0.0, 16.7841067732, 0.0]*Angstrom
vector_c = [0.0, 0.0, 2.46100171044]*Angstrom
lattice = UnitCell(vector_a, vector_b, vector_c)
# Define elements
elements = [Carbon, Carbon, Carbon, Carbon, Carbon, Carbon, Carbon, Carbon,
Carbon, Carbon, Carbon, Carbon, Carbon, Carbon, Carbon, Carbon,
Carbon, Carbon, Carbon, Carbon]
# Define coordinates
cartesian_coordinates = [[ 11.78410677, 8.39205339, 0. ],
[ 11.49084835, 9.77172579, 0. ],
[ 11.13628222, 10.38585234, 1.23050086],
[ 10.08808008, 11.32965779, 1.23050086],
[ 9.44025553, 11.61808786, 0. ],
[ 8.03748726, 11.76552475, 0. ],
[ 7.34385124, 11.61808786, 1.23050086],
[ 6.12232665, 10.91284031, 1.23050086],
[ 5.64782455, 10.38585234, 0. ],
[ 5.0741245 , 9.09730094, 0. ],
[ 5. , 8.39205339, 1.23050086],
[ 5.29325842, 7.01238098, 1.23050086],
[ 5.64782455, 6.39825443, 0. ],
[ 6.69602669, 5.45444898, 0. ],
[ 7.34385124, 5.16601891, 1.23050086],
[ 8.74661951, 5.01858202, 1.23050086],
[ 9.44025553, 5.16601891, 0. ],
[ 10.66178013, 5.87126646, 0. ],
[ 11.13628222, 6.39825443, 1.23050086],
[ 11.70998227, 7.68680583, 1.23050086]]*Angstrom
# Set up configuration
bulk_configuration = BulkConfiguration(
bravais_lattice=lattice,
elements=elements,
cartesian_coordinates=cartesian_coordinates
)
###############################################################
# Calculator
###############################################################
numerical_accuracy_parameters = NumericalAccuracyParameters(
electron_temperature=3000.0*Kelvin,
k_point_sampling=(3, 3, 3),
)
calculator = LCAOCalculator(
numerical_accuracy_parameters=numerical_accuracy_parameters,
)
bulk_configuration.setCalculator(calculator)
nlprint(bulk_configuration)
bulk_configuration.update()
nlsave('CNT_5_5.nc', bulk_configuration)
+------------------------------------------------------------------------------+
| |
| Left Electrode Calculation [Started Thu Aug 12 19:30:20 2010] |
| |
+------------------------------------------------------------------------------+
|--------------------------------------------------|
Calculating Eigenvalues : *** glibc detected *** /opt/QuantumWise/atk-10.8.0/atkpython/bin/atkpython_exec: double free or corruption (!prev): 0x000000002490acf0 ***
*** glibc detected *** /opt/QuantumWise/atk-10.8.0/atkpython/bin/atkpython_exec: double free or corruption (!prev): 0x000000000ad3dd60 ***
*** glibc detected *** /opt/QuantumWise/atk-10.8.0/atkpython/bin/atkpython_exec: double free or corruption (!prev): 0x0000000022b7ccf0 ***
*** glibc detected *** /opt/QuantumWise/atk-10.8.0/atkpython/bin/atkpython_exec: double free or corruption (!prev): 0x000000000b937f90 ***
/opt/QuantumWise/atk-10.8.0/atkpython/bin/atkpython: line 3: 22617 Aborted PSEUDOPOTENTIALS_PATH=$EXEC_DIR/../share/pseudopotentials GPAW_SETUP_PATH=$EXEC_DIR/../share/gpaw-setups/ PYTHONHOME=$EXEC_DIR/.. PYTHONPATH= LD_LIBRARY_PATH=$EXEC_DIR/../lib $EXEC_DIR/atkpython_exec $*
*** glibc detected *** /opt/QuantumWise/atk-10.8.0/atkpython/bin/atkpython_exec: double free or corruption (!prev): 0x000000001e8a1220 ***
*** glibc detected *** /opt/QuantumWise/atk-10.8.0/atkpython/bin/atkpython_exec: free(): invalid next size (normal): 0x000000000f3d3d60 ***
rank 20 in job 1 arm07_37313 caused collective abort of all ranks
exit status of rank 20: killed by signal 9
rank 7 in job 1 arm07_37313 caused collective abort of all ranks
exit status of rank 7: killed by signal 9
rank 1 in job 1 arm07_37313 caused collective abort of all ranks
exit status of rank 1: killed by signal 9
Timing: Total Per Step %
--------------------------------------------------------------------------------
Density Matrix (EQ) : 2690.05 s 26.90 s 39.97% |===================|
Mixing : 1344.78 s 8.10 s 19.98% |=========|
Setting Density Matrix : 1093.89 s 364.63 s 16.25% |=======|
Diagonalization : 545.68 s 8.27 s 8.11% |===|
Valence Density : 303.11 s 1.79 s 4.50% |=|
Real Space Integral : 134.46 s 1.33 s 2.00% ||
Difference Density : 114.08 s 1.68 s 1.69% ||
Core Density : 71.58 s 1.05 s 1.06% ||
Real space integral : 64.87 s 0.95 s 0.96% |
Hartree Potential : 32.50 s 0.19 s 0.48% |
Exchange-Correlation : 28.97 s 0.17 s 0.43% |
Self-Energies : 28.38 s 0.28 s 0.42% |
Real Space Basis : 14.83 s 4.94 s 0.22% |
Basis Set Generation : 6.60 s 2.20 s 0.10% |
Neutral Atom Potential : 3.10 s 1.55 s 0.05% |
Hubbard Term : 0.00 s 0.00 s 0.00% |
Density Matrix (NEQ) : 0.00 s 0.00 s 0.00% |
--------------------------------------------------------------------------------
Total : 6730.90 s (1h52m10.90s)
Timing: Total Per Step %
--------------------------------------------------------------------------------
Density Matrix (EQ) : 22207.88 s 222.08 s 100.37% |=================================================|
Diagonalization : 2448.43 s 37.10 s 11.07% |=====|
Setting Density Matrix : 2035.19 s 678.40 s 9.20% |====|
Mixing : 1342.02 s 8.08 s 6.07% |==|
Valence Density : 771.22 s 4.56 s 3.49% |=|
Real Space Integral : 418.80 s 4.15 s 1.89% ||
Real space integral : 252.46 s 3.71 s 1.14% ||
Self-Energies : 216.34 s 2.16 s 0.98% |
Difference Density : 128.48 s 1.89 s 0.58% |
Core Density : 71.83 s 1.06 s 0.32% |
Exchange-Correlation : 29.27 s 0.17 s 0.13% |
Hartree Potential : 28.84 s 0.17 s 0.13% |
Real Space Basis : 15.00 s 5.00 s 0.07% |
Basis Set Generation : 6.62 s 2.21 s 0.03% |
Neutral Atom Potential : 3.46 s 1.73 s 0.02% |
Hubbard Term : 0.00 s 0.00 s 0.00% |
Density Matrix (NEQ) : 0.00 s 0.00 s 0.00% |
--------------------------------------------------------------------------------
Total : 22125.98 s (6h08m45.98s)