GithubHelp home page GithubHelp logo

hiptensor-1's Introduction

hipTensor

Welcome! hiptensor is AMD's C++ library for accelerating tensor primitives using GPU matrix cores on AMD's latest discrete GPUs.

Requirements

hipTensor currently supports the following AMDGPU architectures:

  • CDNA class GPU featuring matrix core support: gfx908, gfx90a, gfx940, gfx941, gfx942 as 'gfx9'

:::{note} Double precision FP64 datatype support requires gfx90a, gfx940, gfx941 or gfx942 :::

Dependencies:

  • Minimum ROCm version support is 6.0.
  • Minimum cmake version support is 3.14.
  • Minimum ROCm-cmake version support is 0.8.0.
  • Minimum Composable Kernel version support is composable_kernel 1.1.0 for ROCm 6.0.2 (or ROCm package composablekernel-dev).
  • Minimum HIP runtime version support is 4.3.0 (or ROCm package ROCm hip-runtime-amd).
  • Minimum LLVM dev package version support is 10.0 (available as ROCm package rocm-llvm-dev).

Optional:

  • doxygen (for building documentation)

Build with CMake

For more detailed information, please refer to the hipTensor installation guide.

Project options

Option Description Default Value
AMDGPU_TARGETS Build code for specific GPU target(s) gfx908:xnack-;gfx90a:xnack-;gfx90a:xnack+;gfx940;gfx941;gfx942
HIPTENSOR_BUILD_TESTS Build Tests ON
HIPTENSOR_BUILD_SAMPLES Build Samples ON
HIPTENSOR_BUILD_COMPRESSED_DBG Enable compressed debug symbols ON
HIPTENSOR_DATA_LAYOUT_COL_MAJOR Set hiptensor default data layout to column major ON

Example configurations

By default, the project is configured as Release mode. Here are some of the examples for the configuration:

Configuration Command
Basic CC=hipcc CXX=hipcc cmake -B<build_dir> .
Targeting gfx908 CC=hipcc CXX=hipcc cmake -B<build_dir> . -DAMDGPU_TARGETS=gfx908:xnack-
Debug build CC=hipcc CXX=hipcc cmake -B<build_dir> . -DCMAKE_BUILD_TYPE=Debug
Build without tests (default on) CC=hipcc CXX=hipcc cmake -B<build_dir> . -DHIPTENSOR_BUILD_TESTS=OFF

After configuration, build with cmake --build <build_dir> -- -j<nproc>.

Documentation

For more comprehensive documentation on installation, samples and test contents, API reference and programmer's guide you can build the documentation locally using the following commands:

cd docs

pip3 install -r sphinx/requirements.txt

python3 -m sphinx -T -E -b html -d _build/doctrees -D language=en . _build/html

The HTML documentation can be viewed in your browser by opening docs/_build/html/index.html result.

The latest official documentation for hipTensor is available at: https://rocm.docs.amd.com/projects/hipTensor/en/latest/index.html.

Contributing to the hipTensor Library

Community collaboration is encouraged! If you are considering contributing, please follow the hipTensor Contribution Guide to get started.

hiptensor-1's People

Contributors

cgmillette avatar congma13 avatar inumellc avatar dependabot[bot] avatar mkarunan avatar dlangbe avatar samjwu avatar afanfa avatar parbenc avatar illsilin avatar lisadelaney avatar abhimeda avatar neon60 avatar lawruble13 avatar arvindcheru avatar swraw avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.