From 465a733f7c0ba299a67effd2530dc6d57becb989 Mon Sep 17 00:00:00 2001 From: Ronald Cohen Date: Wed, 26 Jun 2019 22:19:26 +0200 Subject: [PATCH 1/5] modifications for supermuc and bohr in qe --- nexus/lib/machines.py | 15 ++++++++++----- nexus/lib/pwscf_input.py | 10 +++++----- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/nexus/lib/machines.py b/nexus/lib/machines.py index 96e426d8da..4917a81f65 100644 --- a/nexus/lib/machines.py +++ b/nexus/lib/machines.py @@ -333,7 +333,7 @@ def __init__(self,**kwargs): self.batch_mode = machine.in_batch_mode() if self.bundled_jobs is not None and not machine.batch_capable: - self.error('running batched/bundled jobs on {0} is either not possible or not yet implemented, sorry.'.format(machine.name)) + self.error('running batched/bundled jobs on {0} is either not possible or not yet implemented, sorry. {1},{2}'.format(machine.name,self.bundled_jobs, machine.batch_capable)) #end if self.normalize_time() @@ -2892,13 +2892,16 @@ def write_job_header(self,job): # machines at LRZ https://www.lrz.de/english/ class SuperMUC(Supercomputer): name = 'supermuc' + requires_account = False + batch_capable = True + query_with_username = False def write_job_header(self,job): if job.queue is None: job.queue = 'general' #end if if job.type is None: - job.type = 'parallel' + job.type = 'MPICH' else: job.type = job.type.lower() if job.type=='mpich': @@ -2916,7 +2919,7 @@ def write_job_header(self,job): c+='#@ job_type = {0}\n'.format(job.type) c+='#@ class = {0}\n'.format(job.queue) c+='#@ node = {0}\n'.format(job.nodes) - if job.nodes<400: + if job.nodes<512: icmin = 1 icmax = 1 else: @@ -2934,6 +2937,8 @@ def write_job_header(self,job): c+='#@ initialdir = {0}\n'.format(job.abs_dir) c+='#@ output = {0}\n'.format(job.outfile) c+='#@ error = {0}\n'.format(job.errfile) + c+='#@ energy_policy_tag = my_energy_tag\n' + c+='#@ minimize_time_to_solution = yes\n' if job.email is None: c+='#@ notification = never\n' else: @@ -2952,7 +2957,7 @@ def write_job_header(self,job): elif intel and omp: c+='module unload mpi.ibm\n' c+='module load mpi.intel\n' - #c+='export OMP_NUM_THREADS={0}\n'.format(job.threads) + c+='export OMP_NUM_THREADS={0}\n'.format(job.threads) #c+='module load mpi_pinning/hybrid_blocked\n' #end if return c @@ -3298,7 +3303,7 @@ def write_job_header(self,job): Skybridge( 1848, 2, 16, 64, 1000, 'srun', 'sbatch', 'squeue', 'scancel') Redsky( 2302, 2, 8, 12, 1000, 'srun', 'sbatch', 'squeue', 'scancel') Solo( 187, 2, 18, 128, 1000, 'srun', 'sbatch', 'squeue', 'scancel') -SuperMUC( 205, 4, 10, 256, 8,'mpiexec', 'llsubmit', 'llq','llcancel') +SuperMUC( 512, 1, 28, 256, 8,'mpiexec', 'llsubmit', 'llq','llcancel') Stampede2( 4200, 1, 68, 96, 50, 'ibrun', 'sbatch', 'squeue', 'scancel') Cades( 156, 2, 18, 128, 100, 'mpirun', 'qsub', 'qstat', 'qdel') Summit( 4608, 2, 21, 512, 100, 'jsrun', 'bsub', 'bjobs', 'bkill') diff --git a/nexus/lib/pwscf_input.py b/nexus/lib/pwscf_input.py index 15e1be725c..964c890fd2 100644 --- a/nexus/lib/pwscf_input.py +++ b/nexus/lib/pwscf_input.py @@ -204,6 +204,7 @@ class PwscfInputBase(DevBase): 'esm_efield','fcp_mu','london_c6','london_rvdw','xdm_a1','xdm_a2', # 6.3 additions 'block_1','block_2','block_height','zgate','ts_vdw_econv_thr', + 'starting_charge', ] strs=[ # pre 5.4 @@ -239,7 +240,6 @@ class PwscfInputBase(DevBase): 'hubbard_j0', 'hubbard_beta', 'hubbard_j', 'starting_ns_eigenvalue', 'angle1', 'angle2', 'fixed_magnetization', 'fe_step', 'efield_cart', 'london_c6', 'london_rvdw', - 'starting_charge', ] species_arrays = [ @@ -1518,7 +1518,7 @@ def incorporate_system(self,system,elem_order=None): ndn = p.down_electron.count self.system.ibrav = 0 - self.system['celldm(1)'] = 1.0e0 +# self.system['celldm(1)'] = 1.0e0 nions,nspecies = p.count_ions(species=True) self.system.nat = nions self.system.ntyp = nspecies @@ -1527,7 +1527,7 @@ def incorporate_system(self,system,elem_order=None): if not 'cell_parameters' in self: self.cell_parameters = self.element_types['cell_parameters']() #end if - self.cell_parameters.specifier = 'alat' + self.cell_parameters.specifier = 'bohr' self.cell_parameters.vectors = s.axes.copy() self.k_points.clear() @@ -1612,7 +1612,7 @@ def incorporate_system_old(self,system,spin_polarized=None): ndn = p.down_electron.count self.system.ibrav = 0 - self.system['celldm(1)'] = 1.0e0 +# self.system['celldm(1)'] = 1.0e0 nions,nspecies = p.count_ions(species=True) self.system.nat = nions self.system.ntyp = nspecies @@ -1627,7 +1627,7 @@ def incorporate_system_old(self,system,spin_polarized=None): if not 'cell_parameters' in self: self.cell_parameters = self.element_types['cell_parameters']() #end if - self.cell_parameters.specifier = 'alat' + self.cell_parameters.specifier = 'bohr' self.cell_parameters.vectors = s.axes.copy() self.k_points.clear() From 8ebf003d4a6da0693c29731b99f6261e9d67fdc3 Mon Sep 17 00:00:00 2001 From: Ronald Cohen Date: Thu, 27 Jun 2019 15:49:54 +0200 Subject: [PATCH 2/5] removing uneeded debug statement --- nexus/lib/machines.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nexus/lib/machines.py b/nexus/lib/machines.py index 4917a81f65..024aec3ac0 100644 --- a/nexus/lib/machines.py +++ b/nexus/lib/machines.py @@ -333,7 +333,7 @@ def __init__(self,**kwargs): self.batch_mode = machine.in_batch_mode() if self.bundled_jobs is not None and not machine.batch_capable: - self.error('running batched/bundled jobs on {0} is either not possible or not yet implemented, sorry. {1},{2}'.format(machine.name,self.bundled_jobs, machine.batch_capable)) + self.error('running batched/bundled jobs on {0} is either not possible or not yet implemented, sorry.'.format(machine.name) #end if self.normalize_time() From 514a891fbf4e8cb727a4ca0921d8e79d521b7565 Mon Sep 17 00:00:00 2001 From: Ronald Cohen Date: Thu, 27 Jun 2019 16:01:04 +0200 Subject: [PATCH 3/5] fixed modifications for supermuc and bohr in qe --- nexus/lib/machines.py | 2 +- nexus/lib/pwscf_input.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/nexus/lib/machines.py b/nexus/lib/machines.py index 024aec3ac0..109e7f3ff0 100644 --- a/nexus/lib/machines.py +++ b/nexus/lib/machines.py @@ -333,7 +333,7 @@ def __init__(self,**kwargs): self.batch_mode = machine.in_batch_mode() if self.bundled_jobs is not None and not machine.batch_capable: - self.error('running batched/bundled jobs on {0} is either not possible or not yet implemented, sorry.'.format(machine.name) + self.error('running batched/bundled jobs on {0} is either not possible or not yet implemented, sorry.'.format(machine.name)) #end if self.normalize_time() diff --git a/nexus/lib/pwscf_input.py b/nexus/lib/pwscf_input.py index 964c890fd2..65113b18ef 100644 --- a/nexus/lib/pwscf_input.py +++ b/nexus/lib/pwscf_input.py @@ -240,7 +240,8 @@ class PwscfInputBase(DevBase): 'hubbard_j0', 'hubbard_beta', 'hubbard_j', 'starting_ns_eigenvalue', 'angle1', 'angle2', 'fixed_magnetization', 'fe_step', 'efield_cart', 'london_c6', 'london_rvdw', - ] + starting_charge, + ] species_arrays = [ 'starting_magnetization', 'hubbard_alpha', 'hubbard_u', 'hubbard_j0', From d3d8195ad05c89a59668793a532cdbedc2d759b1 Mon Sep 17 00:00:00 2001 From: Ronald Cohen Date: Thu, 27 Jun 2019 20:00:40 +0200 Subject: [PATCH 4/5] fixed modifications for supermuc and bohr in qe --- nexus/lib/pwscf_input.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nexus/lib/pwscf_input.py b/nexus/lib/pwscf_input.py index 65113b18ef..06c911c39e 100644 --- a/nexus/lib/pwscf_input.py +++ b/nexus/lib/pwscf_input.py @@ -240,7 +240,7 @@ class PwscfInputBase(DevBase): 'hubbard_j0', 'hubbard_beta', 'hubbard_j', 'starting_ns_eigenvalue', 'angle1', 'angle2', 'fixed_magnetization', 'fe_step', 'efield_cart', 'london_c6', 'london_rvdw', - starting_charge, + 'starting_charge' , ] species_arrays = [ From 66f76a7cb7efb7f4749523753f9669473e0ab31b Mon Sep 17 00:00:00 2001 From: Ronald Cohen Date: Thu, 27 Jun 2019 20:37:53 +0200 Subject: [PATCH 5/5] fixed modifications for supermuc and bohr in qe --- nexus/lib/pwscf_input.py | 1 - 1 file changed, 1 deletion(-) diff --git a/nexus/lib/pwscf_input.py b/nexus/lib/pwscf_input.py index 06c911c39e..63873c095c 100644 --- a/nexus/lib/pwscf_input.py +++ b/nexus/lib/pwscf_input.py @@ -204,7 +204,6 @@ class PwscfInputBase(DevBase): 'esm_efield','fcp_mu','london_c6','london_rvdw','xdm_a1','xdm_a2', # 6.3 additions 'block_1','block_2','block_height','zgate','ts_vdw_econv_thr', - 'starting_charge', ] strs=[ # pre 5.4