Cycles AMD HIP device feedback

I’d just like to express my disappointment with the way AMD has consistently failed to present any decent solution for GPU compute applications for more than a decade now, especially Blender. I really thought that ROCm/HIP would’ve gotten off the ground by now and am starting to direct all my hopes towards Intel as they have a much better track record of getting things right when it comes to both open-source linux drivers and contributions to Blender.

2 Likes

Interesting point. They’ve also got the former head of Radeon dept from AMD, who developed Vega/Radeon VII, in charge of Intel GPU development, so they may be working on a direct successor to Vega, which is a pro card rebranded as a gaming card, lets be real. It will probably still take a lot of time to get off the ground for them, so I wouldn’t bet on that horse until it’s released. We’ll see.

Looks like the 5.0 HIP and 21.50 proprietary driver stuff for HIP is released or at least there is a hip-runtime-amd package. Looks like the AMD driver script is still dated January 19, 2022 so might not be official yet, but not many use the few supported Linux versions anyway.

Does anyone have a link to the 3.2 nightly with HIP enabled or did that not get done yet?

1 Like

What prevents you from living at HEAD? i.e. (there is really nothing interesting in this link)

I mean, if you want cutting edge, ROCm 5.0 having been litterally released 8 hours ago, and 3.2 being an alpha, get your hands dirty and compile :slight_smile: P.S. don’t expect anything to work yet! See brecht’s post below.

1 Like

Is the code required at Head yet? This on Jan 20th Says they want to add more code then this got added to master but was from Sep 28 so very confusing… I did check the nightly 3.2 alpha but HIP is still disabled. Let us know if your patch is all that’s needed.

Nothing changed in Blender master yet. The second commit was porting over changes already in Blender to the Cycles repository.

The aim is to have a working Linux driver in early March, and if there are Blender side changes from AMD needed we can integrate those quickly to have a build that works with that.

Once we have a working Blender build and drivers it will be announced in this topic.

2 Likes

ROCM 5.0 is out but there is some fixes needed coming in ROCM 5.1.

As Brecht said the tentative schedule is…

1 Like

Scroll the thread up, I’ve posted how to enable HIP when compiling from source.

EDIT: And it was in a reply to you lol.

Could you please list the target GPU architectures?

inb4 only Navi/Navi2

2 Likes

Thanks for the clarification, I will tune out until the “tentative schedule” of 5.1 and March comes. In the meantime back to the RadeonProRenderBlenderAddon.

Amd need it for competition vs nvidia. Nvidia gpus have Cuda and it working with ten-year GPUs, amd actually Dropping all card after 2019 year

2 Likes

I asked the reviewer over at the site ultrabook review to benchmark the 6800s gpu in the asus g14 laptop in blender 3.0 with HIP. He installed the beta amd drivers but has not gotten blender to recognise the radeon 6800s as a valid hip device. “HIP binary kernel for this graphics card compute capability (10.3) no found”.

Any advice how this can be resolved, I am very interested seeing how this new laptop gpu can perform in blender and current HIP implementation?

/J

1 Like

It is not in the supported list currently, and there is no guarantee that it will ever be supported. Some of us here are waiting for 6 months to test HIP lol.

2 Likes

⚙ D13495 Enabling HIP on some tested GPUs You should watch this issue. When that is merged it will work on the newest RDNA2 Laptop chips

1 Like

Blender opendata now supports 3.0 and HIP so I made a little chart to gauge performance.

Warning about the following chart:

  • Opendata has very few entries for 3.0.1 at the moment
  • Opendata by design has multiple uncontrolled variables between samples
  • I removed laptop and pro GPU’s
  • There are no bad GPU’s only bad prices, pricing data will fluctuate and differ between regions
  • There could be errors, I didn’t check it and I’m not a statistician.

Warnings aside there is a clear indication that HIP performs considerably worse per dollar than Optix on recent cards. At the extremes of the chart you could replace a RX 6800 with a RTX 2060 pocket $700 and have a card that renders about 20% faster…

To link this back the thread topic the feedback is HIP and Blender are a poor fit, is it time to consider another approach?

4 Likes

