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

.. _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
To build TransferBench using Makefile, use:
24
25
26

.. code-block:: bash

srawat's avatar
srawat committed
27
  make
28

srawat's avatar
srawat committed
29
To build TransferBench using CMake, use:
30
31
32

.. code-block:: bash

srawat's avatar
srawat committed
33
34
35
36
  mkdir build
  cd build
  CXX=/opt/rocm/bin/hipcc cmake ..
  make
37

srawat's avatar
srawat committed
38
.. note::
39

srawat's avatar
srawat committed
40
41
42
43
44
45
46
47
48
49
  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
50
  pip3 install -r ./sphinx/requirements.txt
srawat's avatar
srawat committed
51
  python3 -m sphinx -T -E -b html -d _build/doctrees -D language=en . _build/html
52
53
54
55

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

srawat's avatar
srawat committed
56
57
58
59
60
61
62
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
63

srawat's avatar
srawat committed
64
TransferBench looks for NVCC in ``/usr/local/cuda`` by default. To modify the location of NVCC, use environment variable `CUDA_PATH`:
65
66
67

.. code-block:: bash

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