deku icon indicating copy to clipboard operation
deku copied to clipboard

Add bit_order attribute

Open wcampbell0x2a opened this issue 1 year ago • 8 comments

Closes #134, #371, #485

wcampbell0x2a avatar Sep 26 '24 00:09 wcampbell0x2a

Benchmark for 3a408bd

Click to view benchmark
Test Base PR %
count 5.0±0.02µs 5.0±0.02µs 0.00%
deku_read_bits 1131.8±10.44ns 1163.6±14.73ns +2.81%
deku_read_byte 5.9±0.18ns 5.3±0.07ns -10.17%
deku_read_enum 4.7±0.04ns 3.9±0.04ns -17.02%
deku_read_vec 41.9±0.33ns 41.6±1.86ns -0.72%
deku_write_bits 189.4±7.62ns 220.3±3.84ns +16.31%
deku_write_byte 25.1±1.08ns 22.8±2.13ns -9.16%
deku_write_enum 22.8±0.18ns 21.2±0.36ns -7.02%
deku_write_vec 406.7±7.32ns 357.8±6.71ns -12.02%
read_all 3.8±0.05µs 4.0±0.10µs +5.26%
read_all_bytes 3.9±0.12µs 3.9±0.11µs 0.00%

github-actions[bot] avatar Sep 26 '24 00:09 github-actions[bot]

Benchmark for e38e559

Click to view benchmark
Test Base PR %
count 5.0±0.02µs 5.0±0.02µs 0.00%
deku_read_bits 1129.4±11.94ns 1161.0±11.19ns +2.80%
deku_read_byte 5.9±0.05ns 4.9±0.06ns -16.95%
deku_read_enum 4.7±0.10ns 5.3±0.03ns +12.77%
deku_read_vec 41.8±0.30ns 42.3±0.30ns +1.20%
deku_write_bits 183.0±2.81ns 219.3±4.54ns +19.84%
deku_write_byte 25.0±0.21ns 22.5±0.26ns -10.00%
deku_write_enum 22.8±0.40ns 21.4±1.04ns -6.14%
deku_write_vec 407.4±13.36ns 354.0±7.89ns -13.11%
read_all 3.8±0.04µs 5.6±0.08µs +47.37%
read_all_bytes 3.9±0.04µs 5.6±0.08µs +43.59%

github-actions[bot] avatar Sep 26 '24 00:09 github-actions[bot]

Benchmark for 7cdecbf

Click to view benchmark
Test Base PR %
count 5.0±0.01µs 5.0±0.01µs 0.00%
deku_read_bits 1147.5±20.80ns 1214.1±24.79ns +5.80%
deku_read_byte 5.9±0.19ns 4.9±0.07ns -16.95%
deku_read_enum 4.7±0.05ns 5.3±0.03ns +12.77%
deku_read_vec 41.8±0.43ns 42.1±0.37ns +0.72%
deku_write_bits 201.3±4.28ns 217.0±5.44ns +7.80%
deku_write_byte 25.0±0.44ns 22.6±0.28ns -9.60%
deku_write_enum 22.8±0.39ns 21.5±0.44ns -5.70%
deku_write_vec 406.9±8.96ns 333.1±8.49ns -18.14%
read_all 3.8±0.06µs 5.6±0.03µs +47.37%
read_all_bytes 3.9±0.06µs 5.6±0.04µs +43.59%

github-actions[bot] avatar Sep 26 '24 01:09 github-actions[bot]

Benchmark for f40bbec

Click to view benchmark
Test Base PR %
count 5.0±0.02µs 5.0±0.02µs 0.00%
deku_read_bits 1155.5±19.46ns 1230.4±17.47ns +6.48%
deku_read_byte 5.8±0.08ns 4.6±0.06ns -20.69%
deku_read_enum 5.3±0.03ns 4.1±0.04ns -22.64%
deku_read_vec 42.3±0.39ns 41.2±0.51ns -2.60%
deku_write_bits 186.9±4.09ns 218.2±2.65ns +16.75%
deku_write_byte 25.0±0.34ns 22.5±0.41ns -10.00%
deku_write_enum 22.8±0.43ns 21.2±0.20ns -7.02%
deku_write_vec 421.3±5.12ns 336.3±10.84ns -20.18%
read_all 5.5±0.05µs 5.6±0.04µs +1.82%
read_all_bytes 5.6±0.02µs 5.5±0.04µs -1.79%

