Hello, I'd like to report a performance issue related to long double
floating point types. This may be a known issue.

I'm currently testing OpenBSD-7.7 sparc64 port on T4-2 server.

When multiple threads run large number of arithmetic operations with
'long double' floating point type, they slow down dramatically, many of
them waiting in uobjlk as reported by 'top -SH'. Both gcc and clang
were used and they both produce code with this issue.

Other floating point data types like 'float' or 'double' do not exhibit
this issue. I'm not sure if this is a regression or has always been
this way, as I don't use OpenBSD that frequently.

Other operating systems running on sparc64 like Illumos and NetBSD do
not exhibit this behavior.

t4-node2$ gcc -v
Reading specs from /usr/lib/gcc-lib/sparc64-unknown-openbsd7.7/4.2.1/specs
Target: sparc64-unknown-openbsd7.7
Configured with: OpenBSD/sparc64 system compiler
Thread model: posix
gcc version 4.2.1 20070719 

t4-node2$ clang -v
OpenBSD clang version 16.0.6
Target: sparc64-unknown-openbsd7.7
Thread model: posix
InstalledDir: /usr/bin

Reply via email to