question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

CuPy for HIP vs ClPy for OpenCL for Radeon VII

See original GitHub issue

Hello,

I’ve been recently trying to run my existing CuPy code (that currently runs on an NVIDIA Titan X (Maxwell) GPU on another new system with an AMD Radeon VII GPU for the same project. On the NVIDIA based system, I was successfully able to install CuPy within a Conda env with Pip.

For the new AMD based system, so far I have followed the instructions as specified at PR #1094 and have been trying to install it. I was able to set it up but was unable to execute import cupy successfully. It kept giving an error for hipsparse: undefined symbol: _ZN8hip_impl8hip_initEv. At that time I was using ROCm 2.2. After upgrading to ROCm 2.3, I now get a new error for cupy/core/core.so: undefined symbol: hipModuleGetGlobal when trying to test import cupy. Is there a workaround for this?

Yesterday, I also came to know about ClPy. I also found that it received ROCm OpenCL support very recently. Should I be going for ClPy instead? As of now, is ClPy a better option performance wise? When can we expect CuPy for HIP to be updated like ClPy?

Thank you so much for developing CuPy for both platforms! Looking forward to your valuable feedback.

Best, Avimanyu

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Reactions:1
  • Comments:7 (6 by maintainers)

github_iconTop GitHub Comments

3reactions
okutacommented, Nov 21, 2019

CuPy v7.0.0rc1 was released (include #1094). It supports HIP environment!

3reactions
okutacommented, Jul 27, 2019

Thank you for testing CuPy HIP branch #1094. It branch has many issues. In now, using ClPy is a smart option.

I will continue to support ROCm. However, work is taking time because ROCm is not stable for CuPy. CuPy uses internal interface of ROCm to support just in time compile.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Why is there no CUDA alternative on AMD? - Reddit
Edit: Great discussion guys, I´m learning a lot about CUDA vs OpenCL, AMD vs Nvidia, M1 versus the rest, PowerPC versus Intel, Intel...
Read more >
OpenCL Programming Guide — ROCm 4.5.0 documentation
There are two ways to copy data from the host to the GPU compute device memory: Implicitly by using clEnqueueMapBuffer and clEnqueueUnMapMemObject ...
Read more >
Introduction to AMD GPU programming with HIP Webinar
AMD Research presented a webinar titled, “Introduction to AMD GPU programming with HIP ” on June 7th. HIP is a C++ runtime API...
Read more >
Radeon™ GPU Profiler - GPUOpen
Support for Instruction timing capture and visualization for OpenCL™ and HIP applications (requires RDNA-based hardware and at least a 22.10-based driver); The ...
Read more >
User Guide for AMDGPU Backend - Documentation - LLVM
The AMDGPU backend provides ISA code generation for AMD GPUs, starting with the ... Radeon Instinct MI50; Radeon Instinct MI60; Radeon VII; Radeon...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found