Acme-CPANModules-OrderedHash
view release on metacpan or search on metacpan
lib/Acme/CPANModules/OrderedHash.pm view on Meta::CPAN
TR:X 3400/s 516% 433% 273% 209% 128% 106% --
Legends:
A:O: participant=Array::OrdHash
H:O: participant=Hash::Ordered
T:I: participant=Tie::IxHash
T:L: participant=Tie::LLHash
T:S: participant=Tie::StoredOrderHash
TH:I: participant=Tie::Hash::Indexed
TR:X: participant=Tree::RB::XS
The above result presented as chart:
=begin html
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAtAAAAH4CAMAAABUnipoAAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAADDUExURf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
=end html
Result formatted as table (split, part 2 of 4):
#table2#
{dataset=>"insert 1000 pairs + delete"}
+----------------------+-----------+-----------+-----------------------+-----------------------+---------+---------+
| participant | rate (/s) | time (ms) | pct_faster_vs_slowest | pct_slower_vs_fastest | errors | samples |
+----------------------+-----------+-----------+-----------------------+-----------------------+---------+---------+
| Tie::IxHash | 31 | 32 | 0.00% | 5838.76% | 4.8e-05 | 21 |
| Tie::StoredOrderHash | 310 | 3.3 | 875.00% | 509.10% | 8.6e-06 | 21 |
| Tie::LLHash | 376 | 2.66 | 1098.31% | 395.59% | 2.5e-06 | 20 |
| Array::OrdHash | 440 | 2.3 | 1289.81% | 327.31% | 6.1e-06 | 20 |
| Hash::Ordered | 610 | 1.6 | 1854.01% | 203.93% | 1.9e-06 | 20 |
| Tie::Hash::Indexed | 1060 | 0.946 | 3272.21% | 76.11% | 5.7e-07 | 20 |
| Tree::RB::XS | 1900 | 0.54 | 5838.76% | 0.00% | 6.3e-07 | 20 |
+----------------------+-----------+-----------+-----------------------+-----------------------+---------+---------+
The above result formatted in L<Benchmark.pm|Benchmark> style:
Rate T:I T:S T:L A:O H:O TH:I TR:X
T:I 31/s -- -89% -91% -92% -95% -97% -98%
T:S 310/s 869% -- -19% -30% -51% -71% -83%
T:L 376/s 1103% 24% -- -13% -39% -64% -79%
A:O 440/s 1291% 43% 15% -- -30% -58% -76%
H:O 610/s 1900% 106% 66% 43% -- -40% -66%
TH:I 1060/s 3282% 248% 181% 143% 69% -- -42%
TR:X 1900/s 5825% 511% 392% 325% 196% 75% --
Legends:
A:O: participant=Array::OrdHash
H:O: participant=Hash::Ordered
T:I: participant=Tie::IxHash
T:L: participant=Tie::LLHash
T:S: participant=Tie::StoredOrderHash
TH:I: participant=Tie::Hash::Indexed
TR:X: participant=Tree::RB::XS
The above result presented as chart:
=begin html
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAtAAAAH4CAMAAABUnipoAAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAADDUExURf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
=end html
Result formatted as table (split, part 3 of 4):
#table3#
{dataset=>"insert 1000 pairs + iterate 10 times"}
+----------------------+-----------+-----------+-----------------------+-----------------------+---------+---------+
| participant | rate (/s) | time (ms) | pct_faster_vs_slowest | pct_slower_vs_fastest | errors | samples |
+----------------------+-----------+-----------+-----------------------+-----------------------+---------+---------+
| Tie::StoredOrderHash | 71 | 14 | 0.00% | 508.52% | 2e-05 | 20 |
| Tie::LLHash | 75.4 | 13.3 | 5.52% | 476.69% | 1.2e-05 | 24 |
| Array::OrdHash | 87.2 | 11.5 | 22.04% | 398.65% | 1e-05 | 20 |
| Tie::IxHash | 107 | 9.36 | 49.51% | 307.02% | 2.5e-06 | 20 |
| Tie::Hash::Indexed | 171 | 5.85 | 139.18% | 154.42% | 5e-06 | 21 |
| Hash::Ordered | 250 | 4 | 250.17% | 73.78% | 6.1e-06 | 20 |
| Tree::RB::XS | 435 | 2.3 | 508.52% | 0.00% | 8.2e-07 | 20 |
+----------------------+-----------+-----------+-----------------------+-----------------------+---------+---------+
The above result formatted in L<Benchmark.pm|Benchmark> style:
Rate T:S T:L A:O T:I TH:I H:O TR:X
T:S 71/s -- -4% -17% -33% -58% -71% -83%
T:L 75.4/s 5% -- -13% -29% -56% -69% -82%
A:O 87.2/s 21% 15% -- -18% -49% -65% -80%
T:I 107/s 49% 42% 22% -- -37% -57% -75%
TH:I 171/s 139% 127% 96% 60% -- -31% -60%
H:O 250/s 250% 232% 187% 134% 46% -- -42%
TR:X 435/s 508% 478% 400% 306% 154% 73% --
Legends:
A:O: participant=Array::OrdHash
H:O: participant=Hash::Ordered
T:I: participant=Tie::IxHash
T:L: participant=Tie::LLHash
T:S: participant=Tie::StoredOrderHash
TH:I: participant=Tie::Hash::Indexed
TR:X: participant=Tree::RB::XS
The above result presented as chart:
=begin html
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAtAAAAH4CAMAAABUnipoAAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAADJUExURf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
=end html
Result formatted as table (split, part 4 of 4):
#table4#
{dataset=>"insert 1000 pairs + return keys 100 times"}
+----------------------+-----------+-----------+-----------------------+-----------------------+-----------+---------+
| participant | rate (/s) | time (ms) | pct_faster_vs_slowest | pct_slower_vs_fastest | errors | samples |
+----------------------+-----------+-----------+-----------------------+-----------------------+-----------+---------+
| Tie::StoredOrderHash | 17 | 58 | 0.00% | 1439.14% | 6.1e-05 | 20 |
| Tie::LLHash | 20 | 50 | 16.39% | 1222.37% | 7.3e-05 | 20 |
| Array::OrdHash | 25 | 40 | 44.54% | 964.81% | 0.00011 | 21 |
| Tie::IxHash | 26.8 | 37.3 | 54.99% | 893.08% | 3.3e-05 | 20 |
( run in 1.236 second using v1.01-cache-2.11-cpan-39bf76dae61 )