From 6736eb8a8855af1dd18d477f278a8a4ba3280f37 Mon Sep 17 00:00:00 2001 From: kulichenko-LANL Date: Thu, 18 Sep 2025 14:05:28 -0600 Subject: [PATCH] pyseqm interface fixes --- .../pyseqm_interface/single_node/forces.npy | Bin 0 -> 21344 bytes .../pyseqm_interface/single_node/input.in | 6 +- examples/pyseqm_interface/single_node/main.py | 14 +- .../single_node/neighborinfo.txt | 884 ++++++++++++++++++ examples/pyseqm_interface/single_node/vars | 15 + pyproject.toml | 26 +- src/sedacs/driver/graph_adaptive.py | 9 +- src/sedacs/driver/init.py | 2 +- src/sedacs/hamiltonian.py | 4 +- 9 files changed, 936 insertions(+), 24 deletions(-) create mode 100644 examples/pyseqm_interface/single_node/forces.npy create mode 100644 examples/pyseqm_interface/single_node/neighborinfo.txt create mode 100644 examples/pyseqm_interface/single_node/vars diff --git a/examples/pyseqm_interface/single_node/forces.npy b/examples/pyseqm_interface/single_node/forces.npy new file mode 100644 index 0000000000000000000000000000000000000000..4162bef85a3de9502e7f6f9806ce06ebc69bbc1f GIT binary patch literal 21344 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", "torch>=2", ] -requires-python = ">=3.10" +requires-python = ">=3.9" readme = "README.md" license = {text = "BSD-3-Clause"} classifiers = [ @@ -49,19 +49,19 @@ graph = [ "metis>=0.2a5" ] -[build-system] -requires = ["scikit-build-core","setuptools", "wheel"] -build-backend = "scikit_build_core.build" +#[build-system] +#requires = ["scikit-build-core","setuptools", "wheel"] +#build-backend = "scikit_build_core.build" -[tool.scikit-build] -minimum-version = "0.5" -cmake.source-dir = "src/sedacs/gpu/nvda/" -cmake.args = [ - "-DCMAKE_CXX_COMPILER=nvc++", - "-DCMAKE_CXX_FLAGS=-O3 -cuda -gpu=cc89 -acc=gpu -Minfo=accel -fPIC --diag_suppress=bad_macro_redef --diag_suppress=cuda_compile", - "-DCMAKE_VERBOSE_MAKEFILE=ON" -] -build-dir = "src/sedacs/gpu/nvda/build" +#[tool.scikit-build] +#minimum-version = "0.5" +#cmake.source-dir = "src/sedacs/gpu/nvda/" +#cmake.args = [ +# "-DCMAKE_CXX_COMPILER=nvc++", +# "-DCMAKE_CXX_FLAGS=-O3 -cuda -gpu=cc89 -acc=gpu -Minfo=accel -fPIC --diag_suppress=bad_macro_redef --diag_suppress=cuda_compile", +# "-DCMAKE_VERBOSE_MAKEFILE=ON" +#] +#build-dir = "src/sedacs/gpu/nvda/build" [tool.pdm] diff --git a/src/sedacs/driver/graph_adaptive.py b/src/sedacs/driver/graph_adaptive.py index 429ee315..a4457844 100644 --- a/src/sedacs/driver/graph_adaptive.py +++ b/src/sedacs/driver/graph_adaptive.py @@ -412,7 +412,9 @@ def get_singlePoint(sdc, if rank == 0: tic = time.perf_counter() - mu0 = get_mu(mu0, full_dVals, full_eVals, sdc.Tel, sy.numel/2) # oldR + #mu0 = get_mu(mu0, full_dVals, full_eVals, sdc.Tel, sy.numel/2) # oldR + mu0 = get_mu(mu0, full_eVals, sdc.Tel, sy.numel/2, dvals = full_dVals) + print("Time mu0 {:>9.4f} (s)".format(time.perf_counter() - tic)) return (EELEC, @@ -1555,7 +1557,7 @@ def get_adaptiveDM_PYSEQM(sdc, # Initial chemical potential guess. TODO: This should probably not be # hard-coded. - mu0 = -5.5 + mu0 = -4.7 if sdc.UHF: mu0 = np.array([mu0+0.1, mu0-0.1]) mu0 = np.array([-1.3, -5.5]) @@ -1682,6 +1684,7 @@ def get_adaptiveDM_PYSEQM(sdc, # are fewer GPUs per node than ranks per nodes. if node_rank < num_gpus: + print(mu0) # We want more ranks per node because dm update always # happens on CPU, on node 0, in parallel. (eElec, @@ -1707,6 +1710,8 @@ def get_adaptiveDM_PYSEQM(sdc, graph_for_pairs, graph_maskd) + print(mu0) + #if gsc > 2: exit(0) gpu_comm.Allreduce(eElec, global_Eelec, op=MPI.SUM) else: diff --git a/src/sedacs/driver/init.py b/src/sedacs/driver/init.py index 0bd4aba8..bb34210c 100644 --- a/src/sedacs/driver/init.py +++ b/src/sedacs/driver/init.py @@ -122,7 +122,7 @@ def init(args): # Get hindex (the orbital index for each atom in the system) sy.norbs, sy.orbs, hindex, sy.numel, sy.znuc = get_hindex(sdc.orbs, sy.symbols, sy.types) - if eng.interface == "PySEQM": sy.numel = int(sy.numel/2) + #if eng.interface == "PySEQM": sy.numel = int(sy.numel/2) sy.numel -= sdc.charge if sdc.UHF: sy.nocc_alpha = sy.numel/2. + (sdc.mult-1)/2. diff --git a/src/sedacs/hamiltonian.py b/src/sedacs/hamiltonian.py index 568db3b5..a25e889f 100644 --- a/src/sedacs/hamiltonian.py +++ b/src/sedacs/hamiltonian.py @@ -96,7 +96,7 @@ def get_hamiltonian(sdc, eng, coords, types, symbols, else: with torch.no_grad(): molSub = get_molecule_pyseqm(sdc, molecule_whole.coordinates[:,partsCoreHaloIndex], symbols, types, device=P_contr.device)[0] - M_sub, _, __, ___ = hcore(molSub, doTETCI=False) # off-diagonal h1elec + M_sub, _, __, ___, _, _ = hcore(molSub, doTETCI=False) # off-diagonal h1elec del _, __, ___ ham_timing['h1elNonDi'] = time.time() - tic #print("t: h1elNonDi {:>7.3f} |".format(time.time() - tic), end=" ") @@ -213,7 +213,7 @@ def get_hamiltonian(sdc, eng, coords, types, symbols, #print("idxi&idxj {:>7.3f} |".format(time.time() - tic), end=" ") tic = time.time() # compute 2c2e and diagonal h1elec - coulInts_test, e1b, e2a, _, _ = TETCI(molecule_whole.const, iii, jjj, + coulInts_test, e1b, e2a, _, _, _, _ = TETCI(molecule_whole.const, iii, jjj, molecule_whole.Z[iii], molecule_whole.Z[jjj], x_ij, r_ij, molecule_whole.Z,\ molecule_whole.parameters['zeta_s'], molecule_whole.parameters['zeta_p'], molecule_whole.parameters['zeta_d'],\ molecule_whole.parameters['s_orb_exp_tail'], molecule_whole.parameters['p_orb_exp_tail'], molecule_whole.parameters['d_orb_exp_tail'],\