Re: Itanium support is back in GCC 15

Liste des GroupesRevenir à co vms 
Sujet : Re: Itanium support is back in GCC 15
De : cross (at) *nospam* spitfire.i.gajendra.net (Dan Cross)
Groupes : comp.os.vms
Date : 25. Feb 2025, 22:35:46
Autres entêtes
Organisation : PANIX Public Access Internet and UNIX, NYC
Message-ID : <vpld3i$mac$1@reader1.panix.com>
References : 1 2 3 4
User-Agent : trn 4.0-test77 (Sep 1, 2010)
In article <c662907ab88c91b96d12e78e0444d8626f421ebf@i2pn2.org>,
John Reagan  <johnrreagan@earthlink.net> wrote:
On 2/24/2025 4:43 PM, Arne Vajhøj wrote:
On 2/24/2025 4:22 PM, Michael S wrote:
On Mon, 24 Feb 2025 15:08:57 -0500
Arne Vajhøj <arne@vajhoej.dk> wrote:
On 2/24/2025 12:42 PM, Michael S wrote:
 
C++ VMS x86-64 is clang which in the (older) clang version used
should mean C++14 while C++ VMS Itanium is very very old (like
C++ 98 old).
>
According to the benchmarks that you posted here several months (a
year?) ago, VMS x86-64 compilers are quite awful comparatively to
x86-64 compilers available on Windows/Linux/BSD.
Do you want to say that VMS Itanium compilers are worse?
>
I believe the conclusion was that the VMS x86-64 compilers except C++
was slower than C/C++ on other OS and C++ on VMS.
>
Somehow I got an impression that C++ compilers were also significantly
slower than C++ compilers on other platforms.
Do I misremember?
 
I don't even remember that I posted non-VMS numbers here. Age! :-)
 
But I just checked VMS C++ latest (CXX/OPT=LEVEL:5 and clang -O3) vs a
random Windows GCC 14.1 (g++ -O3):
 
VMS is a little faster for integer
they are about the same for floating point
Windows is a lot faster for string
 
And given that this is a micro-benchmark with in reality just an inner
loop evaluating a single expression, which means huge uncertainty, then
I don't see this as proof of a significant difference.
 
Arne
 
We are aware of the string/char performance issues.
>
On Alpha and Itanium, the lowlevel routines inside of LIBOTS for things
like OTS$MOVE, string compare, memmove, etc. are all written in
hand-crafted assembly.  For x86, we are still using a set of BLISS
reference code that is simple.  Plus the LIBOTS we all have on our
systems was compiled with a non-optimizing BLISS cross-compiler.

Hmm. It strikes me that LLVM has intrinsics for `memmove` that
would also work for OTS$MOVE3; I would think that that would be
most efficient, as for small moves, this could lower directly
to a couple of loads and/or stores?

We are currently playing with native compiled LIBOTS code and doing some
benchmarks.  Besides the brain-dead BLISS code, we have versions that
loop with larger chunks of data which are even faster.  The fastest
we've seen so far is a native assembly version that uses the REP
instruction prefix on the MOVSB.  That version didn't check for
overlapping source/dest however so any real version gets a little
slower.  I'm not sure when we can incorporate these, but I'm trying to
push them as soon as possible.

Yeah, Intel made `REP MOVESB`/`REP STOSB` actually fast a few
uarchs ago.  Good stuff, though startup overhead still dominates
for <128 bytes or something like that, and having to muck with
the DF flag remains a bummer.

A fun reference to read is
>
https://cdrdv2-public.intel.com/814198/248966-Optimization-Reference-Manual-V1-050.pdf

Agner Fog's optimization guides can also be a useful resource
for things like this: https://www.agner.org/optimize/

- Dan C.


Date Sujet#  Auteur
4 Nov 24 * Itanium support is back in GCC 1526Simon Clubley
4 Nov 24 `* Re: Itanium support is back in GCC 1525Arne Vajhøj
7 Nov 24  `* Re: Itanium support is back in GCC 1524gcalliet
7 Nov 24   `* Re: Itanium support is back in GCC 1523Arne Vajhøj
8 Nov 24    +* Re: Itanium support is back in GCC 154gcalliet
8 Nov 24    i+- Re: Itanium support is back in GCC 151Arne Vajhøj
8 Nov 24    i+- Re: Itanium support is back in GCC 151John Dallman
11 Nov 24    i`- Re: Itanium support is back in GCC 151Waldek Hebisch
23 Feb 25    +* Re: Itanium support is back in GCC 158Scott Dorsey
23 Feb 25    i`* Re: Itanium support is back in GCC 157John Dallman
24 Feb 25    i `* Re: Itanium support is back in GCC 156Stephen Hoffman
24 Feb 25    i  +- Re: Itanium support is back in GCC 151John Reagan
24 Feb 25    i  `* Re: Itanium support is back in GCC 154John Dallman
24 Feb 25    i   +* Re: Itanium support is back in GCC 152John Reagan
25 Feb 25    i   i`- Re: Itanium support is back in GCC 151John Dallman
24 Feb 25    i   `- Re: Itanium support is back in GCC 151Stephen Hoffman
24 Feb 25    `* Re: Itanium support is back in GCC 1510Michael S
24 Feb 25     +- Re: Itanium support is back in GCC 151Robert A. Brooks
24 Feb 25     +* Re: Itanium support is back in GCC 153Simon Clubley
24 Feb 25     i`* Re: Itanium support is back in GCC 152Arne Vajhøj
26 Feb 25     i `- Re: Itanium support is back in GCC 151Simon Clubley
24 Feb 25     `* Re: Itanium support is back in GCC 155Arne Vajhøj
24 Feb 25      `* Re: Itanium support is back in GCC 154Michael S
24 Feb 25       `* Re: Itanium support is back in GCC 153Arne Vajhøj
24 Feb 25        `* Re: Itanium support is back in GCC 152John Reagan
25 Feb 25         `- Re: Itanium support is back in GCC 151Dan Cross

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal