Egbert Eich
56ffc9a15e
* Features in this Release + Spec splicing To make binary installation more seamless in Spack, `v0.23` introduces "splicing", which allows users to deploy binaries using local, optimized versions of a binary interface, even if they were not built with that interface. For example, this would allow you to build binaries in the cloud using `mpich` and install them on a system using a local, optimized version of `mvapich2` *without rebuilding*. Spack preserves full provenance for the installed packages and knows that they were built one way but deployed another. The intent is to leverage this across many key HPC binary packages, e.g. MPI, CUDA, ROCm, and libfabric. Fundamentally, splicing allows Spack to redeploy an existing spec with different dependencies than how it was built. There are two interfaces to splicing. a. Explicit Splicing In the concretizer config, you can specify a target spec and a replacement by hash. ```yaml concretizer: splice: explicit: - target: mpi replacement: mpich/abcdef ``` Here, every installation that would normally use the target spec will instead use its replacement. Above, any spec using *any* `mpi` will be spliced to depend on the specific `mpich` OBS-URL: https://build.opensuse.org/package/show/network:cluster/spack?expand=0&rev=111
70 lines
2.9 KiB
Diff
70 lines
2.9 KiB
Diff
From 1221c1f6b68cbba3a14592a686aec742b5fd02d2 Mon Sep 17 00:00:00 2001
|
|
From: Christian Goll <cgoll@suse.de>
|
|
Date: Fri, 11 Dec 2020 15:37:48 +0100
|
|
Subject: [PATCH] added target and os calls to output of spack spec commands
|
|
|
|
---
|
|
lib/spack/docs/developer_guide.rst | 2 +-
|
|
lib/spack/docs/getting_started.rst | 2 +-
|
|
lib/spack/docs/packaging_guide.rst | 6 +++---
|
|
3 files changed, 5 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/lib/spack/docs/developer_guide.rst b/lib/spack/docs/developer_guide.rst
|
|
index 4dc8d1249d..42b67425ab 100644
|
|
--- a/lib/spack/docs/developer_guide.rst
|
|
+++ b/lib/spack/docs/developer_guide.rst
|
|
@@ -758,7 +758,7 @@ supply ``--profile`` to Spack on the command line, before any subcommands.
|
|
|
|
``spack --profile`` output looks like this:
|
|
|
|
-.. command-output:: spack --profile graph hdf5
|
|
+.. command-output:: spack --profile graph hdf5 os=SUSE target=x86_64
|
|
:ellipsis: 25
|
|
|
|
The bottom of the output shows the top most time consuming functions,
|
|
diff --git a/lib/spack/docs/getting_started.rst b/lib/spack/docs/getting_started.rst
|
|
index 3c077490a2..0a0a0d0913 100644
|
|
--- a/lib/spack/docs/getting_started.rst
|
|
+++ b/lib/spack/docs/getting_started.rst
|
|
@@ -204,7 +204,7 @@ Check Installation
|
|
With Spack installed, you should be able to run some basic Spack
|
|
commands. For example:
|
|
|
|
-.. command-output:: spack spec netcdf-c
|
|
+.. command-output:: spack spec netcdf-c target=x86_64 os=SUSE
|
|
|
|
In theory, Spack doesn't need any additional installation; just
|
|
download and run! But in real life, additional steps are usually
|
|
diff --git a/lib/spack/docs/packaging_guide.rst b/lib/spack/docs/packaging_guide.rst
|
|
index 586fdcec6e..1a7e23c426 100644
|
|
--- a/lib/spack/docs/packaging_guide.rst
|
|
+++ b/lib/spack/docs/packaging_guide.rst
|
|
@@ -6382,13 +6382,13 @@ Spack provides the ``spack graph`` command for graphing dependencies.
|
|
The command by default generates an ASCII rendering of a spec's
|
|
dependency graph. For example:
|
|
|
|
-.. command-output:: spack graph hdf5
|
|
+.. command-output:: spack graph hdf5 target=x86_64 os=SUSE
|
|
|
|
At the top is the root package in the DAG, with dependency edges emerging
|
|
from it. On a color terminal, the edges are colored by which dependency
|
|
they lead to.
|
|
|
|
-.. command-output:: spack graph --deptype=link hdf5
|
|
+.. command-output:: spack graph --deptype=link hdf5 target=x86_64 os=SUSE
|
|
|
|
The ``deptype`` argument tells Spack what types of dependencies to graph.
|
|
By default it includes link and run dependencies but not build
|
|
@@ -6403,7 +6403,7 @@ dependencies. The default is ``--deptype=all``, which is equivalent to
|
|
You can also use ``spack graph`` to generate graphs in the widely used
|
|
`Dot <http://www.graphviz.org/doc/info/lang.html>`_ format. For example:
|
|
|
|
-.. command-output:: spack graph --dot hdf5
|
|
+.. command-output:: spack graph --dot hdf5 target=x86_64 os=SUSE
|
|
|
|
This graph can be provided as input to other graphing tools, such as
|
|
those in `Graphviz <http://www.graphviz.org>`_. If you have graphviz
|
|
--
|
|
2.40.1
|
|
|