install.rst 1.92 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
33
34
2. Build TransferBench using Makefile or CMake.

   To build using Makefile, use:
35

srawat's avatar
srawat committed
36
37
38
39
   .. code-block:: bash

    make

srawat's avatar
srawat committed
40
   To build using CMake, use:
srawat's avatar
srawat committed
41
42
43
44
45
46
47

   .. code-block:: bash

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

srawat's avatar
srawat committed
49
.. note::
50

srawat's avatar
srawat committed
51
52
53
54
55
56
57
58
59
60
  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
61
  pip3 install -r ./sphinx/requirements.txt
srawat's avatar
srawat committed
62
  python3 -m sphinx -T -E -b html -d _build/doctrees -D language=en . _build/html
63
64
65
66

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

srawat's avatar
srawat committed
67
68
69
70
71
72
73
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
74

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

.. code-block:: bash

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