docs: move uti installation / usage into install.rst / users.rst
Change-Id: Ie1fe1593bb957e5c5fb6085543ab647ec43fd8f6
This commit is contained in:
@@ -29,7 +29,7 @@ Install the following packages to the build machine:
|
|||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
cmake kernel-devel binutils-devel systemd-devel numactl-devel gcc make nasm git libdwarf-devel
|
cmake kernel-devel binutils-devel systemd-devel numactl-devel gcc make nasm git libdwarf-devel capstone-devel
|
||||||
|
|
||||||
When having access to repositories
|
When having access to repositories
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
@@ -46,17 +46,48 @@ On CentOS 8, enable the PowerTools repository:
|
|||||||
|
|
||||||
sudo dnf config-manager --set-enabled PowerTools
|
sudo dnf config-manager --set-enabled PowerTools
|
||||||
|
|
||||||
|
Enable EPEL repository:
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
||||||
|
|
||||||
Install with yum:
|
Install with yum:
|
||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
sudo yum install cmake kernel-devel binutils-devel systemd-devel numactl-devel gcc make nasm git libdwarf-devel
|
sudo yum install cmake kernel-devel binutils-devel systemd-devel numactl-devel gcc make nasm git libdwarf-devel capstone-devel
|
||||||
|
|
||||||
When not having access to repositories
|
When not having access to repositories
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
``libdwarf-devel``
|
||||||
|
""""""""""""""""""
|
||||||
|
|
||||||
Ask the system administrator to install them. Note that ``libdwarf-devel`` is in the CodeReady Linux Builder repository on RHEL 8 or in the PowerTools repository on CentOS 8.
|
Ask the system administrator to install them. Note that ``libdwarf-devel`` is in the CodeReady Linux Builder repository on RHEL 8 or in the PowerTools repository on CentOS 8.
|
||||||
|
|
||||||
|
``capstone-devel``
|
||||||
|
""""""""""""""""""
|
||||||
|
|
||||||
|
A. Ask the system administrator to install ``capstone-devel``. Note that it is in the EPEL repository.
|
||||||
|
|
||||||
|
B. Download the rpm with the machine in which you are the administrator:
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
||||||
|
sudo yum install yum-utils
|
||||||
|
yumdownloader capstone-devel
|
||||||
|
|
||||||
|
And then install it to your home directory:
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
cd $HOME/$(uname -p)
|
||||||
|
rpm2cpio capstone-devel-4.0.1-9.el8.aarch64.rpm | cpio -idv
|
||||||
|
sed -i 's#/usr/#'"$HOME"'/'"$(uname -p)"'/usr/#' $HOME/$(uname -p)/usr/lib64/pkgconfig/capstone.pc
|
||||||
|
|
||||||
|
|
||||||
Clone, compile, install
|
Clone, compile, install
|
||||||
--------------------------
|
--------------------------
|
||||||
|
|
||||||
@@ -93,7 +124,12 @@ When not cross-compiling:
|
|||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
cmake -DCMAKE_INSTALL_PREFIX=${HOME}/ihk+mckernel ../mckernel
|
CMAKE_PREFIX_PATH=${HOME}/$(uname -p)/usr \
|
||||||
|
cmake -DCMAKE_INSTALL_PREFIX=${HOME}/ihk+mckernel \
|
||||||
|
-DENABLE_UTI=ON \
|
||||||
|
../mckernel
|
||||||
|
|
||||||
|
Note that ``CMAKE_PREFIX_PATH=${HOME}/$(uname -p)/usr`` is required only when ``capstone-devel`` is installed to your home directory.
|
||||||
|
|
||||||
When cross-compiling:
|
When cross-compiling:
|
||||||
~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~
|
||||||
@@ -105,10 +141,11 @@ When cross-compiling:
|
|||||||
-DKERNEL_DIR=<kernnel_dir> \
|
-DKERNEL_DIR=<kernnel_dir> \
|
||||||
-DBUILD_TARGET=smp-arm64 \
|
-DBUILD_TARGET=smp-arm64 \
|
||||||
-DCMAKE_TOOLCHAIN_FILE=../mckernel/cmake/cross-aarch64.cmake \
|
-DCMAKE_TOOLCHAIN_FILE=../mckernel/cmake/cross-aarch64.cmake \
|
||||||
|
-DENABLE_UTI=ON \
|
||||||
../mckernel
|
../mckernel
|
||||||
|
|
||||||
Install with cmake
|
Install with cmake
|
||||||
~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
Install with make:
|
Install with make:
|
||||||
|
|
||||||
@@ -191,10 +228,10 @@ Install the following packages to the compute nodes:
|
|||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
systemd-libs numactl-libs libdwarf
|
systemd-libs numactl-libs libdwarf capstone
|
||||||
|
|
||||||
When having access to repositories
|
When having access to repositories
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
On RHEL 8, enable the CodeReady Linux Builder (CLB) repository:
|
On RHEL 8, enable the CodeReady Linux Builder (CLB) repository:
|
||||||
|
|
||||||
@@ -208,13 +245,42 @@ On CentOS 8, enable the PowerTools repository:
|
|||||||
|
|
||||||
sudo dnf config-manager --set-enabled PowerTools
|
sudo dnf config-manager --set-enabled PowerTools
|
||||||
|
|
||||||
|
Enable EPEL repository:
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
||||||
|
|
||||||
Install with yum:
|
Install with yum:
|
||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
sudo yum install systemd-libs numactl-libs libdwarf
|
sudo yum install systemd-libs numactl-libs libdwarf capstone
|
||||||
|
|
||||||
When not having access to repositories
|
When not having access to repositories
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
``libdwarf``
|
||||||
|
""""""""""""
|
||||||
|
|
||||||
Ask the system administrator to install them. Note that ``libdwarf`` is in the CodeReady Linux Builder repository on RHEL 8 or in the PowerTools repository on CentOS 8.
|
Ask the system administrator to install them. Note that ``libdwarf`` is in the CodeReady Linux Builder repository on RHEL 8 or in the PowerTools repository on CentOS 8.
|
||||||
|
|
||||||
|
``capstone``
|
||||||
|
""""""""""""
|
||||||
|
|
||||||
|
A. Ask the system administrator to install ``capstone``. Note that it is in the EPEL repository.
|
||||||
|
|
||||||
|
B. Download the rpm with the machine in which you are the administrator:
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
||||||
|
sudo yum install yum-utils
|
||||||
|
yumdownloader capstone
|
||||||
|
|
||||||
|
and then install it to your home directory:
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
cd $HOME/$(uname -p)
|
||||||
|
rpm2cpio capstone-4.0.1-9.el8.aarch64.rpm | cpio -idv
|
||||||
|
|||||||
@@ -7,12 +7,10 @@ This document will explain how to operate system with McKernel.
|
|||||||
Installation
|
Installation
|
||||||
============
|
============
|
||||||
|
|
||||||
See `Quick Guide -- Installation <quick.html#installation>`__.
|
Follow `Quick Guide -- Installation <quick.html#installation>`__.
|
||||||
|
|
||||||
.. include:: uti.rst
|
|
||||||
|
|
||||||
Boot and Shut-down
|
Boot and Shut-down
|
||||||
=========================
|
==================
|
||||||
|
|
||||||
Related files
|
Related files
|
||||||
-------------
|
-------------
|
||||||
|
|||||||
@@ -55,11 +55,11 @@ You need to insert ``mcexec`` into the command lines invoking the programs that
|
|||||||
Non-MPI programs
|
Non-MPI programs
|
||||||
~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
Insert ``mcexec`` before an executable:
|
Insert ``mcexec`` before the command:
|
||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
mcexec ./a.out
|
mcexec <command>
|
||||||
|
|
||||||
MPI programs
|
MPI programs
|
||||||
~~~~~~~~~~~~
|
~~~~~~~~~~~~
|
||||||
@@ -96,6 +96,19 @@ Fujitsu Technical Computing Suite.
|
|||||||
#PJM --mpi "proc=32"
|
#PJM --mpi "proc=32"
|
||||||
#PJM -L "node=8"
|
#PJM -L "node=8"
|
||||||
|
|
||||||
|
(Advanced) When using Utility Thread offloading Interface (UTI)
|
||||||
|
---------------------------------------------------------------
|
||||||
|
|
||||||
|
UTI enables a runtime such as MPI runtime to spawn utility threads such
|
||||||
|
as MPI asynchronous progress threads to Linux cores.
|
||||||
|
|
||||||
|
Add ``--enable-uti`` option to ``mcexec``:
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
mcexec --enable-uti <command>
|
||||||
|
|
||||||
|
|
||||||
Limitations
|
Limitations
|
||||||
===========
|
===========
|
||||||
|
|
||||||
|
|||||||
94
docs/uti.rst
94
docs/uti.rst
@@ -1,94 +0,0 @@
|
|||||||
Advanced: Enable Utility Thread offloading Interface (UTI)
|
|
||||||
-------------------------------------------------------------
|
|
||||||
|
|
||||||
UTI enables a runtime such as MPI runtime to spawn utility threads such
|
|
||||||
as MPI asynchronous progress threads to Linux cores.
|
|
||||||
|
|
||||||
Install ``capstone`` and ``capstone-devel``
|
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
When compute nodes don't have access to EPEL repository
|
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
||||||
|
|
||||||
Install EPEL ``capstone`` and ``capstone-devel``:
|
|
||||||
|
|
||||||
::
|
|
||||||
|
|
||||||
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
|
||||||
sudo yum install capstone capstone-devel
|
|
||||||
|
|
||||||
|
|
||||||
When compute nodes don't have access to EPEL repository
|
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
||||||
|
|
||||||
A. Ask the system administrator to install ``capstone`` and ``capstone-devel``. Note that it is in the EPEL repository.
|
|
||||||
|
|
||||||
B. Download the rpm with the machine in which you are the administrator:
|
|
||||||
|
|
||||||
::
|
|
||||||
|
|
||||||
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
|
||||||
sudo yum install yum-utils
|
|
||||||
yumdownloader capstone capstone-devel
|
|
||||||
|
|
||||||
and then install it to your home directory of the login node:
|
|
||||||
|
|
||||||
::
|
|
||||||
|
|
||||||
cd $HOME/$(uname -p)
|
|
||||||
rpm2cpio capstone-4.0.1-9.el8.aarch64.rpm | cpio -idv
|
|
||||||
rpm2cpio capstone-devel-4.0.1-9.el8.aarch64.rpm | cpio -idv
|
|
||||||
sed -i 's#/usr/#'"$HOME"'/'"$(uname -p)"'/usr/#' $HOME/$(uname -p)/usr/lib64/pkgconfig/capstone.pc
|
|
||||||
|
|
||||||
|
|
||||||
Install McKernel
|
|
||||||
~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
``cmake`` with the additional options:
|
|
||||||
|
|
||||||
::
|
|
||||||
|
|
||||||
cmake -DCMAKE_INSTALL_PREFIX=${HOME}/ihk+mckernel -DENABLE_UTI=ON $HOME/src/ihk+mckernel/mckernel
|
|
||||||
make -j install
|
|
||||||
|
|
||||||
Run programs
|
|
||||||
~~~~~~~~~~~~
|
|
||||||
|
|
||||||
``mcexec`` with ``--enable-uti`` option:
|
|
||||||
|
|
||||||
::
|
|
||||||
|
|
||||||
mcexec --enable-uti <command>
|
|
||||||
|
|
||||||
(Optional) Install UTI for Linux
|
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
You can skip this step if you don't want to develop a run-time using UTI, or if it's already installed with, for example, Fujitsu Technical Computing Suite.
|
|
||||||
|
|
||||||
Install by make
|
|
||||||
"""""""""""""""
|
|
||||||
|
|
||||||
.. code-block:: none
|
|
||||||
|
|
||||||
git clone https://github.com/RIKEN-SysSoft/uti.git
|
|
||||||
mkdir build && cd build
|
|
||||||
../uti/configure --prefix=<uti-install> --with-rm=linux
|
|
||||||
make && make install
|
|
||||||
|
|
||||||
Install by rpm
|
|
||||||
""""""""""""""
|
|
||||||
|
|
||||||
.. code-block:: none
|
|
||||||
|
|
||||||
git clone https://github.com/RIKEN-SysSoft/uti.git
|
|
||||||
mkdir build && cd build
|
|
||||||
../uti/configure --prefix=<uti-install> --with-rm=linux
|
|
||||||
rm -f ~/rpmbuild/SOURCES/<version>.tar.gz
|
|
||||||
rpmbuild -ba ./scripts/uti.spec
|
|
||||||
rpm -Uvh uti-<version>-<release>-<arch>.rpm
|
|
||||||
|
|
||||||
(Optional) Install UTI for McKernel
|
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
You can skip this step if you don't want to develop a run-time using UTI.
|
|
||||||
Execute the commands above for installing UTI for Linux, with ``--with-rm=linux`` replaced with ``--with-rm=mckernel``.
|
|
||||||
Reference in New Issue
Block a user