sharksforarms / deku

Declarative binary reading and writing: bit-level, symmetric, serialization/deserialization
Apache License 2.0
1.14k stars 55 forks source link

Add bit_order attribute #468

Closed wcampbell0x2a closed 1 month ago

github-actions[bot] commented 2 months ago

Benchmark for 09e5363

Click to view benchmark | Test | Base | PR | % | |------|--------------|------------------|---| | deku_read_bits | 1167.8±15.75ns | **1151.4±26.14ns** | **-1.40%** | | deku_read_byte | 3.3±0.18ns | 3.3±0.07ns | 0.00% | | deku_read_enum | 2.6±0.07ns | **2.5±0.05ns** | **-3.85%** | | deku_read_vec | 33.4±0.17ns | 33.5±0.23ns | +0.30% | | deku_write_bits | **181.1±3.81ns** | 227.3±8.01ns | **+25.51%** | | deku_write_byte | 22.8±0.48ns | **21.5±0.39ns** | **-5.70%** | | deku_write_enum | 21.4±0.39ns | **20.8±0.44ns** | **-2.80%** | | deku_write_vec | 398.9±6.73ns | **292.9±7.52ns** | **-26.57%** |
github-actions[bot] commented 2 months ago

Benchmark for 3ab739b

Click to view benchmark | Test | Base | PR | % | |------|--------------|------------------|---| | deku_read_bits | **1161.9±18.70ns** | 1206.1±48.70ns | **+3.80%** | | deku_read_byte | 3.3±0.11ns | 3.3±0.12ns | 0.00% | | deku_read_enum | 2.6±0.06ns | **2.5±0.05ns** | **-3.85%** | | deku_read_vec | 33.5±0.27ns | **33.1±1.06ns** | **-1.19%** | | deku_write_bits | **183.1±7.66ns** | 213.5±4.10ns | **+16.60%** | | deku_write_byte | 22.8±0.57ns | **21.4±0.34ns** | **-6.14%** | | deku_write_enum | 21.4±0.21ns | **20.8±0.34ns** | **-2.80%** | | deku_write_vec | 344.8±6.03ns | **275.8±7.68ns** | **-20.01%** |
github-actions[bot] commented 2 months ago

Benchmark for 50a0120

Click to view benchmark | Test | Base | PR | % | |------|--------------|------------------|---| | deku_read_bits | 1185.5±15.62ns | **1157.4±17.51ns** | **-2.37%** | | deku_read_byte | 3.3±0.08ns | 3.3±0.07ns | 0.00% | | deku_read_enum | 2.6±0.04ns | **2.5±0.07ns** | **-3.85%** | | deku_read_vec | 33.3±0.34ns | 33.4±0.46ns | +0.30% | | deku_write_bits | **182.0±2.19ns** | 237.5±4.94ns | **+30.49%** | | deku_write_byte | 22.8±0.73ns | **21.4±0.28ns** | **-6.14%** | | deku_write_enum | 21.4±0.37ns | **20.9±1.17ns** | **-2.34%** | | deku_write_vec | 403.1±9.18ns | **306.2±4.50ns** | **-24.04%** |
github-actions[bot] commented 2 months ago

Benchmark for 75650a7

Click to view benchmark | Test | Base | PR | % | |------|--------------|------------------|---| | deku_read_bits | **1163.4±15.10ns** | 1220.5±28.61ns | **+4.91%** | | deku_read_byte | 3.3±0.07ns | 3.3±0.06ns | 0.00% | | deku_read_enum | 2.6±0.06ns | **2.5±0.05ns** | **-3.85%** | | deku_read_vec | 33.8±0.34ns | **32.9±0.50ns** | **-2.66%** | | deku_write_bits | **180.2±3.51ns** | 211.5±3.26ns | **+17.37%** | | deku_write_byte | 22.7±0.32ns | **21.4±0.41ns** | **-5.73%** | | deku_write_enum | 21.6±1.17ns | **20.8±0.41ns** | **-3.70%** | | deku_write_vec | 379.6±4.16ns | **283.1±3.85ns** | **-25.42%** |
github-actions[bot] commented 2 months ago

Benchmark for e7b5011

Click to view benchmark | Test | Base | PR | % | |------|--------------|------------------|---| | deku_read_bits | **1165.9±17.89ns** | 1217.1±76.84ns | **+4.39%** | | deku_read_byte | 3.3±0.08ns | 3.3±0.13ns | 0.00% | | deku_read_enum | **2.5±0.08ns** | 2.6±0.09ns | **+4.00%** | | deku_read_vec | **33.0±1.01ns** | 33.9±0.24ns | **+2.73%** | | deku_write_bits | **199.1±6.62ns** | 224.7±5.28ns | **+12.86%** | | deku_write_byte | 22.7±0.37ns | **21.7±0.30ns** | **-4.41%** | | deku_write_enum | 21.8±0.87ns | **20.5±0.33ns** | **-5.96%** | | deku_write_vec | 435.6±5.68ns | **277.6±4.88ns** | **-36.27%** |
sharksforarms commented 2 months ago

@wcampbell0x2a is this ready for review / 0.18? I'll need to allocate some time to review this one

wcampbell0x2a commented 2 months ago

@wcampbell0x2a is this ready for review / 0.18? I'll need to allocate some time to review this one

Let's leave this off. I'll also need time to review and check all of these changes again.

wcampbell0x2a commented 1 month ago

Closing, rebased with https://github.com/sharksforarms/deku/pull/483