This “binary matrix multiply” is one of the key instructions requested by NSA in the supercomputers designed by Cray etc. It’s somewhat remarkable that it has not been implemented in more mainstream architectures. I’d be surprised it is missing in the NVIDIA instruction set, for example, since they are successors of the supercomputer crowd.
On Apr 1, 2016, at 1:46 PM, Warren D Smith <warren.wds@gmail.com> wrote:
On 4/1/16, Warren D Smith <warren.wds@gmail.com> wrote:
Be nice if one could create an NxN bit-matrix (for example N=machine's wordsize) and then multiply it (mod 2) by an N-element bit vector (e.g machine word) in 1 instruction.
This would help with cryptography, error correcting codes, and probably a lot of other stuff.
--such as permuting bits in a word, would be another application.
Also, if the XORs that were used to add up the sums mod 2, were replaced by plain ORs, then that other kind of matrix-vector "multiply" would be excellent for graph connectivity calculations.
_______________________________________________ math-fun mailing list math-fun@mailman.xmission.com https://mailman.xmission.com/cgi-bin/mailman/listinfo/math-fun