Skip to content

Question: How to get good AMD CPU results? #14

@sumseq

Description

@sumseq

Hi,

I REALLY like this benchmark.

So much so that I plan to (most likely) use its results to make roofline plots in an upcoming paper (I will cite it as shown in README).

However, I am having issues getting proper results on AMD CPUs.

I have seen that AMD dropped all official OpenCL support for their CPUs.

I am able to still run the benchmark if I load the Intel OneAPI environment, but I get funky CPU info and the results do not seem right compared to other similar Intel CPUs.

For example, on an EPYC 7742 dual-socket system, it only detects one of the CPUs and says:

-----------------------------------------------------------------------------.
|----------------.------------------------------------------------------------|
| Device ID    0 | AMD EPYC 7742 64-Core Processor                            |
|----------------'------------------------------------------------------------|
|----------------.------------------------------------------------------------|
| Device ID      | 0                                                          |
| Device Name    | AMD EPYC 7742 64-Core Processor                            |
| Device Vendor  | Intel(R) Corporation                                       |
| Device Driver  | 2024.18.6.0.02_160000 (Linux)                              |
| OpenCL Version | OpenCL C 3.0                                               |
| Compute Units  | 64 at 0 MHz (32 cores, 0.000 TFLOPs/s)                     |
| Memory, Cache  | 127842 MB, 512 KB global / 32 KB local                     |
| Buffer Limits  | 63921 MB global, 128 KB constant              

The 0 MHz is concerning.

Then, the results seem quite a bit slower than they should be:
FP64 compute 0.022 TFLOPs/s (1/64)

For example, on the EPYC 7702P (a slower CPU) with the Ubuntu opencl runtime I get:
| FP64 compute 1.111 TFLOPs/s (1/64) |
but it still reports 0 MHz in the info.

I really like the suggestions for installing the OpenCL runtime that the compilation spits out, but on the supercomputer I cannot install those packages to try the open source OpenCL.
Is there some kind of pre-built OpenCL run time binaries that I could point to that work well on AMD CPUs?

Is there a way to fix the CPU identification to know its AMD not Intel and get the correct mHz?

Thanks!

  • Ron

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions