Last active
December 14, 2015 13:08
-
-
Save adamvr/5091376 to your computer and use it in GitHub Desktop.
Buffer concat vs array concat vs buffer write performance
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var array = []; | |
for (var i = 0; i < 10000; i += 1) { | |
array = array.concat(['test']); | |
} | |
var buffer = new Buffer(array); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var bufs = []; | |
for (var i = 0; i < 10000; i += 1) { | |
bufs.push(new Buffer('test')); | |
} | |
var buffer = Buffer.concat(bufs); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var string = 'test'; | |
var iterations = 10000; | |
var size = string.length * iterations; | |
var buffer = new Buffer(size); | |
var pos = 0; | |
for (var i = 0; i < iterations; i += 1) { | |
buffer.write(string); | |
pos += string.length; | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
0.38user 0.05system 0:00.45elapsed 97%CPU (0avgtext+0avgdata 14344maxresident)k | |
8inputs+0outputs (1major+3838minor)pagefaults 0swaps | |
0.36user 0.04system 0:00.38elapsed 105%CPU (0avgtext+0avgdata 14340maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.37user 0.04system 0:00.40elapsed 102%CPU (0avgtext+0avgdata 14340maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.36user 0.04system 0:00.38elapsed 105%CPU (0avgtext+0avgdata 14344maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.36user 0.04system 0:00.38elapsed 106%CPU (0avgtext+0avgdata 14340maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.37user 0.03system 0:00.38elapsed 106%CPU (0avgtext+0avgdata 14344maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.35user 0.05system 0:00.38elapsed 105%CPU (0avgtext+0avgdata 14344maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.37user 0.03system 0:00.38elapsed 105%CPU (0avgtext+0avgdata 14340maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.35user 0.05system 0:00.38elapsed 104%CPU (0avgtext+0avgdata 14344maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.36user 0.04system 0:00.38elapsed 106%CPU (0avgtext+0avgdata 14344maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.30user 0.02system 0:00.33elapsed 100%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.24user 0.02system 0:00.27elapsed 100%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.24user 0.03system 0:00.27elapsed 101%CPU (0avgtext+0avgdata 8412maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.28user 0.01system 0:00.29elapsed 100%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.26user 0.01system 0:00.27elapsed 102%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.26user 0.01system 0:00.27elapsed 100%CPU (0avgtext+0avgdata 8412maxresident)k | |
0inputs+0outputs (0major+2437minor)pagefaults 0swaps | |
0.26user 0.01system 0:00.27elapsed 101%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.24user 0.02system 0:00.27elapsed 101%CPU (0avgtext+0avgdata 8420maxresident)k | |
0inputs+0outputs (0major+2437minor)pagefaults 0swaps | |
0.25user 0.02system 0:00.27elapsed 102%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.25user 0.02system 0:00.27elapsed 101%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.41user 0.04system 0:00.43elapsed 104%CPU (0avgtext+0avgdata 14344maxresident)k | |
0inputs+0outputs (0major+3840minor)pagefaults 0swaps | |
0.36user 0.04system 0:00.38elapsed 105%CPU (0avgtext+0avgdata 14344maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.35user 0.05system 0:00.40elapsed 102%CPU (0avgtext+0avgdata 14344maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.37user 0.03system 0:00.38elapsed 105%CPU (0avgtext+0avgdata 14344maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.37user 0.03system 0:00.38elapsed 105%CPU (0avgtext+0avgdata 14348maxresident)k | |
0inputs+0outputs (0major+3840minor)pagefaults 0swaps | |
0.34user 0.06system 0:00.38elapsed 105%CPU (0avgtext+0avgdata 14340maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.36user 0.04system 0:00.38elapsed 106%CPU (0avgtext+0avgdata 14344maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps | |
0.37user 0.02system 0:00.38elapsed 105%CPU (0avgtext+0avgdata 14340maxresident)k | |
0inputs+0outputs (0major+3840minor)pagefaults 0swaps | |
0.37user 0.03system 0:00.39elapsed 104%CPU (0avgtext+0avgdata 14344maxresident)k | |
0inputs+0outputs (0major+3840minor)pagefaults 0swaps | |
0.37user 0.02system 0:00.38elapsed 104%CPU (0avgtext+0avgdata 14344maxresident)k | |
0inputs+0outputs (0major+3839minor)pagefaults 0swaps |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
0.31user 0.02system 0:00.33elapsed 99%CPU (0avgtext+0avgdata 8412maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.26user 0.01system 0:00.27elapsed 101%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.25user 0.02system 0:00.27elapsed 102%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.26user 0.03system 0:00.29elapsed 101%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.25user 0.02system 0:00.27elapsed 101%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2437minor)pagefaults 0swaps | |
0.24user 0.02system 0:00.27elapsed 101%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2437minor)pagefaults 0swaps | |
0.27user 0.01system 0:00.27elapsed 101%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.24user 0.03system 0:00.28elapsed 101%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2438minor)pagefaults 0swaps | |
0.25user 0.02system 0:00.27elapsed 101%CPU (0avgtext+0avgdata 8412maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps | |
0.26user 0.01system 0:00.27elapsed 101%CPU (0avgtext+0avgdata 8416maxresident)k | |
0inputs+0outputs (0major+2436minor)pagefaults 0swaps |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
0.19user 0.01system 0:00.24elapsed 88%CPU (0avgtext+0avgdata 7232maxresident)k | |
0inputs+0outputs (0major+2146minor)pagefaults 0swaps | |
0.17user 0.00system 0:00.18elapsed 102%CPU (0avgtext+0avgdata 7232maxresident)k | |
0inputs+0outputs (0major+2146minor)pagefaults 0swaps | |
0.16user 0.02system 0:00.18elapsed 100%CPU (0avgtext+0avgdata 7232maxresident)k | |
0inputs+0outputs (0major+2147minor)pagefaults 0swaps | |
0.17user 0.00system 0:00.18elapsed 100%CPU (0avgtext+0avgdata 7232maxresident)k | |
0inputs+0outputs (0major+2146minor)pagefaults 0swaps | |
0.15user 0.02system 0:00.17elapsed 100%CPU (0avgtext+0avgdata 7232maxresident)k | |
0inputs+0outputs (0major+2146minor)pagefaults 0swaps | |
0.18user 0.02system 0:00.20elapsed 100%CPU (0avgtext+0avgdata 7232maxresident)k | |
0inputs+0outputs (0major+2147minor)pagefaults 0swaps | |
0.16user 0.01system 0:00.18elapsed 101%CPU (0avgtext+0avgdata 7228maxresident)k | |
0inputs+0outputs (0major+2146minor)pagefaults 0swaps | |
0.17user 0.01system 0:00.18elapsed 101%CPU (0avgtext+0avgdata 7232maxresident)k | |
0inputs+0outputs (0major+2146minor)pagefaults 0swaps | |
0.16user 0.02system 0:00.18elapsed 102%CPU (0avgtext+0avgdata 7232maxresident)k | |
0inputs+0outputs (0major+2147minor)pagefaults 0swaps | |
0.16user 0.02system 0:00.18elapsed 101%CPU (0avgtext+0avgdata 7232maxresident)k | |
0inputs+0outputs (0major+2146minor)pagefaults 0swaps |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment