Skip to content

Commit 57e92be

Browse files
committed
Update instructions for organization and for offline install
1 parent 4701e8c commit 57e92be

File tree

12 files changed

+83
-59
lines changed

12 files changed

+83
-59
lines changed

doc/installation_instructions/platform/generic.rst renamed to doc/installation_instructions/install_notes/generic.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Customizing environment variables
2-
=================================
2+
---------------------------------
33

44
Various environment variables can be used to control the compilers and
55
dependencies for SmartSim. These are particularly important to set before the
@@ -21,7 +21,7 @@ Toolkit libraries findable by the link loader (e.g. available in the
2121
``LD_LIBRARY_PATH`` environment variable).
2222

2323
Compiler environment
24-
--------------------
24+
^^^^^^^^^^^^^^^^^^^^
2525

2626
Unlike SmartRedis, we *strongly* encourage users to only use the GNU compiler
2727
chain to build the SmartSim dependencies. Notably, RedisAI has some coding
@@ -33,7 +33,7 @@ the following environment variables will control the C and C++ compilers:
3333
- ``CXX``: Path the C++ compiler
3434

3535
CUDA-related
36-
------------
36+
^^^^^^^^^^^^
3737

3838
The following environment variables help the ``smart build`` step find and link in the
3939
CUDA Toolkit and cuDNN libraries needed to build the ML backends.

doc/installation_instructions/platform/nonroot-linux.rst renamed to doc/installation_instructions/install_notes/nonroot-linux.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
GPU dependencies (non-root)
2-
===========================
2+
---------------------------
33

44
The Nvidia installation instructions for CUDA Toolkit and cuDNN tend to be
55
tailored for users with root access. For those on HPC platforms where root
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
Non-internet machines
2+
---------------------
3+
4+
SmartSim implictly assumes that dependencies can be retrieved via the Internet.
5+
The ``smart build`` step can be bypassed by transferring the build artifacts
6+
from a different machine.
7+
8+
.. warning::
9+
10+
The Redis Source Available License (which licenses RedisAI) prohibits
11+
distributing binaries to third-parties. Thus, compiled binaries should not
12+
be shared outside of your organization (see `RSAL v2
13+
<https://redis.io/legal/rsalv2-agreement/>`_).
14+
15+
16+
The easiest way to accomplish this assumes that you have a machine that can be
17+
connected to the internet and has built SmartSim (referred to as Machine A).
18+
This machine should have a similar compilation and build environment as the
19+
target machine (referred to as Machine B) to ensure compatibility.
20+
21+
**Step 1:** Note the path to SmartSim's ``core`` directory on Machine A
22+
23+
.. code::
24+
25+
smart info
26+
27+
**Step 2:** tar the ``bin`` and ``lib`` directories
28+
29+
.. code::
30+
31+
tar -cf smartsim_build_artifacts.tar -C <core_path> bin/ lib/
32+
33+
**Step 3:** Copy the tarball to Machine B (method will vary by machine)
34+
35+
**Step 4:** pip install SmartSim on Machine B

doc/installation_instructions/platform.rst

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,36 @@
11
.. _install-notes:
22

3-
Installation on specific platforms
4-
==================================
3+
General Installation Notes
4+
==========================
55

6-
The following describes installation details for various systems and platforms
7-
that SmartSim may be used on.
6+
SmartSim has been installed on a variety of systems and our users often have
7+
different build environments and toolchains. The following two sections detail
8+
some common situations and how to setup and modify your build environment:
89

910
.. include:: platform/generic.rst
1011

1112
.. include:: platform/nonroot-linux.rst
1213

14+
Installation guides for specific platforms
15+
==========================================
16+
17+
HPC platforms have specific modules that users can often use so they do not
18+
need to retrieve all of the build dependencies themselves. Some machines
19+
have specific environment variables and/or configuration settings that need
20+
to be set for optimal performance. The below machines have vetted
21+
instructions, please feel free to contribute instructions for your own
22+
machine.
23+
1324
.. include:: platform/frontier.rst
1425

1526
.. include:: platform/perlmutter.rst
1627

1728
.. include:: platform/cray.rst
1829

19-
.. include:: platform/ncar-cheyenne.rst
30+
.. include:: platform/pml-scylla.rst
2031

2132
.. include:: platform/olcf-summit.rst
2233

