home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   comp.arch      Apparently more than just beeps & boops      131,241 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 129,457 of 131,241   
   Terje Mathisen to All   
   SHA3 - 32 registers required for speed?   
   21 Aug 25 12:17:13   
   
   From: terje.mathisen@tmsw.no   
      
   I looked at the (newish) SHA3 backup algorithm for the current SHA2, it   
   is based on a 5x5x64 bit internal core, with mixing operations that have   
   been based on having each of those 5x5=25 stripes in a separate 64-bit   
   (unsigned) variable, and then do a lot of logic ops across them, and   
   using rotations for vertical motion.   
      
   With a core containing 25 named variables, you need an easy way to   
   access any of them, so even using SIMD might be a stretch?   
      
   I see a github SHA3 project that simply defines an array of uint64_t,   
   and all the ops index into this, but unless the compiler can extract   
   them all into registers, this is going to generate a lot of extra $L1   
   traffic.   
      
   Terje   
   --   
   -    
   "almost all programming can be viewed as an exercise in caching"   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca