porting OTP to ppc64le arch

Mikael Pettersson mikpelinux@REDACTED
Tue Feb 22 18:09:38 CET 2022

On Tue, Feb 22, 2022 at 7:12 AM adil s <adypersist@REDACTED> wrote:
> Hi all,
> I've ported the OTP 23.02 version to ppc64le arch. but the performance is so poor. sending 1 MB of data between erlang nodes takes around 44 minutes.
> btw, all of the test cases are passing here.
> Could someone please help me to debug this issue?
> Any hints/pointers are really appreciated.

This is so vague that it's almost impossible to guess at a likely cause.

1. What are you running on? If it's an FPGA or qemu, then you can't
really expect any performance. Real IBM POWER 8 or better should
perform well.
2. Check that you're not taking an inordinate amount of alignment
exceptions. Even if they're fixed up by the OS kernel their cost will
be high. If you're on Linux, consider using "perf" to look for
performance anomalies.
3. How are the Erlang nodes networked? Any docker or other
virtualization involved? How does a plain "scp" of 1MB between the
nodes perform?
4. What compiler did you use? GCC should be fine, I have no idea what
the state of ppc64le in clang/llvm is.

I see Fedora (Red Hat), openSUSE, and Debian all provide ppc64le
builds of recent Erlang versions, and I haven't heard anything about
ppc64le-specific issues in Erlang, so I would suspect something odd in
your environment.

More information about the erlang-questions mailing list