Repository files navigation

This website is intended to provide some guidance on how to get and install the PROGRESS library. LA-UR number LA-UR-17-27372

IssuesPull RequestsCIDocker
GitHub issuesGitHub pull requestsGitHub ActionsDocker Pulls

A library for quantum chemistry solvers

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver. LA-CC-16-068

Authors

(in alphabetical order)

Contributors

Build Dependencies

  • >=OpenMP-3.1
  • >=metis-5.0 if building with PROGRESS_GRAPHLIB

Note that on some distributions, metis is available as a package. Make sure you install the -dev package. For example, Ubuntu requires libmetis-dev.

Testing in our CI container

We are switching our CI tests from Travis-CI to GitHub Actions because Travis-CI is limiting the number of builds for open source projects. Our workflow uses a custom Docker image which comes with the necessary compiler tool chain and a pre-installed bml library to build and test the qmd-progress library. Using docker is a convenient and quick way to develop, build, and test the qmd-progress library.

./scripts/run-local-docker-container.sh

Inside the container:

./build.sh compile

Alternatively, you can run one of the CI tests by executing e.g.

./scripts/ci-with-graphlib-debug.sh

Build and Install Instructions

How to build

CMAKE_PREFIX_PATH=<BML install path> ./build.sh

How to install

cd buildsudo make install

To specify the Intel Fortran compiler:

FC=ifort PKG_CONFIG_PATH=<BML install path>/lib/pkgconfig ./build.sh

To build with the gfortran compiler and OpenMP:

CC=gcc FC=gfortran \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI and testing enabled:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI, testing enabled and example programs built:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP and MPI and testing enabled and example programs built and the METIS graph partitioning library:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_GRAPHLIB=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

Citing