There are a few things to consider:

  1. OptiX makes use of what’s known as the “RT Cores” in Nvidia RTX hardware. This greatly accelerates speed at which ray traversal is done on Nvidia hardware. AMD GPUs (Starting with the RX 6000 series) also have things known as “ray accelerators”. They do the same sort of thing as the RT Core, speed up ray traversal. BUT at this current point in time, the HIP implementation found in Blenders Cycles is lacking support for the ray accelerators. Hence why the HIP result may look “quite bad” compared to OptiX result.
    Adding support for the ray accelerators is currently on the “TODO” list for HIP (⚓ T91571 Cycles HIP device) and once it is implemented, HIP performance on AMD GPUs with ray accelerators will likely see a great performance improvement.
    However, this fact that “performance should get better in the future” doesn’t change the fact that performance isn’t “better now”. It’s just something to consider when looking at your results and thinking about why AMD with HIP is slower than Nvidia with OptiX and what could be done to improve it in the future.
  2. Another factor that affects the performance of a Nvidia/AMD GPU in these renders is the actual performance of the device. When comparing the current generation of hardware (RTX 3000 series and RX 6000 series), there is a trend that when comparing similar class/price hardware, the Nvidia GPU will have higher theoretical FP32 compute performance than the AMD GPU. For example, the RTX 3080 has a theoretical FP32 compute performance of 29.77 TFLOPs while the RX 6800XT (a similarly classed/priced GPU) has a theoretical FP32 compute performance of 20.74 TFLOPs. (FP32 is a commonly used form of compute and Cycles probably uses it quite a bit.)
    This is “theoretical compute performance”. Hence achieving this level of performance in an application is highly unlikely. But let’s assume Cycles is 100% optimized for both Nvidia CUDA and AMD HIP. Then most Nvidia GPUs of this current generation will out perform an AMD GPU from this generation in the same GPU price class. As it just has more compute performance.
    The only way for a GPU with lower theoretical compute performance to outperform a GPU with more is if the software is un-optimized for the GPU with more theoretical compute performance, or the combination of a variety of hardware factors on the faster GPU lead to it being under utilized.
    This probably explains some of the observations you saw when comparing performance. And the only way for this to be fixed (By fixed, I mean get AMD GPUs in the same price class as Nvidia GPUs to perform the same in HIP and CUDA) is if HIP is further optimized for AMD hardware, and CUDA/OptiX optimization remains stagnant or receives a bunch of un-optimizaitons.
    This issue of AMD with HIP being slower than Nvidia with CUDA isn’t a problem with HIP at all (when comparing the current generation at the same price range). It’s a problem with how you’re comparing two GPUs with similar prices expecting them to perform the same, when in fact they have significantly different performance characteristics and you shouldn’t expect them to perform the same.
    This trend of Nvidia having more compute than AMD at the same class/price of GPU this generation could change with future generations of hardware. Next GPU generation AMD could release similarly classed/prices GPUs with much higher theoretical compute performance than Nvidia. Or it could be the other way around. No one knows for certain. But I just wanted to point out this observation when looking at this current generation of hardware and their performance to price ratio in HIP and CUDA.
2 Likes

Good gravy, 3050 renders faster than a 6800. I am glad I didn’t luck my way into getting one through the AMD queue, been trying for a few weeks now. I was willing to deal with some driver growing pains based on the assumption that HIP would make it worth it. I know that this is based on not a lot of samples, early results, etc. Still a really bad look. I think I’ll be waiting for 40 series or perhaps catch a sanely priced 3070 or something.

Apples to apples, meaning cuda rather than optix, a 6800 is a little slower than a 2080, which should be again even slower than a 3060. But the gap betwen 3060 and 2080 in cuda vs optix is really wacky, huge gains in optix for 3060, so I dunno. Either way 6800 still seems about the same, 3050 or 3060 level. Will not be wasting my time in AMD queue this generation, thanks for the chart and saving me some buyers remorse.

1 Like

I should clarify that when I refer to “similarly priced GPUs” I refer to GPU MSRP prices.

Thanks for the info definitely improves the discussion. After reading your comments the following comes to mind.

  • AMD has been unsuccessful in adding hardware ray tracing since the release of RDNA2 in late 2020.
  • I am not sure about FLOPS usefulness in comparisons. For instance the 3080 has 1.4 times the flops of the 6800XT but performs 3.3 times better (possibly due to Optix utilizing the the RT cores which are not measured in FP32 FLOPS).
  • I guess it doesn’t matter what hardware you own if the software doesn’t support it.

Even with the limited data in opendata it appears RTX users prefer Optix over Cuda, so in the future there will only be comparisons between apples that ray trace to apples that don’t, until Blender drops apples that don’t ray trace like they did OpenCL.

No worries, just remember AMD could come out tomorrow with performance improvements however recently their collaboration with Blender and the canning of RadeonProRenderBlenderAddon development has been so far from reasonable I think its prudent to write them off.

I say this as a Linux RDNA2 card owner that got an acceptable cost to performance card comparing Cycles OpenCL to Optix. Bit over a year later my card isn’t supported… Apply all geometry nodes / modifiers and render in 2.93 you got to be joking…

3 Likes

I was hoping for more rapid development with HIP, but I guess these things take time. I hope that we are able to get hardware accelerated raytracing soon, but thats just a hope. The realist in me thinks that this may be done.

1 Like