diff options
author | Claudio Rodriguez <cjrodr@yahoo.com> | 2015-12-17 10:05:45 -0300 |
---|---|---|
committer | Roman Reiss <me@silverwind.io> | 2015-12-21 18:04:01 +0100 |
commit | 63786227cc8cf3dbe18664a2e8765a4ee11fe8ff (patch) | |
tree | 545ddea482ed34504437f170a0b1113e5b00768e /benchmark/assert/deepequal-typedarrays.js | |
parent | 50125e27b763aa49a93788c4605addf3c5966f44 (diff) | |
download | android-node-v8-63786227cc8cf3dbe18664a2e8765a4ee11fe8ff.tar.gz android-node-v8-63786227cc8cf3dbe18664a2e8765a4ee11fe8ff.tar.bz2 android-node-v8-63786227cc8cf3dbe18664a2e8765a4ee11fe8ff.zip |
assert: typed array deepequal performance fix
assert.deepEqual: when actual and expected are typed arrays,
wrap them in a new Buffer each to increase performance
significantly.
PR-URL: https://github.com/nodejs/node/pull/4330
Fixes: https://github.com/nodejs/node/issues/4294
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Diffstat (limited to 'benchmark/assert/deepequal-typedarrays.js')
-rw-r--r-- | benchmark/assert/deepequal-typedarrays.js | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/benchmark/assert/deepequal-typedarrays.js b/benchmark/assert/deepequal-typedarrays.js new file mode 100644 index 0000000000..99c13206d7 --- /dev/null +++ b/benchmark/assert/deepequal-typedarrays.js @@ -0,0 +1,22 @@ +'use strict'; +var common = require('../common.js'); +var assert = require('assert'); +var bench = common.createBenchmark(main, { + type: ('Int8Array Uint8Array Int16Array Uint16Array Int32Array Uint32Array ' + + 'Float32Array Float64Array Uint8ClampedArray').split(' '), + n: [1] +}); + +function main(conf) { + var type = conf.type; + var clazz = global[type]; + var n = +conf.n; + + bench.start(); + var actual = new clazz(n * 1e6); + var expected = new clazz(n * 1e6); + + assert.deepEqual(actual, expected); + + bench.end(n); +} |