@misc{2016progress,
title={\textrm{PROGRESS} Version 1.0},
author={Niklasson, Anders M. and Mniszewski, Susan M and Negre, Christian F. A. and Wall, Michael E. and Cawkwell, Marc J., and Nicolas Bock},
year={2016},
url = {https://github.com/lanl/qmd-progress},
institution={Los Alamos National Laboratory (LANL), Los Alamos, NM (United States)}
}

Support acknowledges

This development is currently supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of two U.S. Department of Energy organizations (Office of Science and the National Nuclear Security Administration) responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering, and early testbed platforms, in support of the nation’s exascale computing imperative.

Basic Energy Sciences (LANL2014E8AN) and the Laboratory Directed Research and Development Program of Los Alamos National Laboratory. To tests these developments we used resources provided by the Los Alamos National Laboratory Institutional Computing Program, which is supported by the U.S. Department of Energy National Nuclear Security Administration

About

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver.

Topics

Resources

Contributing

Stars

28 stars

Watchers

15 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

This website is intended to provide some guidance on how to get and install the PROGRESS library. LA-UR number LA-UR-17-27372

IssuesPull RequestsCIDocker
GitHub issuesGitHub pull requestsGitHub ActionsDocker Pulls

A library for quantum chemistry solvers

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver. LA-CC-16-068

Authors

(in alphabetical order)

Contributors

Build Dependencies

  • >=OpenMP-3.1
  • >=metis-5.0 if building with PROGRESS_GRAPHLIB

Note that on some distributions, metis is available as a package. Make sure you install the -dev package. For example, Ubuntu requires libmetis-dev.

Testing in our CI container

We are switching our CI tests from Travis-CI to GitHub Actions because Travis-CI is limiting the number of builds for open source projects. Our workflow uses a custom Docker image which comes with the necessary compiler tool chain and a pre-installed bml library to build and test the qmd-progress library. Using docker is a convenient and quick way to develop, build, and test the qmd-progress library.

./scripts/run-local-docker-container.sh

Inside the container:

./build.sh compile

Alternatively, you can run one of the CI tests by executing e.g.

./scripts/ci-with-graphlib-debug.sh

Build and Install Instructions

How to build

CMAKE_PREFIX_PATH=<BML install path> ./build.sh

How to install

cd buildsudo make install

To specify the Intel Fortran compiler:

FC=ifort PKG_CONFIG_PATH=<BML install path>/lib/pkgconfig ./build.sh

To build with the gfortran compiler and OpenMP:

CC=gcc FC=gfortran \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI and testing enabled:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI, testing enabled and example programs built:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP and MPI and testing enabled and example programs built and the METIS graph partitioning library:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_GRAPHLIB=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

Citing

@misc{2016progress,
title={\textrm{PROGRESS} Version 1.0},
author={Niklasson, Anders M. and Mniszewski, Susan M and Negre, Christian F. A. and Wall, Michael E. and Cawkwell, Marc J., and Nicolas Bock},
year={2016},
url = {https://github.com/lanl/qmd-progress},
institution={Los Alamos National Laboratory (LANL), Los Alamos, NM (United States)}
}

Support acknowledges

This development is currently supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of two U.S. Department of Energy organizations (Office of Science and the National Nuclear Security Administration) responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering, and early testbed platforms, in support of the nation’s exascale computing imperative.

Basic Energy Sciences (LANL2014E8AN) and the Laboratory Directed Research and Development Program of Los Alamos National Laboratory. To tests these developments we used resources provided by the Los Alamos National Laboratory Institutional Computing Program, which is supported by the U.S. Department of Energy National Nuclear Security Administration

About

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver.

Topics

Resources

Contributing

Stars

28 stars

Watchers

15 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

This website is intended to provide some guidance on how to get and install the PROGRESS library. LA-UR number LA-UR-17-27372

IssuesPull RequestsCIDocker
GitHub issuesGitHub pull requestsGitHub ActionsDocker Pulls

A library for quantum chemistry solvers

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver. LA-CC-16-068

Authors

(in alphabetical order)

Contributors

Build Dependencies

  • >=OpenMP-3.1
  • >=metis-5.0 if building with PROGRESS_GRAPHLIB

Note that on some distributions, metis is available as a package. Make sure you install the -dev package. For example, Ubuntu requires libmetis-dev.

Testing in our CI container

We are switching our CI tests from Travis-CI to GitHub Actions because Travis-CI is limiting the number of builds for open source projects. Our workflow uses a custom Docker image which comes with the necessary compiler tool chain and a pre-installed bml library to build and test the qmd-progress library. Using docker is a convenient and quick way to develop, build, and test the qmd-progress library.

./scripts/run-local-docker-container.sh

Inside the container:

./build.sh compile

Alternatively, you can run one of the CI tests by executing e.g.

./scripts/ci-with-graphlib-debug.sh

Build and Install Instructions

How to build

CMAKE_PREFIX_PATH=<BML install path> ./build.sh

How to install

cd buildsudo make install

To specify the Intel Fortran compiler:

FC=ifort PKG_CONFIG_PATH=<BML install path>/lib/pkgconfig ./build.sh

To build with the gfortran compiler and OpenMP:

CC=gcc FC=gfortran \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI and testing enabled:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI, testing enabled and example programs built:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP and MPI and testing enabled and example programs built and the METIS graph partitioning library:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_GRAPHLIB=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

Citing

@misc{2016progress,
title={\textrm{PROGRESS} Version 1.0},
author={Niklasson, Anders M. and Mniszewski, Susan M and Negre, Christian F. A. and Wall, Michael E. and Cawkwell, Marc J., and Nicolas Bock},
year={2016},
url = {https://github.com/lanl/qmd-progress},
institution={Los Alamos National Laboratory (LANL), Los Alamos, NM (United States)}
}

Support acknowledges

This development is currently supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of two U.S. Department of Energy organizations (Office of Science and the National Nuclear Security Administration) responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering, and early testbed platforms, in support of the nation’s exascale computing imperative.

Basic Energy Sciences (LANL2014E8AN) and the Laboratory Directed Research and Development Program of Los Alamos National Laboratory. To tests these developments we used resources provided by the Los Alamos National Laboratory Institutional Computing Program, which is supported by the U.S. Department of Energy National Nuclear Security Administration

About

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver.

Topics

Resources

Contributing

Stars

28 stars

Watchers

15 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

This website is intended to provide some guidance on how to get and install the PROGRESS library. LA-UR number LA-UR-17-27372

IssuesPull RequestsCIDocker
GitHub issuesGitHub pull requestsGitHub ActionsDocker Pulls

A library for quantum chemistry solvers

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver. LA-CC-16-068

Authors

(in alphabetical order)

Contributors

Build Dependencies

  • >=OpenMP-3.1
  • >=metis-5.0 if building with PROGRESS_GRAPHLIB

Note that on some distributions, metis is available as a package. Make sure you install the -dev package. For example, Ubuntu requires libmetis-dev.

Testing in our CI container

We are switching our CI tests from Travis-CI to GitHub Actions because Travis-CI is limiting the number of builds for open source projects. Our workflow uses a custom Docker image which comes with the necessary compiler tool chain and a pre-installed bml library to build and test the qmd-progress library. Using docker is a convenient and quick way to develop, build, and test the qmd-progress library.

./scripts/run-local-docker-container.sh

Inside the container:

./build.sh compile

Alternatively, you can run one of the CI tests by executing e.g.

./scripts/ci-with-graphlib-debug.sh

Build and Install Instructions

How to build

CMAKE_PREFIX_PATH=<BML install path> ./build.sh

How to install

cd buildsudo make install

To specify the Intel Fortran compiler:

FC=ifort PKG_CONFIG_PATH=<BML install path>/lib/pkgconfig ./build.sh

To build with the gfortran compiler and OpenMP:

CC=gcc FC=gfortran \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI and testing enabled:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI, testing enabled and example programs built:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP and MPI and testing enabled and example programs built and the METIS graph partitioning library:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_GRAPHLIB=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

Citing

@misc{2016progress,
title={\textrm{PROGRESS} Version 1.0},
author={Niklasson, Anders M. and Mniszewski, Susan M and Negre, Christian F. A. and Wall, Michael E. and Cawkwell, Marc J., and Nicolas Bock},
year={2016},
url = {https://github.com/lanl/qmd-progress},
institution={Los Alamos National Laboratory (LANL), Los Alamos, NM (United States)}
}

Support acknowledges

This development is currently supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of two U.S. Department of Energy organizations (Office of Science and the National Nuclear Security Administration) responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering, and early testbed platforms, in support of the nation’s exascale computing imperative.

Basic Energy Sciences (LANL2014E8AN) and the Laboratory Directed Research and Development Program of Los Alamos National Laboratory. To tests these developments we used resources provided by the Los Alamos National Laboratory Institutional Computing Program, which is supported by the U.S. Department of Energy National Nuclear Security Administration

About

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver.

Topics

Resources

Contributing

Stars

28 stars

Watchers

15 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

This website is intended to provide some guidance on how to get and install the PROGRESS library. LA-UR number LA-UR-17-27372

IssuesPull RequestsCIDocker
GitHub issuesGitHub pull requestsGitHub ActionsDocker Pulls

A library for quantum chemistry solvers

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver. LA-CC-16-068

Authors

(in alphabetical order)

Contributors

Build Dependencies

  • >=OpenMP-3.1
  • >=metis-5.0 if building with PROGRESS_GRAPHLIB

Note that on some distributions, metis is available as a package. Make sure you install the -dev package. For example, Ubuntu requires libmetis-dev.

Testing in our CI container

We are switching our CI tests from Travis-CI to GitHub Actions because Travis-CI is limiting the number of builds for open source projects. Our workflow uses a custom Docker image which comes with the necessary compiler tool chain and a pre-installed bml library to build and test the qmd-progress library. Using docker is a convenient and quick way to develop, build, and test the qmd-progress library.

./scripts/run-local-docker-container.sh

Inside the container:

./build.sh compile

Alternatively, you can run one of the CI tests by executing e.g.

./scripts/ci-with-graphlib-debug.sh

Build and Install Instructions

How to build

CMAKE_PREFIX_PATH=<BML install path> ./build.sh

How to install

cd buildsudo make install

To specify the Intel Fortran compiler:

FC=ifort PKG_CONFIG_PATH=<BML install path>/lib/pkgconfig ./build.sh

To build with the gfortran compiler and OpenMP:

CC=gcc FC=gfortran \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI and testing enabled:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI, testing enabled and example programs built:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP and MPI and testing enabled and example programs built and the METIS graph partitioning library:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_GRAPHLIB=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

Citing

@misc{2016progress,
title={\textrm{PROGRESS} Version 1.0},
author={Niklasson, Anders M. and Mniszewski, Susan M and Negre, Christian F. A. and Wall, Michael E. and Cawkwell, Marc J., and Nicolas Bock},
year={2016},
url = {https://github.com/lanl/qmd-progress},
institution={Los Alamos National Laboratory (LANL), Los Alamos, NM (United States)}
}

Support acknowledges

This development is currently supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of two U.S. Department of Energy organizations (Office of Science and the National Nuclear Security Administration) responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering, and early testbed platforms, in support of the nation’s exascale computing imperative.

Basic Energy Sciences (LANL2014E8AN) and the Laboratory Directed Research and Development Program of Los Alamos National Laboratory. To tests these developments we used resources provided by the Los Alamos National Laboratory Institutional Computing Program, which is supported by the U.S. Department of Energy National Nuclear Security Administration

About

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver.

Topics

Resources

Contributing

Stars

28 stars

Watchers

15 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

This website is intended to provide some guidance on how to get and install the PROGRESS library. LA-UR number LA-UR-17-27372

IssuesPull RequestsCIDocker
GitHub issuesGitHub pull requestsGitHub ActionsDocker Pulls

A library for quantum chemistry solvers

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver. LA-CC-16-068

Authors

(in alphabetical order)

Contributors

Build Dependencies

  • >=OpenMP-3.1
  • >=metis-5.0 if building with PROGRESS_GRAPHLIB

Note that on some distributions, metis is available as a package. Make sure you install the -dev package. For example, Ubuntu requires libmetis-dev.

Testing in our CI container

We are switching our CI tests from Travis-CI to GitHub Actions because Travis-CI is limiting the number of builds for open source projects. Our workflow uses a custom Docker image which comes with the necessary compiler tool chain and a pre-installed bml library to build and test the qmd-progress library. Using docker is a convenient and quick way to develop, build, and test the qmd-progress library.

./scripts/run-local-docker-container.sh

Inside the container:

./build.sh compile

Alternatively, you can run one of the CI tests by executing e.g.

./scripts/ci-with-graphlib-debug.sh

Build and Install Instructions

How to build

CMAKE_PREFIX_PATH=<BML install path> ./build.sh

How to install

cd buildsudo make install

To specify the Intel Fortran compiler:

FC=ifort PKG_CONFIG_PATH=<BML install path>/lib/pkgconfig ./build.sh

To build with the gfortran compiler and OpenMP:

CC=gcc FC=gfortran \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI and testing enabled:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI, testing enabled and example programs built:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP and MPI and testing enabled and example programs built and the METIS graph partitioning library:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_GRAPHLIB=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

Citing

@misc{2016progress,
title={\textrm{PROGRESS} Version 1.0},
author={Niklasson, Anders M. and Mniszewski, Susan M and Negre, Christian F. A. and Wall, Michael E. and Cawkwell, Marc J., and Nicolas Bock},
year={2016},
url = {https://github.com/lanl/qmd-progress},
institution={Los Alamos National Laboratory (LANL), Los Alamos, NM (United States)}
}

Support acknowledges

This development is currently supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of two U.S. Department of Energy organizations (Office of Science and the National Nuclear Security Administration) responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering, and early testbed platforms, in support of the nation’s exascale computing imperative.

Basic Energy Sciences (LANL2014E8AN) and the Laboratory Directed Research and Development Program of Los Alamos National Laboratory. To tests these developments we used resources provided by the Los Alamos National Laboratory Institutional Computing Program, which is supported by the U.S. Department of Energy National Nuclear Security Administration

About

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver.

Topics

Resources

Contributing

Stars

28 stars

Watchers

15 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

This website is intended to provide some guidance on how to get and install the PROGRESS library. LA-UR number LA-UR-17-27372

IssuesPull RequestsCIDocker
GitHub issuesGitHub pull requestsGitHub ActionsDocker Pulls

A library for quantum chemistry solvers

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver. LA-CC-16-068

Authors

(in alphabetical order)

Contributors

Build Dependencies

  • >=OpenMP-3.1
  • >=metis-5.0 if building with PROGRESS_GRAPHLIB

Note that on some distributions, metis is available as a package. Make sure you install the -dev package. For example, Ubuntu requires libmetis-dev.

Testing in our CI container

We are switching our CI tests from Travis-CI to GitHub Actions because Travis-CI is limiting the number of builds for open source projects. Our workflow uses a custom Docker image which comes with the necessary compiler tool chain and a pre-installed bml library to build and test the qmd-progress library. Using docker is a convenient and quick way to develop, build, and test the qmd-progress library.

./scripts/run-local-docker-container.sh

Inside the container:

./build.sh compile

Alternatively, you can run one of the CI tests by executing e.g.

./scripts/ci-with-graphlib-debug.sh

Build and Install Instructions

How to build

CMAKE_PREFIX_PATH=<BML install path> ./build.sh

How to install

cd buildsudo make install

To specify the Intel Fortran compiler:

FC=ifort PKG_CONFIG_PATH=<BML install path>/lib/pkgconfig ./build.sh

To build with the gfortran compiler and OpenMP:

CC=gcc FC=gfortran \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI and testing enabled:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI, testing enabled and example programs built:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP and MPI and testing enabled and example programs built and the METIS graph partitioning library:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_GRAPHLIB=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

Citing

@misc{2016progress,
title={\textrm{PROGRESS} Version 1.0},
author={Niklasson, Anders M. and Mniszewski, Susan M and Negre, Christian F. A. and Wall, Michael E. and Cawkwell, Marc J., and Nicolas Bock},
year={2016},
url = {https://github.com/lanl/qmd-progress},
institution={Los Alamos National Laboratory (LANL), Los Alamos, NM (United States)}
}

Support acknowledges

This development is currently supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of two U.S. Department of Energy organizations (Office of Science and the National Nuclear Security Administration) responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering, and early testbed platforms, in support of the nation’s exascale computing imperative.

Basic Energy Sciences (LANL2014E8AN) and the Laboratory Directed Research and Development Program of Los Alamos National Laboratory. To tests these developments we used resources provided by the Los Alamos National Laboratory Institutional Computing Program, which is supported by the U.S. Department of Energy National Nuclear Security Administration

About

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver.

Topics

Resources

Contributing

Stars

28 stars

Watchers

15 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

This website is intended to provide some guidance on how to get and install the PROGRESS library. LA-UR number LA-UR-17-27372

IssuesPull RequestsCIDocker
GitHub issuesGitHub pull requestsGitHub ActionsDocker Pulls

A library for quantum chemistry solvers

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver. LA-CC-16-068

Authors

(in alphabetical order)

Contributors

Build Dependencies

  • >=OpenMP-3.1
  • >=metis-5.0 if building with PROGRESS_GRAPHLIB

Note that on some distributions, metis is available as a package. Make sure you install the -dev package. For example, Ubuntu requires libmetis-dev.

Testing in our CI container

We are switching our CI tests from Travis-CI to GitHub Actions because Travis-CI is limiting the number of builds for open source projects. Our workflow uses a custom Docker image which comes with the necessary compiler tool chain and a pre-installed bml library to build and test the qmd-progress library. Using docker is a convenient and quick way to develop, build, and test the qmd-progress library.

./scripts/run-local-docker-container.sh

Inside the container:

./build.sh compile

Alternatively, you can run one of the CI tests by executing e.g.

./scripts/ci-with-graphlib-debug.sh

Build and Install Instructions

How to build

CMAKE_PREFIX_PATH=<BML install path> ./build.sh

How to install

cd buildsudo make install

To specify the Intel Fortran compiler:

FC=ifort PKG_CONFIG_PATH=<BML install path>/lib/pkgconfig ./build.sh

To build with the gfortran compiler and OpenMP:

CC=gcc FC=gfortran \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI and testing enabled:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP, MPI, testing enabled and example programs built:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

To build with OpenMP and MPI and testing enabled and example programs built and the METIS graph partitioning library:

CC=mpicc FC=mpif90 \ CMAKE_BUILD_TYPE=Release \ PROGRESS_OPENMP=yes \ PROGRESS_MPI=yes \ PROGRESS_GRAPHLIB=yes \ PROGRESS_TESTING=yes \ PROGRESS_EXAMPLES=yes \ CMAKE_PREFIX_PATH=<BML install path> \ CMAKE_INSTALL_PREFIX=<PROGRESS install path> \ ./build.sh configure

Citing

@misc{2016progress,
title={\textrm{PROGRESS} Version 1.0},
author={Niklasson, Anders M. and Mniszewski, Susan M and Negre, Christian F. A. and Wall, Michael E. and Cawkwell, Marc J., and Nicolas Bock},
year={2016},
url = {https://github.com/lanl/qmd-progress},
institution={Los Alamos National Laboratory (LANL), Los Alamos, NM (United States)}
}

Support acknowledges

This development is currently supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of two U.S. Department of Energy organizations (Office of Science and the National Nuclear Security Administration) responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering, and early testbed platforms, in support of the nation’s exascale computing imperative.

Basic Energy Sciences (LANL2014E8AN) and the Laboratory Directed Research and Development Program of Los Alamos National Laboratory. To tests these developments we used resources provided by the Los Alamos National Laboratory Institutional Computing Program, which is supported by the U.S. Department of Energy National Nuclear Security Administration

About

PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver.

Topics

Resources

Contributing

Stars

28 stars

Watchers

15 watching

Forks

Releases

Packages

Used by

Contributors

Languages