AMD HIP SDK Now Available: Making CUDA Applications Run Across Consumer, Pro GPUs & APUs

AMD HIP SDK Now Available: Making CUDA Applications Run Across Consumer, Pro GPUs & APUs 1

AMD's HIP SDK is now available as a part of the ROCm ecosystem bringing CUDA support for professional and consumer GPUs.

AMD's HIP SDK In An Open-Source ROCm Solution To Make Porting CUDA Applications Easy Across Consumer & Professional GPUs

Today's launch of the HIP SDK essentially helps port a CUDA application into a simplified C++ code base that can be compiled to run on both AMD or NVIDIA GPUs easier. Furthermore, AMD expands the HIP SDK not only to its professional GPUs but also consumer-level hardware such as Radeon.

Things the HIP SDK can do

  • Convert an existing CUDA application to run on AMD GPUs
  • Do so without the need to contact AMD for support
  • Port GPU-accelerated graphics and simulation tools to AMD hardware

An interesting thing about HIP SDK is that it will work across all professional, workstation, & gaming GPU families and is also supported by AMD's APUs. The full list of GPUs supported by the AMD HIP SDK includes:

  • Radeon VII
  • Radeon RX Vega Series
  • Radeon RX 5000 Series
  • Radeon RX 6000 Series
  • Radeon RX 7000 Series
  • Radeon Pro WX 9100
  • Radeon Pro W6000 Series

You will also require to run the latest drivers which are Radeon Software 21.12.1 or Radeon PRO Software 21.Q4 for Windows and Radeon Software 22.10 or ROCm 5.3 for Linux. Following is what AMD's HIP SDK aims to offer:

Why do you need the HIP SDK?

We know that developers of GPU-accelerated applications want to give their users the freedom to choose which hardware they use. But to do so used to mean maintaining two separate code bases: one for NVIDIA, using its proprietary CUDA API, and one for other GPUs – not easy to do, particularly if you're a small team. That's where HIP, and now the new HIP SDK, comes in.

HIP is a free and open-source runtime API and kernel language. With it, you can convert an existing CUDA application into a single C++ code base that can be compiled to run on AMD or NVIDIA GPUs, although you can still write platform-specific features if you need to. The HIP SDK provides tools to make that process easier.

How is HIP different from ROCm?

HIP is part of AMD ROCm, our open-source platform for GPU computing. But whereas the AMD ROCm platform is focused on HPC and AI, particularly server-based solutions, HIP is designed for desktop applications. You can use it on Windows as well as Linux, and it doesn't come with machine learning frameworks like PyTorch or TensorFlow: just the core functionality you need for GPU-intensive software like renderers and simulation tools.

What can you do with the HIP SDK?

Anything that you can do with the HIP API, but without having to contact AMD first? The HIP API is a powerful toolset, but to make full use of it, you really need active support from our engineers. The new SDK makes things much simpler. We're still there to help out, but the SDK contains the tools you need to convert a CUDA application on your own.

What kinds of software is the HIP SDK intended for?

Anything that uses numeric compute, particularly graphics and simulation tools. In the DCC (Digital Content Creation) market, HIP is used in Blender – the 3D software used in the visual effects of series like Amazon Prime's The Man in the High Castle – in its Cycles render engine. Maxon is using HIP to port its Redshift renderer, used on movies like The Matrix: Resurrections, to run on AMD GPUs. And in the AEC (Architecture, Engineering, and Construction) market, developers are looking to do the same thing with computational fluid dynamics tools.

But you don't have to be developing a large standalone application. Plugin developer Boris FX is using HIP to enable Sapphire, its Emmy Award-winning suite of VFX plugins, to run on AMD GPUs. Porting smaller tools like this is exactly the sort of project that the new SDK can help with.

How hard is it to port a CUDA application using the HIP SDK?

Not as hard as you might think. Both CUDA and HIP are dialects of C++, so if you know CUDA, the syntax should be familiar to you, and the SDK includes tools to speed up the process: its HIPIFY toolset automatically translates CUDA code into portable HIP C++. Using AMD's Orochi library, you can even compile a single binary that runs on both AMD and NVIDIA hardware.

This is definitely big news for developers of applications who want a code base that works across multiple GPUs rather than having to build separate ones for each vendor. The AMD HIP SDK can be downloaded here.

Written by Hassan Mujtaba

Post a Comment

0 Comments