mirror of https://github.com/QMCPACK/qmcpack.git
Merge remote-tracking branch 'origin/develop' into pr/origin-4210
This commit is contained in:
commit
1247b36d8d
|
@ -2,6 +2,7 @@ on:
|
|||
pull_request_target:
|
||||
types: [edited, auto_merge_enabled]
|
||||
branches:
|
||||
- github_actions_automatic_rebase
|
||||
- develop
|
||||
- main
|
||||
push:
|
||||
|
@ -30,6 +31,8 @@ jobs:
|
|||
run: tests/test_automation/github-actions/ci/run_step.sh rebase
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
QMCPACK_BOT_GPG_KEY: ${{ QMCPACK_BOT_GPG_KEY }}
|
||||
QMCPACK_BOT_GPG_SIGNING_KEY: ${{ secrets.QMCPACK_BOT_GPG_SIGNING_KEY }}
|
||||
|
||||
trigger-rebase:
|
||||
if: github.event_name == 'push'
|
||||
|
@ -44,4 +47,6 @@ jobs:
|
|||
- name: Push Update To Opt'd in PR's
|
||||
run: tests/test_automation/github-actions/ci/run_step.sh pull-rebase
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
QMCPACK_BOT_GPG_KEY: ${{ QMCPACK_BOT_GPG_KEY }}
|
||||
QMCPACK_BOT_GPG_SIGNING_KEY: ${{ secrets.QMCPACK_BOT_GPG_SIGNING_KEY }}
|
|
@ -119,10 +119,10 @@ jobs:
|
|||
GCC8-NoMPI-Legacy-CUDA-Complex-Mixed,
|
||||
GCC8-NoMPI-Legacy-CUDA-Real, # full precision
|
||||
GCC8-NoMPI-Legacy-CUDA-Complex,
|
||||
Clang14-MPI-CUDA-AFQMC-Offload-Real-Mixed, # auxiliary field, offload requires llvm14
|
||||
Clang14-MPI-CUDA-AFQMC-Offload-Real,
|
||||
Clang14-MPI-CUDA-AFQMC-Offload-Complex-Mixed,
|
||||
Clang14-MPI-CUDA-AFQMC-Offload-Complex,
|
||||
Clang15-MPI-CUDA-AFQMC-Offload-Real-Mixed, # auxiliary field, offload
|
||||
Clang15-MPI-CUDA-AFQMC-Offload-Real,
|
||||
Clang15-MPI-CUDA-AFQMC-Offload-Complex-Mixed,
|
||||
Clang15-MPI-CUDA-AFQMC-Offload-Complex,
|
||||
Intel19-MPI-CUDA-AFQMC-Real-Mixed, # auxiliary field, requires MPI
|
||||
Intel19-MPI-CUDA-AFQMC-Complex-Mixed,
|
||||
Intel19-MPI-CUDA-AFQMC-Real,
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
#!/bin/bash
|
||||
|
||||
echo "----------------------- WARNING ------------------------------------"
|
||||
echo "This is **not** production ready and intended for development only!!"
|
||||
echo "Use config/build_olcf_summit.sh for production on Summit."
|
||||
echo "----------------------- WARNING ------------------------------------"
|
||||
# This recipe is intended for OLCF Summit https://www.olcf.ornl.gov/summit/
|
||||
# It builds all the varaints of QMCPACK in the current directory
|
||||
# last revision: Aug 29th 2022
|
||||
#
|
||||
# How to invoke this script?
|
||||
# build_olcf_summit_Clang.sh # build all the variants assuming the current directory is the source directory.
|
||||
# build_olcf_summit_Clang.sh <source_dir> # build all the variants with a given source directory <source_dir>
|
||||
|
||||
echo "Purging current module set"
|
||||
module purge
|
||||
|
@ -25,7 +27,7 @@ if [[ ! -d /gpfs/alpine/mat151/world-shared/opt/modules ]] ; then
|
|||
exit 1
|
||||
fi
|
||||
module use /gpfs/alpine/mat151/world-shared/opt/modules
|
||||
module load llvm/main-20220317-cuda11.0
|
||||
module load llvm/release-15.0.0-cuda11.0
|
||||
|
||||
TYPE=Release
|
||||
Compiler=Clang
|
||||
|
@ -58,11 +60,11 @@ if [[ $name == *"_MP"* ]]; then
|
|||
fi
|
||||
|
||||
if [[ $name == *"offload"* ]]; then
|
||||
CMAKE_FLAGS="$CMAKE_FLAGS -DENABLE_OFFLOAD=ON -DUSE_OBJECT_TARGET=ON -DOFFLOAD_ARCH=sm_70"
|
||||
CMAKE_FLAGS="$CMAKE_FLAGS -DENABLE_OFFLOAD=ON -DOFFLOAD_ARCH=sm_70"
|
||||
fi
|
||||
|
||||
if [[ $name == *"cuda"* ]]; then
|
||||
CMAKE_FLAGS="$CMAKE_FLAGS -DENABLE_CUDA=ON -DCMAKE_CUDA_ARCHITECTURES=70 -DCMAKE_CUDA_HOST_COMPILER=`which g++`"
|
||||
CMAKE_FLAGS="$CMAKE_FLAGS -DENABLE_CUDA=ON -DCMAKE_CUDA_ARCHITECTURES=70"
|
||||
fi
|
||||
|
||||
folder=build_summit_${Compiler}_${name}
|
||||
|
|
|
@ -415,11 +415,11 @@ and is not suitable for production. Additional implementation in QMCPACK as
|
|||
well as improvements in open-source and vendor compilers is required for production status
|
||||
to be reached. The following compilers have been verified:
|
||||
|
||||
- LLVM Clang 14. Support NVIDIA GPUs.
|
||||
- LLVM Clang 15. Support NVIDIA GPUs.
|
||||
|
||||
::
|
||||
|
||||
-D ENABLE_OFFLOAD=ON -D USE_OBJECT_TARGET=ON
|
||||
-D ENABLE_OFFLOAD=ON
|
||||
|
||||
Clang and its downstream compilers support two extra options
|
||||
|
||||
|
@ -452,7 +452,7 @@ For example, using Clang 14 on Summit.
|
|||
|
||||
::
|
||||
|
||||
-D ENABLE_OFFLOAD=ON -D USE_OBJECT_TARGET=ON -D ENABLE_CUDA=ON -D CMAKE_CUDA_ARCHITECTURES=70
|
||||
-D ENABLE_OFFLOAD=ON -D ENABLE_CUDA=ON -D CMAKE_CUDA_ARCHITECTURES=70
|
||||
|
||||
Similarly, HIP features can be enabled in conjunction with the offload code path to improve performance on AMD GPUs.
|
||||
|
||||
|
|
|
@ -545,14 +545,14 @@ The cost function consists of three components: energy, unreweighted variance, a
|
|||
<cost name="unreweightedvariance"> 0.00 </cost>
|
||||
<cost name="reweightedvariance"> 0.05 </cost>
|
||||
|
||||
Varational parameter selection
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
The predominant way of selecting varational paramemters is via ``<wavefunction>`` input.
|
||||
Variational parameter selection
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
The predominant way of selecting variational parameters is via ``<wavefunction>`` input.
|
||||
``<coefficients>`` entries support ``optimize="yes"/"no"`` to enable/disable variational parameters in the wavefunction optimization.
|
||||
The secondary way of selecting varational paramemters is via ``variational_subset`` parameter in the ``<qmc>`` driver input.
|
||||
The secondary way of selecting variational parameters is via ``variational_subset`` parameter in the ``<qmc>`` driver input.
|
||||
It allows controlling optimization granularity at each optimization step.
|
||||
If ``variational_subset`` is not provided or empty, all the varational paramemters are selected.
|
||||
If variational paramemters are set as not optimizable in the predominant way, the secondary way won't be able to set them optimizable even they are selected.
|
||||
If ``variational_subset`` is not provided or empty, all the variational parameters are selected.
|
||||
If variational parameters are set as not optimizable in the predominant way, the secondary way won't be able to set them optimizable even they are selected.
|
||||
|
||||
The following example shows optimizing subsets of parameters in stages in a single QMCPACK run.
|
||||
|
||||
|
@ -570,6 +570,28 @@ The following example shows optimizing subsets of parameters in stages in a sing
|
|||
<parameter name="variational_subset"> uu ud eH CI </parameter>
|
||||
</qmc>
|
||||
|
||||
Variational parameter storage
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
After each optimization step the new wavefunction is stored in a file with an ``.opt.xml`` suffix.
|
||||
This new wavefunction includes the updated variational parameters.
|
||||
|
||||
Writing a new XML wavefunction becomes more complicated if parameters are stored elsewhere (e.g. multideterminant coefficients in an HDF file) and has problems scaling with the number of parameters.
|
||||
To address these issues the variational parameters are now written to an HDF file.
|
||||
The new "VP file" has the suffix ``.vp.h5`` and is written in conjunction with the ``.opt.xml`` file.
|
||||
|
||||
The wavefunction file connects to the VP file with a tag (``override_variational_parameters``) in the ``.opt.xml`` file that points to the ``.vp.h5`` file.
|
||||
Should it be necessary to recover the previous behavior without the VP file, this tag can be be turned off with an ``output_vp_override`` parameter in the optimizer input block:
|
||||
``<parameter name="output_vp_override">no</parameter>``
|
||||
|
||||
Both schemes for storing variational parameters coexist. Two important points about the VP file:
|
||||
|
||||
* The values of the variational parameters in the VP file take precedence over the values in the XML wavefunction.
|
||||
* When copying an optimized wavefunction, the ``.vp.h5`` file needs to be copied as well.
|
||||
|
||||
For users that want to inspect or modify the VP file,
|
||||
the He_param test (in ``tests/molecules/He_param``) contains a python script (``convert_vp_format.py``) to read and write the VP file. The script converts to and from a simple text representation of the parameters.
|
||||
|
||||
|
||||
Optimizers
|
||||
~~~~~~~~~~
|
||||
|
||||
|
|
|
@ -111,8 +111,9 @@ UNTRIMMED_COMMITTER_TOKEN=${!USER_TOKEN:-$GITHUB_TOKEN}
|
|||
COMMITTER_TOKEN="$(echo -e "${UNTRIMMED_COMMITTER_TOKEN}" | tr -d '[:space:]')"
|
||||
|
||||
git remote set-url origin https://x-access-token:$COMMITTER_TOKEN@github.com/$GITHUB_REPOSITORY.git
|
||||
git config --global user.email "$USER_EMAIL"
|
||||
git config --global user.name "$USER_NAME"
|
||||
# CHANGED FROM ORIGNAL: use bot credentials
|
||||
git config --global user.email "QMCPACKbot@gmail.com"
|
||||
git config --global user.name "QMCPACK-Bot"
|
||||
|
||||
git remote add fork https://x-access-token:$COMMITTER_TOKEN@github.com/$HEAD_REPO.git
|
||||
|
||||
|
@ -127,4 +128,28 @@ git checkout -b fork/$HEAD_BRANCH fork/$HEAD_BRANCH
|
|||
git rebase origin/$BASE_BRANCH
|
||||
|
||||
# push back
|
||||
git push --force-with-lease fork fork/$HEAD_BRANCH:$HEAD_BRANCH
|
||||
git push --force-with-lease fork fork/$HEAD_BRANCH:$HEAD_BRANCH
|
||||
|
||||
# CHANGE FROM ORIGINAL: add empty commit signed by bot
|
||||
echo "$QMCPACK_BOT_GPG_KEY" >> import.key
|
||||
gpg --import import.key
|
||||
rm import.key
|
||||
git config --global user.signingkey "$QMCPACK_BOT_GPG_SIGNING_KEY"
|
||||
git commit --allow-empty -S -m "Rebased Signed Off by QMCPACK-Bot"
|
||||
git push fork fork/$HEAD_BRANCH:$HEAD_BRANCH
|
||||
|
||||
COMMIT_SHA=$(git rev-parse --verify HEAD)
|
||||
|
||||
# EDIT TO ORIGINAL SCRIPT: Reapprove PR after push
|
||||
# NOTE: Submits a review appoving the SHA it just sent,
|
||||
# so if someone tried to commit something on top and "steal" this review,
|
||||
# it shouldn't work because it would have a different SHA
|
||||
REVIEW_URI="${URI}/repos/$GITHUB_REPOSITORY/pulls/$PR_NUMBER/reviews"
|
||||
UPDATE_PARAMETERS=$(jq --null-input \
|
||||
--arg commit_sha "${COMMIT_SHA}" \
|
||||
'{"commit_id" : $commit_sha, "body":"AUTOMATED REVIEW: Reapprove after rebase", "event":"APPROVE"}')
|
||||
|
||||
|
||||
RESULT=$(curl -X POST -H "${AUTH_HEADER}" -H "${API_HEADER}" \
|
||||
-d "${UPDATE_PARAMETERS}" \
|
||||
"${REVIEW_URI}")
|
|
@ -53,7 +53,8 @@ QMCCostFunctionBase::QMCCostFunctionBase(ParticleSet& w, TrialWaveFunction& psi,
|
|||
msg_stream(0),
|
||||
m_wfPtr(NULL),
|
||||
m_doc_out(NULL),
|
||||
debug_stream(0)
|
||||
debug_stream(0),
|
||||
do_override_output(true)
|
||||
{
|
||||
GEVType = "mixed";
|
||||
//paramList.resize(10);
|
||||
|
@ -310,7 +311,6 @@ bool QMCCostFunctionBase::put(xmlNodePtr q)
|
|||
std::string includeNonlocalH;
|
||||
std::string writeXmlPerStep("no");
|
||||
std::string computeNLPPderiv;
|
||||
std::string output_override_str("no");
|
||||
astring variational_subset_str;
|
||||
ParameterSet m_param;
|
||||
m_param.add(writeXmlPerStep, "dumpXML");
|
||||
|
@ -322,7 +322,7 @@ bool QMCCostFunctionBase::put(xmlNodePtr q)
|
|||
m_param.add(GEVType, "GEVMethod");
|
||||
m_param.add(targetExcitedStr, "targetExcited");
|
||||
m_param.add(omega_shift, "omega");
|
||||
m_param.add(output_override_str, "output_vp_override", {"no", "yes"});
|
||||
m_param.add(do_override_output, "output_vp_override", {true});
|
||||
m_param.add(variational_subset_str, "variational_subset");
|
||||
m_param.put(q);
|
||||
|
||||
|
@ -337,9 +337,6 @@ bool QMCCostFunctionBase::put(xmlNodePtr q)
|
|||
targetExcitedStr = lowerCase(targetExcitedStr);
|
||||
targetExcited = (targetExcitedStr == "yes");
|
||||
|
||||
if (output_override_str == "yes")
|
||||
do_override_output = true;
|
||||
|
||||
variational_subset_names = convertStrToVec<std::string>(variational_subset_str.s);
|
||||
|
||||
// app_log() << " QMCCostFunctionBase::put " << std::endl;
|
||||
|
|
|
@ -105,6 +105,8 @@ public:
|
|||
|
||||
bool isOptimizable() const override { return opt_C || opt_F; }
|
||||
|
||||
void extractOptimizableObjectRefs(UniqueOptObjRefs& opt_obj_refs) override { opt_obj_refs.push_back(*this); }
|
||||
|
||||
void checkInVariablesExclusive(opt_variables_type& active) final
|
||||
{
|
||||
active.insertFrom(myVars);
|
||||
|
|
|
@ -407,7 +407,7 @@ else()
|
|||
list(APPEND DET_NIO_BATCHED_A4_E48_SCALARS "potential" "-619.32892062 0.02")
|
||||
list(APPEND DET_NIO_BATCHED_A4_E48_SCALARS "eeenergy" "75.55912430 0.003")
|
||||
list(APPEND DET_NIO_BATCHED_A4_E48_SCALARS "ionion" "-239.29802821 0.000002")
|
||||
list(APPEND DET_NIO_BATCHED_A4_E48_SCALARS "localecp" "-391.88648786 0.001")
|
||||
list(APPEND DET_NIO_BATCHED_A4_E48_SCALARS "localecp" "-391.88648786 0.0015")
|
||||
list(APPEND DET_NIO_BATCHED_A4_E48_SCALARS "nonlocalecp" "-63.70352885 0.02")
|
||||
list(APPEND DET_NIO_BATCHED_A4_E48_SCALARS "samples" "9 0.0")
|
||||
endif()
|
||||
|
|
|
@ -135,15 +135,15 @@ qmc_run_and_check(
|
|||
)
|
||||
|
||||
# Excited state
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "totenergy" "-10.28759285 0.001023")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "kinetic" "11.41778633 0.066764")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "potential" "-21.70537918 0.008371")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "eeenergy" "-2.78731301 0.002097")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "ionion" "-12.77566741 0.000001")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "localecp" "-6.74480856 0.009475")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "nonlocalecp" "0.60240980 0.002763")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "totenergy" "-10.28757413 0.001966")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "kinetic" "11.41769866 0.01674")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "potential" "-21.70527280 0.016756")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "eeenergy" "-2.78729624 0.004153")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "ionion" "-12.77566741 0.00001")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "localecp" "-6.74474055 0.018968")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "nonlocalecp" "0.60243140 0.005574")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "samples" "128000 0.0")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "mpc" "-2.52743302 0.00222")
|
||||
list(APPEND DIAMOND_EXCITED_SCALARS "mpc" "-2.52740814 0.004392")
|
||||
|
||||
qmc_run_and_check(
|
||||
short-diamondC_1x1x1_pp-vmc_sdj_excited
|
||||
|
@ -157,13 +157,13 @@ qmc_run_and_check(
|
|||
DIAMOND_EXCITED_SCALARS # VMC
|
||||
)
|
||||
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "totenergy" "-10.33095572 0.002735")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "kinetic" "11.48677399 0.027304")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "potential" "-21.81772971 0.028082")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "localecp" "-6.87597125 0.03417")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "nonlocalecp" "0.63559539 0.008290")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "eeenergy" "-2.80168644 0.00774")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "mpc" "-2.55373919 0.008215")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "totenergy" "-10.33047547 0.002606")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "kinetic" "11.48348626 0.026185")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "potential" "-21.81396173 0.02679")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "localecp" "-6.87151058 0.033201")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "nonlocalecp" "0.63492715 0.008002")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "eeenergy" "-2.80171089 0.007489")
|
||||
list(APPEND DIAMOND_DMC_EXCITED_SCALARS "mpc" "-2.55372811 0.00795")
|
||||
|
||||
qmc_run_and_check(
|
||||
short-diamondC_1x1x1_pp-dmc_sdj_excited
|
||||
|
@ -321,9 +321,9 @@ qmc_run_and_check(
|
|||
)
|
||||
|
||||
# Excited state
|
||||
list(APPEND LONG_DIAMOND_EXCITED_SCALARS "totenergy" "-10.28759285 0.000033")
|
||||
list(APPEND LONG_DIAMOND_EXCITED_SCALARS "totenergy" "-10.28757413 0.000067")
|
||||
list(APPEND LONG_DIAMOND_EXCITED_SCALARS "samples" "122880000 0.0")
|
||||
list(APPEND LONG_DIAMOND_EXCITED_SCALARS "flux" "-0.01469770 0.025542")
|
||||
list(APPEND LONG_DIAMOND_EXCITED_SCALARS "flux" "-0.01538267 0.03786")
|
||||
|
||||
qmc_run_and_check(
|
||||
long-diamondC_1x1x1_pp-vmc_sdj_excited
|
||||
|
@ -337,7 +337,7 @@ qmc_run_and_check(
|
|||
LONG_DIAMOND_EXCITED_SCALARS # VMC
|
||||
)
|
||||
|
||||
list(APPEND LONG_DIAMOND_DMC_EXCITED_SCALARS "totenergy" "-10.33095572 0.000865")
|
||||
list(APPEND LONG_DIAMOND_DMC_EXCITED_SCALARS "totenergy" "-10.33047547 0.00086")
|
||||
|
||||
qmc_run_and_check(
|
||||
long-diamondC_1x1x1_pp-dmc_sdj_excited
|
||||
|
@ -1156,11 +1156,11 @@ if(NOT QMC_CUDA)
|
|||
list(APPEND DET_DIAMOND_EXCITED_SCALARS "potential" "-24.81924106 0.00001931")
|
||||
list(APPEND DET_DIAMOND_EXCITED_SCALARS "eeenergy" "-3.54361899 0.00001190")
|
||||
list(APPEND DET_DIAMOND_EXCITED_SCALARS "ionion" "-12.77567050 0.000001")
|
||||
list(APPEND DET_DIAMOND_EXCITED_SCALARS "localecp" "-8.35089725 0.00001516")
|
||||
list(APPEND DET_DIAMOND_EXCITED_SCALARS "localecp" "-8.35089725 0.00005")
|
||||
list(APPEND DET_DIAMOND_EXCITED_SCALARS "nonlocalecp" "-0.14905431 0.00002")
|
||||
list(APPEND DET_DIAMOND_EXCITED_SCALARS "mpc" "-3.24606471 0.00001149")
|
||||
list(APPEND DET_DIAMOND_EXCITED_SCALARS "samples" "9 0.0")
|
||||
list(APPEND DET_DIAMOND_EXCITED_SCALARS "flux" "-3.81746292 0.00004665")
|
||||
list(APPEND DET_DIAMOND_EXCITED_SCALARS "flux" "-3.81746292 0.0001")
|
||||
else()
|
||||
list(APPEND DET_DIAMOND_EXCITED_SCALARS "totenergy" "-10.14872875 0.000001")
|
||||
list(APPEND DET_DIAMOND_EXCITED_SCALARS "kinetic" "14.67051169 0.000001")
|
||||
|
|
|
@ -86,7 +86,7 @@
|
|||
<qmc method="vmc" move="pbyp">
|
||||
<estimator name="LocalEnergy" hdf5="no"/>
|
||||
<parameter name="walkers" > 16 </parameter>
|
||||
<parameter name="blocks" > 10000 </parameter>
|
||||
<parameter name="blocks" > 10000 </parameter>
|
||||
<parameter name="steps" > 7680.0 </parameter>
|
||||
<parameter name="subSteps" > 2 </parameter>
|
||||
<parameter name="timestep" > 0.3 </parameter>
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -94,7 +94,7 @@
|
|||
<parameter name="timestep"> 1.0 </parameter>
|
||||
<parameter name="usedrift"> no </parameter>
|
||||
</qmc>
|
||||
<qmc method="dmc" move="pbyp" checkpoint="-1" gpu="yes">
|
||||
<qmc method="dmc" move="pbyp" gpu="yes">
|
||||
<estimator name="LocalEnergy" hdf5="no"/>
|
||||
<parameter name="targetwalkers"> 256 </parameter>
|
||||
<parameter name="reconfiguration"> no </parameter>
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -193,13 +193,13 @@ qmc_run_and_check(
|
|||
|
||||
# Excited state
|
||||
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "totenergy" "-21.40993432 0.003654")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "kinetic" "20.06024293 0.022415")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "potential" "-41.47017725 0.023043")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "eeenergy" "-5.45766545 0.006076")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "ionion" "-25.55132697 0.000001")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "localecp" "-12.00615417 0.027085")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "nonlocalecp" "1.54496935 0.0092")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "totenergy" "-21.40982133 0.007277")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "kinetic" "20.05962779 0.043556")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "potential" "-41.46944912 0.044609")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "eeenergy" "-5.45766881 0.012243")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "ionion" "-25.55132697 0.00001")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "localecp" "-12.00533349 0.051348")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "nonlocalecp" "1.54488016 0.018282")
|
||||
list(APPEND DIAMOND2_EXCITED_SCALARS "samples" "32000 0.0")
|
||||
|
||||
qmc_run_and_check(
|
||||
|
@ -214,7 +214,7 @@ qmc_run_and_check(
|
|||
DIAMOND2_EXCITED_SCALARS # VMC
|
||||
)
|
||||
|
||||
list(APPEND DIAMOND2_DMC_EXCITED_SCALARS "totenergy" "-21.61047356 0.010888")
|
||||
list(APPEND DIAMOND2_DMC_EXCITED_SCALARS "totenergy" "-21.60824284 0.011552")
|
||||
|
||||
qmc_run_and_check(
|
||||
short-diamondC_2x1x1_pp-dmc_sdj_excited
|
||||
|
@ -289,9 +289,9 @@ qmc_run_and_check(
|
|||
)
|
||||
|
||||
# Excited state
|
||||
list(APPEND LONG_DIAMOND2_EXCITED_SCALARS "totenergy" "-21.40993432 0.000124")
|
||||
list(APPEND LONG_DIAMOND2_EXCITED_SCALARS "totenergy" "-21.40982133 0.000246")
|
||||
list(APPEND LONG_DIAMOND2_EXCITED_SCALARS "samples" "30720000 0.0")
|
||||
list(APPEND LONG_DIAMOND2_EXCITED_SCALARS "flux" "-0.03079667 0.061095")
|
||||
list(APPEND LONG_DIAMOND2_EXCITED_SCALARS "flux" "0.02048760 0.258691")
|
||||
|
||||
qmc_run_and_check(
|
||||
long-diamondC_2x1x1_pp-vmc_sdj_excited
|
||||
|
@ -305,7 +305,7 @@ qmc_run_and_check(
|
|||
LONG_DIAMOND2_EXCITED_SCALARS # VMC
|
||||
)
|
||||
|
||||
list(APPEND LONG_DIAMOND2_DMC_EXCITED_SCALARS "totenergy" "-21.61047356 0.001089")
|
||||
list(APPEND LONG_DIAMOND2_DMC_EXCITED_SCALARS "totenergy" "-21.60824284 0.003812")
|
||||
qmc_run_and_check(
|
||||
long-diamondC_2x1x1_pp-dmc_sdj_excited
|
||||
"${qmcpack_SOURCE_DIR}/tests/solids/diamondC_2x1x1_pp"
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -95,14 +95,14 @@
|
|||
<parameter name="timestep"> 1.0 </parameter>
|
||||
<parameter name="usedrift"> no </parameter>
|
||||
</qmc>
|
||||
<qmc method="dmc" move="pbyp" checkpoint="-1">
|
||||
<qmc method="dmc" move="pbyp">
|
||||
<estimator name="LocalEnergy" hdf5="no"/>
|
||||
<parameter name="targetwalkers"> 256 </parameter>
|
||||
<parameter name="reconfiguration"> no </parameter>
|
||||
<parameter name="warmupSteps"> 100 </parameter>
|
||||
<parameter name="timestep"> 0.005 </parameter>
|
||||
<parameter name="steps"> 100 </parameter>
|
||||
<parameter name="blocks"> 25000 </parameter>
|
||||
<parameter name="blocks"> 2500 </parameter>
|
||||
<parameter name="nonlocalmoves"> no </parameter>
|
||||
</qmc>
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -162,19 +162,20 @@ case "$1" in
|
|||
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
${GITHUB_WORKSPACE}
|
||||
;;
|
||||
*"Clang14-MPI-CUDA-AFQMC-Offload"*)
|
||||
*"Clang15-MPI-CUDA-AFQMC-Offload"*)
|
||||
echo "Configure for building with ENABLE_CUDA and AFQMC using OpenMP offload on x86_64 " \
|
||||
"with latest llvm, need built-from-source OpenBLAS due to bug in rpm"
|
||||
|
||||
export OMPI_CC=/opt/llvm/14.0.1/bin/clang
|
||||
export OMPI_CXX=/opt/llvm/14.0.1/bin/clang++
|
||||
# todo: update to llvm 15 release, currently using release candidate
|
||||
export OMPI_CC=/opt/llvm/15.0.0-rc3/bin/clang
|
||||
export OMPI_CXX=/opt/llvm/15.0.0-rc3/bin/clang++
|
||||
|
||||
# Make current environment variables available to subsequent steps
|
||||
echo "OMPI_CC=/opt/llvm/14.0.1/bin/clang" >> $GITHUB_ENV
|
||||
echo "OMPI_CXX=/opt/llvm/14.0.1/bin/clang++" >> $GITHUB_ENV
|
||||
echo "OMPI_CC=/opt/llvm/15.0.0-rc3/bin/clang" >> $GITHUB_ENV
|
||||
echo "OMPI_CXX=/opt/llvm/15.0.0-rc3/bin/clang++" >> $GITHUB_ENV
|
||||
|
||||
# Confirm that cuda 11.2 gets picked up by the compiler
|
||||
/opt/llvm/14.0.1/bin/clang++ -v
|
||||
/opt/llvm/15.0.0-rc3/bin/clang++ -v
|
||||
|
||||
cmake -GNinja \
|
||||
-DCMAKE_C_COMPILER=/usr/lib64/openmpi/bin/mpicc \
|
||||
|
@ -183,7 +184,6 @@ case "$1" in
|
|||
-DBUILD_AFQMC=ON \
|
||||
-DENABLE_CUDA=ON \
|
||||
-DENABLE_OFFLOAD=ON \
|
||||
-DUSE_OBJECT_TARGET=ON \
|
||||
-DCMAKE_PREFIX_PATH="/opt/OpenBLAS/0.3.18" \
|
||||
-DQMC_COMPLEX=$IS_COMPLEX \
|
||||
-DQMC_MIXED_PRECISION=$IS_MIXED_PRECISION \
|
||||
|
@ -375,7 +375,7 @@ case "$1" in
|
|||
|
||||
if [[ "${GH_JOBNAME}" =~ (AFQMC-Offload) ]]
|
||||
then
|
||||
export LD_LIBRARY_PATH=/opt/llvm/14.0.1/lib:/usr/lib64/openmpi/lib:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=/opt/llvm/15.0.0-rc3/lib:/usr/lib64/openmpi/lib:${LD_LIBRARY_PATH}
|
||||
fi
|
||||
|
||||
if [[ "${GH_JOBNAME}" =~ (Intel19) ]]
|
||||
|
|
Loading…
Reference in New Issue