ssvb-membench v0.1.9 (simple benchmark for memory throughput and latency) =================================================================== == Memory bandwidth tests (non-aliased buffers) == == == == Note 1: 1MB = 1000000 bytes == == Note 2: Results for 'copy' tests show how many bytes can be == == copied per second (adding together read and writen == == bytes would have provided twice higher numbers) == =================================================================== C copy backwards : 153.78 MB/s C copy : 161.78 MB/s C copy prefetched (32 bytes step) : 168.15 MB/s C copy prefetched (64 bytes step) : 168.18 MB/s C copy via tmp buffer : 133.57 MB/s C copy via tmp buffer prefetched (32 bytes step) : 135.86 MB/s C copy via tmp buffer prefetched (64 bytes step) : 135.96 MB/s C fill : 508.02 MB/s --- standard memcpy : 132.39 MB/s standard memset : 260.39 MB/s --- ARM fill (STRD) : 510.21 MB/s ARM fill (STM with 8 registers) : 512.98 MB/s ARM fill (STM with 4 registers) : 512.53 MB/s ARM copy prefetched : 171.95 MB/s ========================== == Memory latency test === ========================== block size : read access time (single random read / dual random read) 2 : 0.9 ns / 0.0 ns 4 : 0.0 ns / 0.4 ns 8 : 0.0 ns / 0.0 ns 16 : 0.0 ns / 0.0 ns 32 : 0.0 ns / 0.0 ns 64 : 0.0 ns / 0.0 ns 128 : 0.2 ns / 0.0 ns 256 : 0.0 ns / 0.0 ns 512 : 0.0 ns / 0.0 ns 1024 : 0.0 ns / 0.0 ns 2048 : 0.0 ns / 0.0 ns 4096 : 0.1 ns / 0.0 ns 8192 : 0.0 ns / 0.0 ns 16384 : 0.0 ns / 0.0 ns 32768 : 0.6 ns / 0.7 ns 65536 : 84.6 ns / 166.0 ns 131072 : 131.4 ns / 251.5 ns 262144 : 157.8 ns / 297.9 ns 524288 : 299.0 ns / 581.0 ns 1048576 : 376.4 ns / 735.7 ns 2097152 : 426.0 ns / 835.3 ns 4194304 : 472.0 ns / 868.0 ns 8388608 : 450.9 ns / 884.7 ns 16777216 : 462.3 ns / 906.9 ns 33554432 : 466.4 ns / 917.6 ns 67108864 : 477.6 ns / 939.3 ns