www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Fast array copy. SIMD manual or automatic?

reply "tcak" <tcak gmail.com> writes:
I have two char arrays at the size of 16KB. I will copy a part of 
data between them again and again.

arrayA[0 .. dataLen] = arrayB[0 .. dataLen];


Does the compiler generate code that uses SIMD operations 
(128-bits memory copy) automatically, or do I need to do anything 
special for this?
Feb 06 2015
parent "fra" <a b.it> writes:
On Saturday, 7 February 2015 at 06:30:32 UTC, tcak wrote:
 I have two char arrays at the size of 16KB. I will copy a part 
 of data between them again and again.

 arrayA[0 .. dataLen] = arrayB[0 .. dataLen];


 Does the compiler generate code that uses SIMD operations 
 (128-bits memory copy) automatically, or do I need to do 
 anything special for this?
Does SIMD even matter anything when it comes to copying? I was sure it was just about moving data into SIMD registers for later operation on that.
Feb 08 2015