From: already5chosen@yahoo.com   
      
   On Sat, 29 Nov 2025 00:20:29 -0000 (UTC)   
   antispam@fricas.org (Waldek Hebisch) wrote:   
      
   > Michael S wrote:   
   > >   
   > > Zen3 has its own can of worms in the area of moving data between   
   > > GPR and SIMD. The issues here are more subtle than those mentioned   
   > > above. And unfortunately almost completely non-documented in the   
   > > manuals. And despite that issues are subtle, performance impact can   
   > > be very significant.   
   > >   
   > > I encountered these things when implementing alternative   
   > > (to those currently in use by gcc) IEEE binary128 arithmetic   
   > > routines. My conclusion was that designers of binary128 ABI in   
   > > general and of ABI of support routines in particular made a serious   
   > > mistake by treating binary128 (a.k.a. __float128, a.k.a _Float128,   
   > > a.k.a. 'long double' on ARM64) as "floating-point" type that is   
   > > passed around in XMM registers (or Neon registers on ARM64). Both   
   > > passing it in pair of GPRs and via memory would be significantly   
   > > faster on AMD processors and detectably faster on Intel processors.   
   > >   
   >   
   > If they want to handle that type in hardware on some future model,   
   > then ABI must use floating point (that is XMM) register.   
   >   
      
      
   Neither Intel nor AMD nor Arm ever said that they have plans of that   
   sort.   
   Thinking too much about future is bad engineering. In specific case of   
   computer engineering, I am pretty sure that it caused significantly   
   more harm than not thinking enough about future.   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|