node-fast-crc32c icon indicating copy to clipboard operation
node-fast-crc32c copied to clipboard

Replace sse4_crc32 with @node-rs/crc32

Open Brooooooklyn opened this issue 4 years ago • 9 comments

https://github.com/Brooooooklyn/node-rs/tree/master/packages/crc32

Here is benchmark on my machine:

Model Name: MacBook Pro
Model Identifier: MacBookPro15,1
Processor Name: Intel Core i7
Processor Speed: 2.6 GHz
Number of Processors: 1
Total Number of Cores: 6
L2 Cache (per Core): 256 KB
L3 Cache: 12 MB
Hyper-Threading Technology: Enabled
Memory: 16 GB

Benchmark:

@node-rs/crc32c for inputs 1024B x 5,264,095 ops/sec ±1.20% (93 runs sampled)
@node-rs/crc32c for inputs 16829745B, avg 2054B x 263 ops/sec ±11.01% (71 runs sampled)
sse4_crc32c_hw for inputs 1024B x 3,605,658 ops/sec ±1.00% (91 runs sampled)
sse4_crc32c_hw for inputs 16829745B, avg 2054B x 211 ops/sec ±1.08% (72 runs sampled)
sse4_crc32c_sw for inputs 1024B x 1,533,277 ops/sec ±0.83% (92 runs sampled)
sse4_crc32c_sw for inputs 16829745B, avg 2054B x 99.14 ops/sec ±1.90% (73 runs sampled)
js_crc32c for inputs 1024B x 439,854 ops/sec ±2.55% (89 runs sampled)
js_crc32c for inputs 16829745B, avg 2054B x 26.27 ops/sec ±2.87% (47 runs sampled)
js_crc32 for inputs 1024B x 422,623 ops/sec ±2.52% (83 runs sampled)
js_crc32 for inputs 16829745B, avg 2054B x 28.34 ops/sec ±1.64% (51 runs sampled)
+-----------------+-------------------+----------------------+
|                 │ 1024B             │ 16829745B, avg 2054B |
+-----------------+-------------------+----------------------+
| @node-rs/crc32c │ 5,264,095 ops/sec │ 263 ops/sec          |
+-----------------+-------------------+----------------------+
| sse4_crc32c_hw  │ 3,605,658 ops/sec │ 211 ops/sec          |
+-----------------+-------------------+----------------------+
| sse4_crc32c_sw  │ 1,533,277 ops/sec │ 99.14 ops/sec        |
+-----------------+-------------------+----------------------+
| js_crc32c       │ 439,854 ops/sec   │ 26.27 ops/sec        |
+-----------------+-------------------+----------------------+
| js_crc32        │ 422,623 ops/sec   │ 28.34 ops/sec        |
+-----------------+-------------------+----------------------+

Brooooooklyn avatar Apr 30 '20 09:04 Brooooooklyn