23-
.. include:: platform/pml-scylla.rst
24-
2534
.. _site_installation:
2635

2736
.. include:: site-install.rst

doc/installation_instructions/platform/cray.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
HPE Cray supercomputers
2-
=======================
2+
-----------------------
33

44
On certain HPE Cray machines, the SmartSim dependencies have been installed
55
system-wide though specific paths and names might vary (please contact the team

doc/installation_instructions/platform/frontier.rst

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ OLCF Frontier
22
=============
33

44
Known limitations
5-
-----------------
5+
^^^^^^^^^^^^^^^^^
66

77
We are continually working on getting all the features of SmartSim working on
88
Frontier, however we do have some known limitations:
@@ -23,7 +23,7 @@ Please raise an issue in the SmartSim Github or contact the developers if the ab
2323
issues are affecting your workflow or if you find any other problems.
2424

2525
One-time Setup
26-
--------------
26+
^^^^^^^^^^^^^^
2727

2828
To install the SmartRedis and SmartSim python packages on Frontier, please follow
2929
these instructions, being sure to set the following variables
@@ -63,7 +63,7 @@ these instructions, being sure to set the following variables
6363

6464
.. code:: bash
6565
66-
smart build --device=rocm-6
66+
smart build ^^device=rocm-6
6767
6868
**Step 5:** Check that SmartSim has been installed and built correctly:
6969

@@ -76,7 +76,7 @@ these instructions, being sure to set the following variables
7676
mkdir -p $MIOPEN_USER_DB_PATH
7777
7878
# Run the install validation utility
79-
smart validate --device gpu
79+
smart validate ^^device gpu
8080
8181
The following output indicates a successful install:
8282

@@ -87,7 +87,7 @@ The following output indicates a successful install:
8787
16:26:35 login SmartSim[557020:MainThread] INFO Success!
8888
8989
Post-installation
90-
-----------------
90+
^^^^^^^^^^^^^^^^^
9191

9292
Before running SmartSim, the environment should match the one used to
9393
build, and some variables should be set to optimize performance:
@@ -109,7 +109,7 @@ build, and some variables should be set to optimize performance:
109109
mkdir -p ${MIOPEN_USER_DB_PATH}
110110
111111
Binding DBs to Slingshot
112-
------------------------
112+
^^^^^^^^^^^^^^^^^^^^^^^^
113113

114114
Each Frontier node has *four* NICs, which also means users need to bind
115115
DBs to *four* network interfaces, ``hsn0``, ``hsn1``, ``hsn2``,

doc/installation_instructions/platform/ncar-cheyenne.rst

Lines changed: 0 additions & 33 deletions
This file was deleted.

doc/installation_instructions/platform/olcf-summit.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11

22
Summit at OLCF
3-
==============
3+
--------------
44

55
Since SmartSim does not have a built PowerPC build, the build steps for an IBM
66
system are slightly different than other systems.

doc/installation_instructions/platform/perlmutter.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
NERSC Perlmutter
2-
================
2+
----------------
33

44
One-time Setup
5-
--------------
5+
^^^^^^^^^^^^^^
66

77
To install SmartSim on Perlmutter, follow these steps:
88

@@ -53,7 +53,7 @@ The following output indicates a successful install:
5353
16:26:35 login SmartSim[557020:MainThread] INFO Success!
5454
5555
Post-installation
56-
-----------------
56+
^^^^^^^^^^^^^^^^^
5757

5858
After completing the above steps to install SmartSim in a conda environment, you
5959
can reload the conda environment by running the following commands:

doc/installation_instructions/platform/pml-scylla.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
PML Scylla
2-
==========
2+
----------
33

44
.. warning::
55
As of September 2024, the software stack on Scylla is still being finalized.
66
Therefore, please consider these instructions as preliminary for now.
77

88
One-time Setup
9-
--------------
9+
^^^^^^^^^^^^^^
1010

1111
To install SmartSim on Scylla, follow these steps:
1212

@@ -72,7 +72,7 @@ The following output indicates a successful install:
7272
16:26:35 login SmartSim[557020:MainThread] INFO Success!
7373
7474
Post-installation
75-
-----------------
75+
^^^^^^^^^^^^^^^^^
7676

7777
After completing the above steps to install SmartSim in a conda environment, you
7878
can reload the conda environment by running the following commands:

0 commit comments

Comments
 (0)