3 ms·
TL;DR: You can basically do 8 operations at once (but of course, it's not that simple). Think about a normal 64-bit register: you can add and subtract 64-bit n
by gragas 10y ago
TL;DR: You can basically do 8 operations at once (but of course, it's not that simple).
Think about a normal 64-bit register: you can add and subtract 64-bit numbers, OR and AND them, etc. Now think about a 64-byte register. What could you do with that? Well, suppose you're looping through contiguous memory and changing each word AND the change that your making to each word is independent of the change you make to any other word. With a normal 64-bit register you'd have to do one operation on each word. But with a 64-byte "register", you can load 8 words into it and do just one operation for the same effect as applying that operation 8 times (once to each word). Thus, some code---vectorizable code---can be sped up nearly 8x.