Deutsch English Français Italiano |
<v0vhve$3o6jt$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Terje Mathisen <terje.mathisen@tmsw.no> Newsgroups: comp.arch Subject: Re: Short Vectors Versus Long Vectors Date: Thu, 2 May 2024 10:13:33 +0200 Organization: A noiseless patient Spider Lines: 30 Message-ID: <v0vhve$3o6jt$1@dont-email.me> References: <v06vdb$17r2v$1@dont-email.me> <0D7YN.12641$oA33.7712@fx34.iad> <e9aa636b6b12f1ac0af12946151219f4@www.novabbs.org> <pycYN.33914$iMKd.26920@fx12.iad> <v0rtm6$2o1mj$5@dont-email.me> <66c323063468ebc28ce3b5ae8d28c2ac@www.novabbs.org> <v0su1a$32b6q$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Thu, 02 May 2024 10:13:34 +0200 (CEST) Injection-Info: dont-email.me; posting-host="b4de15fd19539ffecc3ec38012888724"; logging-data="3938941"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+kGesMPFlnjtrYHlD6vcO1TXcPksCA8HZ0K/xw7Vi+9Q==" User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0 SeaMonkey/2.53.18.2 Cancel-Lock: sha1:E/6TwSf49l3N0KRvcT3M33ZnxUw= In-Reply-To: <v0su1a$32b6q$1@dont-email.me> Bytes: 2322 Thomas Koenig wrote: > MitchAlsup1 <mitchalsup@aol.com> schrieb: > >> Then contemplate for an instant that one would want SIMD instructions for >> Complex numbers and Hamiltonian Quaterions...... > > Quaternions would be a bit over the top, I tink. Complex > multiplication... implementing (e,f) = (a*c-b*d,a*d+b*c) is > > fmul Rt1,Rc,Rb > fmac Re,Rd,Ra,Rt1 > > fmul Rt2,Rd,Rb > fmac Rf,Rc,Ra,-Rt2 > > So, you'd need both operands on both lanes. Not very SIMD-friendly, > I would assume, but (probably) not impossible, either. > If you have the four operands spread across two SIMD registers, so (Re,Im) in each, then you need an initial pair of permutes to make flipped copies before you can start the fmul/fmac ops, right? This is exactly the kind of code where Mitch's transparent vector processing would be very nice to have. Terje -- - <Terje.Mathisen at tmsw.no> "almost all programming can be viewed as an exercise in caching"