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

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

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

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

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

Swati Rawat's avatar
Swati Rawat committed
32
2. Build TransferBench using Makefile or CMake.
33

Swati Rawat's avatar
Swati Rawat committed
34
35
36
37
38
39
40
41
42
43
44
45
46
47
   To build using Makefile, use:

   .. code-block:: bash

    make

   To build using CMake, use:

   .. 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