Skip to content

Commit

Permalink
Qn solver cleanup (#699)
Browse files Browse the repository at this point in the history
* reorganized KKT linear system class for I+LowRank

* Id plus low-rank Hessian

* updated member methods names

* fixed compilation errors due to renaming

* renaming and removed unnecessary member variables

* renamed HessianLowRank class and files

* renamed methods, added authors

* fixed incorrect extension in file name comment

* Update spack_build.yml to fix cmake pulling llvm (#698)

* Update spack_build.yml to fix cmake pulling llvm

* Update spack_build.yml to specify cmake requirements for all packages, and re-enable build cache

* Move openblas into direct package spec

* Specify openblas in a different way

* Try re-using builds for quicker pipelines

* Add some comments and move libevent version spec

---------

Co-authored-by: Cameron Rutherford <[email protected]>
  • Loading branch information
cnpetra and cameronrutherford authored Nov 11, 2024
1 parent 5a21034 commit 5c19c76
Showing 1 changed file with 23 additions and 10 deletions.
33 changes: 23 additions & 10 deletions .github/workflows/spack_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -99,13 +99,16 @@ jobs:
strategy:
matrix:
spack_spec:
- hiop@develop+mpi~raja~shared~kron~sparse ^openblas ^openmpi ^libevent~openssl
- hiop@develop~mpi~raja~shared~kron~sparse ^openblas ^libevent~openssl
- hiop@develop~mpi+raja~shared~kron~sparse ^openblas ^libevent~openssl

# We will need coinhsl for this, but what are the rules for using
# a coinhsl tarball?
# - hiop@develop~mpi~raja~shared~kron+sparse
- hiop@develop+mpi~raja~shared~kron~sparse ^openmpi
- hiop@develop~mpi~raja~shared~kron~sparse
- hiop@develop~mpi+raja~shared~kron~sparse
# We will need coinhsl for this, but what are the rules for using
# a coinhsl tarball?
# - hiop@develop~mpi~raja~shared~kron+sparse
blas_provider:
- openblas
compiler:
- gcc

name: Build HiOp with Spack

Expand All @@ -130,8 +133,10 @@ jobs:
spack:
specs:
- ${{ matrix.spack_spec }} target=x86_64_v2
- ${{ matrix.blas_provider }} target=x86_64_v2
concretizer:
reuse: dependencies
reuse: true # We want to re-use existing binaries in spack / GHCR mirror
unify: true # We want to build the openblas and hiop version together!
config:
source_cache: $SPACK_CACHE/source_cache
misc_cache: $SPACK_CACHE/misc_cache
Expand All @@ -141,10 +146,18 @@ jobs:
padded_length: False
mirrors:
local-buildcache: oci://${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
# spack: https://binaries.spack.io/develop
# If the spack buildcache fails for any readon, feel free to disable
spack: https://binaries.spack.io/develop
packages:
all:
require: "%gcc"
require: "%${{ matrix.compiler }}"
# https://spack.readthedocs.io/en/latest/packages_yaml.html#setting-requirements-on-virtual-specs
cmake:
# We don't need CMake GUI features for minimal container builds
require: "~qtgui~ncurses"
libevent:
# Building OpenSSL was causing errors
require: "~openssl"
EOF
- name: Configure GHCR mirror
Expand Down

0 comments on commit 5c19c76

Please sign in to comment.