github-actions[bot] avatar Sep 26 '24 01:09 github-actions[bot]

Benchmark for ac4ba04

Click to view benchmark
Test Base PR %
count 5.0±0.02µs 5.0±0.01µs 0.00%
deku_read_bits 1323.8±22.60ns 1204.8±17.14ns -8.99%
deku_read_byte 5.9±0.05ns 4.9±0.18ns -16.95%
deku_read_enum 4.7±0.04ns 5.3±0.03ns +12.77%
deku_read_vec 42.2±0.19ns 42.4±0.40ns +0.47%
deku_write_bits 189.9±3.28ns 214.1±4.45ns +12.74%
deku_write_byte 25.1±0.64ns 22.5±0.37ns -10.36%
deku_write_enum 22.8±0.23ns 21.3±0.32ns -6.58%
deku_write_vec 407.2±10.16ns 347.7±6.83ns -14.61%
read_all 3.8±0.05µs 5.6±0.04µs +47.37%
read_all_bytes 3.9±0.04µs 5.6±0.05µs +43.59%

github-actions[bot] avatar Sep 26 '24 01:09 github-actions[bot]

Benchmark for eecec5e

Click to view benchmark
Test Base PR %
count 5.0±0.02µs 5.0±0.02µs 0.00%
deku_read_bits 1153.1±18.50ns 1162.9±8.75ns +0.85%
deku_read_byte 5.8±0.07ns 5.3±0.03ns -8.62%
deku_read_enum 5.3±0.05ns 3.9±0.06ns -26.42%
deku_read_vec 42.3±0.28ns 41.3±0.26ns -2.36%
deku_write_bits 185.9±3.73ns 219.1±4.41ns +17.86%
deku_write_byte 25.0±0.42ns 22.8±0.59ns -8.80%
deku_write_enum 22.8±0.38ns 21.5±0.29ns -5.70%
deku_write_vec 418.0±4.70ns 360.5±6.31ns -13.76%
read_all 5.6±0.04µs 3.8±0.07µs -32.14%
read_all_bytes 5.7±0.02µs 3.8±0.05µs -33.33%

github-actions[bot] avatar Oct 01 '24 03:10 github-actions[bot]

wow this looks great, I owe you a review. To set expectations I'm busy for a while w/ work so it may need to wait a bit, but I'm very excited about this

sharksforarms avatar Oct 04 '24 13:10 sharksforarms

wow this looks great, I owe you a review. To set expectations I'm busy for a while w/ work so it may need to wait a bit, but I'm very excited about this

No problem!

wcampbell0x2a avatar Oct 04 '24 20:10 wcampbell0x2a

Benchmark for 182af0e

Click to view benchmark
Test Base PR %
count_from_u8_specialize 96.2±11.20ns 96.1±1.24ns -0.10%
count_no_specialize 2.6±0.02µs 2.4±0.02µs -7.69%
count_specialize 95.9±0.87ns 94.4±2.18ns -1.56%
deku_read_bits 1219.1±12.51ns 1209.0±15.61ns -0.83%
deku_read_byte 5.0±0.21ns 4.5±0.07ns -10.00%
deku_read_enum 4.1±0.23ns 3.8±0.07ns -7.32%
deku_read_vec 31.1±1.26ns 30.7±0.47ns -1.29%
deku_write_bits 195.6±7.90ns 239.3±4.62ns +22.34%
deku_write_byte 26.1±0.42ns 23.6±0.39ns -9.58%
deku_write_enum 23.9±0.20ns 22.6±0.35ns -5.44%
deku_write_vec 448.8±4.45ns 514.3±26.85ns +14.59%
read_all 5.1±0.08µs 4.2±0.05µs -17.65%
read_all_bytes 5.1±0.04µs 4.2±0.08µs -17.65%

github-actions[bot] avatar Dec 01 '24 22:12 github-actions[bot]