From 805182c50004e16a1c3f4048b25c0286532da497 Mon Sep 17 00:00:00 2001 From: Braydon Fuller Date: Mon, 29 Jun 2015 21:43:11 -0400 Subject: [PATCH] Removed readReverse() precondition for a 2x block parsing improvement. --- benchmark/serialization.js | 20 ++++++++++++++++++++ lib/util/buffer.js | 1 - test/util/buffer.js | 5 ----- 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/benchmark/serialization.js b/benchmark/serialization.js index d0024bd37..ee948a60e 100644 --- a/benchmark/serialization.js +++ b/benchmark/serialization.js @@ -17,12 +17,19 @@ async.series([ function(next) { var buffers = []; + var hashBuffers = []; console.log('Generating Random Test Data...'); for (var i = 0; i < 100; i++) { + + // uint64le var br = new bitcore.encoding.BufferWriter(); var num = Math.round(Math.random() * 10000000000000); br.writeUInt64LEBN(new bitcore.crypto.BN(num)); buffers.push(br.toBuffer()); + + // hashes + var data = bitcore.crypto.Hash.sha256sha256(new Buffer(32)); + hashBuffers.push(data); } var c = 0; @@ -38,10 +45,23 @@ async.series([ c++; } + var reversed; + + function readReverse() { + if (c >= hashBuffers.length) { + c = 0; + } + var buf = hashBuffers[c]; + var br = new bitcore.encoding.BufferReader(buf); + reversed = br.readReverse(); + c++; + } + console.log('Starting benchmark...'); var suite = new benchmark.Suite(); suite.add('bufferReader.readUInt64LEBN()', readUInt64LEBN, {maxTime: maxTime}); + suite.add('bufferReader.readReverse()', readReverse, {maxTime: maxTime}); suite .on('cycle', function(event) { console.log(String(event.target)); diff --git a/lib/util/buffer.js b/lib/util/buffer.js index 332b4be80..c78b9396e 100644 --- a/lib/util/buffer.js +++ b/lib/util/buffer.js @@ -152,7 +152,6 @@ module.exports = { * @return {Buffer} */ reverse: function reverse(param) { - $.checkArgumentType(param, 'Buffer', 'param'); var ret = new buffer.Buffer(param.length); for (var i = 0; i < param.length; i++) { ret[i] = param[param.length - i - 1]; diff --git a/test/util/buffer.js b/test/util/buffer.js index 04e058270..bbc1e2609 100644 --- a/test/util/buffer.js +++ b/test/util/buffer.js @@ -152,10 +152,5 @@ describe('buffer utils', function() { original[1].should.equal(reversed[1]); original[2].should.equal(reversed[0]); }); - it('checks the argument type', function() { - expect(function() { - BufferUtil.reverse('invalid'); - }).to.throw(errors.InvalidArgumentType); - }); }); });