install.rst 1.89 KB
Newer Older
1
.. meta::
srawat's avatar
srawat committed
2
  :description: TransferBench is a utility to benchmark simultaneous transfers between user-specified devices (CPUs or GPUs)
srawat's avatar
srawat committed
3
  :keywords: Build TransferBench, Install TransferBench
srawat's avatar
srawat committed
4
5

.. _install-transferbench:
6
7

---------------------------
srawat's avatar
srawat committed
8
Installing TransferBench
9
10
---------------------------

srawat's avatar
srawat committed
11
This topic describes how to build TransferBench.
12

srawat's avatar
srawat committed
13
14
15
16
17
18
Prerequisite
---------------

* Install ROCm stack on the system to obtain :doc:`HIP runtime <hip:index>`
* Install ``libnuma`` on the system
* `Enable AMD IOMMU <https://rocm.docs.amd.com/en/latest/how-to/system-optimization/mi300x.html#iommu-configuration-systems-with-256-cpu-threads>`_ and set to passthrough for AMD Instinct cards
19
20

Building TransferBench
srawat's avatar
srawat committed
21
------------------------
22

srawat's avatar
srawat committed
23
Here are the steps to build TransferBench:
24

srawat's avatar
srawat committed
25
1. Download the latest version of TransferBench from the git repository.
26

srawat's avatar
srawat committed
27
   .. code-block:: bash
28

srawat's avatar
srawat committed
29
30
    git clone https://github.com/ROCm/TransferBench.git
    cd TransferBench
31

srawat's avatar
srawat committed
32
2. Build TransferBench using Makefile.
33

srawat's avatar
srawat committed
34
35
36
37
38
39
40
41
42
43
44
45
   .. code-block:: bash

    make

3. Build TransferBench using CMake.

   .. code-block:: bash

    mkdir build
    cd build
    CXX=/opt/rocm/bin/hipcc cmake ..
    make
46

srawat's avatar
srawat committed
47
.. note::
48

srawat's avatar
srawat committed
49
50
51
52
53
54
55
56
57
58
  If ROCm is installed in a folder other than ``/opt/rocm/``, set ``ROCM_PATH`` appropriately.

Building documentation
-----------------------

To build documentation locally, use:

.. code-block:: bash

  cd docs
59
  pip3 install -r ./sphinx/requirements.txt
srawat's avatar
srawat committed
60
  python3 -m sphinx -T -E -b html -d _build/doctrees -D language=en . _build/html
61
62
63
64

NVIDIA platform support
--------------------------

srawat's avatar
srawat committed
65
66
67
68
69
70
71
You can build TransferBench to run on NVIDIA platforms using native NVIDIA CUDA Compiler Driver (NVCC).

To build with native NVCC, use:

.. code-block:: bash

  make
72

srawat's avatar
srawat committed
73
TransferBench looks for NVCC in ``/usr/local/cuda`` by default. To modify the location of NVCC, use environment variable `CUDA_PATH`:
74
75
76

.. code-block:: bash

srawat's avatar
srawat committed
77
  CUDA_PATH=/usr/local/cuda make