on je to spíš takovej poloviční skalární součin, protože neprovádí závěrečný součet. Pravý skalární součin nemá ani SSE (protože DPSS řeší jen část násobení, ne součtu mezivýsledků), ale to až tak nevadí, tam se to dělá kombinací MUL(PS) s extract a ADD(PS). Pro delší vektory se ten součet provede až na konci, takže výpočty se zahajují sérii součinů.
S pfacc budu muset stejně ty operandy nejdřív přesunout v případě dvou dimenzí, ne? U čtyř dimenzí tedy můžu rovnou sčítat a pak se až přesunout do dvou dimenzí. U SSE, vzhledem k tomu, že zpracuje všechny čtyři dimenze v jednom registru, tak je tam ten přesun pak dvakrát.
Ono je to stejně spíš teoretické jenom pro účel vektorového součinu, většina matematiky u 3D bude spíš násobení vektoru (pole vektorů) a matice či dvou matic, v obou případech se horizontální součet vůbec nepoužívá...