Optimize the binary search by using unsafe
The jit was not able to tell that bounds checks could be elided. Added an extra whistle for value types to allow for inlined comparisons.
This commit is contained in:
parent
e0e7ca0772
commit
7af48306fe
3 changed files with 368 additions and 330 deletions
|
|
@ -274,39 +274,47 @@ namespace PersistentMap
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||||
private static int BinarySearchKeys<K, TStrategy>(ReadOnlySpan<K> keys, K key, TStrategy strategy)
|
private static int BinarySearchKeys<K, TStrategy>(ReadOnlySpan<K> keys, K key, TStrategy strategy)
|
||||||
where TStrategy : IKeyStrategy<K>
|
where TStrategy : IKeyStrategy<K>
|
||||||
{
|
{
|
||||||
int low = 0;
|
int low = 0;
|
||||||
int high = keys.Length - 1;
|
int high = keys.Length - 1;
|
||||||
|
ref K keysRef = ref MemoryMarshal.GetReference(keys);
|
||||||
|
|
||||||
while (low <= high)
|
while (low <= high)
|
||||||
{
|
{
|
||||||
int mid = low + ((high - low) >> 1);
|
int mid = low + ((high - low) >> 1);
|
||||||
int cmp = strategy.Compare(keys[mid], key);
|
K midKey = Unsafe.Add(ref keysRef, mid);
|
||||||
|
int cmp = strategy.Compare(midKey, key);
|
||||||
|
|
||||||
if (cmp == 0) return mid;
|
if (cmp == 0) return mid;
|
||||||
if (cmp < 0) low = mid + 1;
|
if (cmp < 0) low = mid + 1;
|
||||||
else high = mid - 1;
|
else high = mid - 1;
|
||||||
}
|
}
|
||||||
return low;
|
return low;
|
||||||
}
|
}
|
||||||
|
|
||||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||||
private static int BinaryRoutingKeys<K, TStrategy>(ReadOnlySpan<K> keys, K key, TStrategy strategy)
|
private static int BinaryRoutingKeys<K, TStrategy>(ReadOnlySpan<K> keys, K key, TStrategy strategy)
|
||||||
where TStrategy : IKeyStrategy<K>
|
where TStrategy : IKeyStrategy<K>
|
||||||
{
|
{
|
||||||
int low = 0;
|
int low = 0;
|
||||||
int high = keys.Length - 1;
|
int high = keys.Length - 1;
|
||||||
|
ref K keysRef = ref MemoryMarshal.GetReference(keys);
|
||||||
|
|
||||||
while (low <= high)
|
while (low <= high)
|
||||||
{
|
{
|
||||||
int mid = low + ((high - low) >> 1);
|
int mid = low + ((high - low) >> 1);
|
||||||
int cmp = strategy.Compare(keys[mid], key);
|
K midKey = Unsafe.Add(ref keysRef, mid);
|
||||||
|
int cmp = strategy.Compare(midKey, key);
|
||||||
|
|
||||||
if (cmp <= 0) low = mid + 1;
|
if (cmp <= 0) low = mid + 1;
|
||||||
else high = mid - 1;
|
else high = mid - 1;
|
||||||
}
|
}
|
||||||
return low;
|
return low;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ---------------------------------------------------------
|
// ---------------------------------------------------------
|
||||||
// Insertion Logic
|
// Insertion Logic
|
||||||
// ---------------------------------------------------------
|
// ---------------------------------------------------------
|
||||||
|
|
|
||||||
17
PersistentMap/KeyStrategies/ComparableStrategy.cs
Normal file
17
PersistentMap/KeyStrategies/ComparableStrategy.cs
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
namespace PersistentMap;
|
||||||
|
|
||||||
|
using System.Runtime.CompilerServices;
|
||||||
|
|
||||||
|
// This is a comparable strategy that may squeeze some extra time out of value types
|
||||||
|
|
||||||
|
public readonly struct ComparableStrategy<K> : IKeyStrategy<K> where K : IComparable<K>
|
||||||
|
{
|
||||||
|
public bool UsesPrefixes => false;
|
||||||
|
public bool UseBinarySearch => true;
|
||||||
|
|
||||||
|
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||||
|
public long GetPrefix(K key) => 0;
|
||||||
|
|
||||||
|
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||||
|
public int Compare(K x, K y) => x.CompareTo(y);
|
||||||
|
}
|
||||||
|
|
@ -268,336 +268,349 @@ ImmDict is System.Collections.Immutable dictionary. ImmSortedDict is it's sorted
|
||||||
|
|
||||||
* String keys
|
* String keys
|
||||||
|
|
||||||
These benchmarks act like above, but do not insert keys in a specific order. Sorting them before will yield a speed boost. One uses the standardkeystrategy (does linear string comparisons) and one uses the unicodstrategy which encodes the first 8 bytes as a long and uses avx to search for keys.
|
These benchmarks act like above, but do not insert keys in a specific order. Sorting them before will yield a speed boost. One uses the standardkeystrategy (does a binary search) and one uses the unicodstrategy which encodes the first 8 bytes as a long and uses avx to search for keys.
|
||||||
|
|
||||||
|
|
||||||
#+begin_src
|
#+begin_src
|
||||||
```
|
|
||||||
|
|
||||||
BenchmarkDotNet v0.15.8, Linux Fedora Linux 43 (Container Image)
|
| Method | Size | keylen | Mean | Gen0 | Gen1 | Gen2 | Allocated |
|
||||||
AMD Ryzen 9 5900X 3.69GHz, 1 CPU, 24 logical and 12 physical cores
|
|----------------------------------|--------|--------|------------------:|-----------:|----------:|---------:|------------:|
|
||||||
.NET SDK 10.0.104
|
| Build_TransientMap_Standard | 100 | 8 | 17,993.68 ns | 0.7324 | - | - | 6216 B |
|
||||||
[Host] : .NET 10.0.4 (10.0.4, 10.0.426.12010), X64 RyuJIT x86-64-v3
|
| Build_TransientMap_Unicode | 100 | 8 | 12,240.69 ns | 0.8850 | 0.0153 | - | 7528 B |
|
||||||
ShortRun : .NET 10.0.4 (10.0.4, 10.0.426.12010), X64 RyuJIT x86-64-v3
|
| Build_ImmDict | 100 | 8 | 13,807.87 ns | 5.3406 | 0.0610 | - | 44704 B |
|
||||||
|
| Build_ImmSortedDict | 100 | 8 | 21,920.45 ns | 4.2114 | 0.0305 | - | 35472 B |
|
||||||
Job=ShortRun IterationCount=3 LaunchCount=1
|
| Build_ExtMap | 100 | 8 | 22,192.67 ns | 5.6152 | 0.0610 | - | 47104 B |
|
||||||
WarmupCount=3
|
| Build_ExtHashMap | 100 | 8 | 10,569.35 ns | 4.5013 | 0.0305 | - | 37680 B |
|
||||||
|
| Retrieve_ImmDict | 100 | 8 | 79.60 ns | - | - | - | - |
|
||||||
```
|
| Retrieve_PersistentMap_Standard | 100 | 8 | 1,009.56 ns | - | - | - | - |
|
||||||
| Method | N | StringLength | Mean | Gen0 | Gen1 | Gen2 | Allocated |
|
| Retrieve_PersistentMap_Unicode | 100 | 8 | 148.82 ns | - | - | - | - |
|
||||||
|--------------------------------- |------- |------------- |------------------:|-----------:|----------:|---------:|------------:|
|
| Retrieve_ImmSortedDict | 100 | 8 | 1,198.42 ns | - | - | - | - |
|
||||||
| Build_TransientMap_Standard | 100 | 8 | 42,942.85 ns | 0.7324 | - | - | 6216 B |
|
| Retrieve_ExtMap | 100 | 8 | 1,305.45 ns | - | - | - | - |
|
||||||
| Build_TransientMap_Unicode | 100 | 8 | 12,289.81 ns | 0.8850 | 0.0153 | - | 7528 B |
|
| Retrieve_ExtHashMap | 100 | 8 | 197.96 ns | - | - | - | - |
|
||||||
| Build_ImmDict | 100 | 8 | 14,166.14 ns | 5.4016 | 0.0610 | - | 45280 B |
|
| Update_ImmDict | 100 | 8 | 1,232.22 ns | 0.4826 | 0.0019 | - | 4048 B |
|
||||||
| Build_ImmSortedDict | 100 | 8 | 22,037.60 ns | 4.2114 | 0.0305 | - | 35472 B |
|
| Update_PersistentMap_Standard | 100 | 8 | 2,884.71 ns | 2.4071 | 0.0420 | - | 20160 B |
|
||||||
| Build_ExtMap | 100 | 8 | 22,837.07 ns | 5.6152 | 0.0610 | - | 47104 B |
|
| Update_PersistentMap_Unicode | 100 | 8 | 1,955.50 ns | 2.7046 | 0.0496 | - | 22640 B |
|
||||||
| Build_ExtHashMap | 100 | 8 | 8,907.91 ns | 3.9673 | 0.0305 | - | 33240 B |
|
| Update_TransientMap_Standard | 100 | 8 | 1,621.74 ns | 0.4349 | 0.0038 | - | 3640 B |
|
||||||
| Retrieve_ImmDict | 100 | 8 | 80.81 ns | - | - | - | - |
|
| Update_TransientMap_Unicode | 100 | 8 | 674.43 ns | 0.4644 | 0.0057 | - | 3888 B |
|
||||||
| Retrieve_PersistentMap_Standard | 100 | 8 | 4,956.86 ns | 0.0534 | - | - | 480 B |
|
| Update_ImmSortedDict | 100 | 8 | 1,701.62 ns | 0.3662 | - | - | 3072 B |
|
||||||
| Retrieve_PersistentMap_Unicode | 100 | 8 | 148.61 ns | - | - | - | - |
|
| Update_ExtMap | 100 | 8 | 1,803.33 ns | 0.4120 | - | - | 3456 B |
|
||||||
| Update_ImmDict | 100 | 8 | 1,089.03 ns | 0.4215 | - | - | 3536 B |
|
| Update_ExtHashMap | 100 | 8 | 752.46 ns | 0.5083 | 0.0010 | - | 4256 B |
|
||||||
| Update_PersistentMap_Standard | 100 | 8 | 8,182.15 ns | 2.3956 | 0.0305 | - | 20160 B |
|
| UpdateSet_ImmDict | 100 | 8 | 1,450.07 ns | 0.5512 | 0.0019 | - | 4624 B |
|
||||||
| Update_PersistentMap_Unicode | 100 | 8 | 1,954.07 ns | 2.7046 | 0.0496 | - | 22640 B |
|
| UpdateSet_PersistentMap_Standard | 100 | 8 | 3,246.39 ns | 2.4071 | 0.0420 | - | 20160 B |
|
||||||
| Update_TransientMap_Standard | 100 | 8 | 7,007.11 ns | 0.4349 | - | - | 3640 B |
|
| UpdateSet_PersistentMap_Unicode | 100 | 8 | 2,587.39 ns | 2.7046 | 0.0534 | - | 22640 B |
|
||||||
| Update_TransientMap_Unicode | 100 | 8 | 667.55 ns | 0.4644 | 0.0057 | - | 3888 B |
|
| UpdateSet_TransientMap_Standard | 100 | 8 | 1,970.08 ns | 0.4349 | 0.0038 | - | 3640 B |
|
||||||
| Update_ImmSortedDict | 100 | 8 | 1,741.49 ns | 0.3662 | - | - | 3072 B |
|
| UpdateSet_TransientMap_Unicode | 100 | 8 | 1,184.37 ns | 0.4635 | 0.0057 | - | 3888 B |
|
||||||
| Update_ExtMap | 100 | 8 | 1,812.71 ns | 0.4120 | - | - | 3456 B |
|
| UpdateSet_ImmSortedDict | 100 | 8 | 2,352.86 ns | 0.4578 | - | - | 3840 B |
|
||||||
| Update_ExtHashMap | 100 | 8 | 767.69 ns | 0.5360 | 0.0010 | - | 4488 B |
|
| UpdateSet_ExtMap | 100 | 8 | 2,089.91 ns | 0.4730 | - | - | 3960 B |
|
||||||
| UpdateSet_ImmDict | 100 | 8 | 1,508.45 ns | 0.5589 | 0.0019 | - | 4688 B |
|
| UpdateSet_ExtHashMap | 100 | 8 | 819.11 ns | 0.5445 | 0.0010 | - | 4560 B |
|
||||||
| UpdateSet_PersistentMap_Standard | 100 | 8 | 6,877.98 ns | 2.4033 | 0.0381 | - | 20160 B |
|
| Iterate_ImmDict | 100 | 8 | 1,338.64 ns | - | - | - | - |
|
||||||
| UpdateSet_PersistentMap_Unicode | 100 | 8 | 2,660.42 ns | 2.7046 | 0.0534 | - | 22640 B |
|
| Iterate_PersistentMap_Standard | 100 | 8 | 183.94 ns | - | - | - | - |
|
||||||
| UpdateSet_TransientMap_Standard | 100 | 8 | 5,415.27 ns | 0.4349 | - | - | 3640 B |
|
| Iterate_ImmSortedDict | 100 | 8 | 490.25 ns | - | - | - | - |
|
||||||
| UpdateSet_TransientMap_Unicode | 100 | 8 | 1,212.47 ns | 0.4635 | 0.0057 | - | 3888 B |
|
| Iterate_ExtMap | 100 | 8 | 332.42 ns | 0.0038 | - | - | 32 B |
|
||||||
| UpdateSet_ImmSortedDict | 100 | 8 | 2,424.14 ns | 0.4578 | - | - | 3840 B |
|
| Iterate_ExtHashMap | 100 | 8 | 1,162.47 ns | 0.2747 | - | - | 2304 B |
|
||||||
| UpdateSet_ExtMap | 100 | 8 | 2,111.13 ns | 0.4730 | - | - | 3960 B |
|
| Iterate_PersistentMap_Unicode | 100 | 8 | 186.95 ns | - | - | - | - |
|
||||||
| UpdateSet_ExtHashMap | 100 | 8 | 876.06 ns | 0.5646 | 0.0019 | - | 4728 B |
|
| Remove_ImmDict | 100 | 8 | 1,396.87 ns | 0.4978 | 0.0019 | - | 4176 B |
|
||||||
| Iterate_ImmDict | 100 | 8 | 1,272.01 ns | - | - | - | - |
|
| Remove_PersistentMap_Standard | 100 | 8 | 3,197.32 ns | 2.3804 | 0.0420 | - | 19920 B |
|
||||||
| Iterate_PersistentMap_Standard | 100 | 8 | 191.98 ns | - | - | - | - |
|
| Remove_PersistentMap_Unicode | 100 | 8 | 2,522.69 ns | 2.6779 | 0.0496 | - | 22400 B |
|
||||||
| Iterate_ImmSortedDict | 100 | 8 | 475.35 ns | - | - | - | - |
|
| Remove_TransientMap_Standard | 100 | 8 | 1,973.57 ns | 0.4120 | 0.0038 | - | 3448 B |
|
||||||
| Iterate_ExtMap | 100 | 8 | 322.36 ns | 0.0038 | - | - | 32 B |
|
| Remove_TransientMap_Unicode | 100 | 8 | 1,320.29 ns | 0.4406 | 0.0057 | - | 3688 B |
|
||||||
| Iterate_ExtHashMap | 100 | 8 | 1,179.25 ns | 0.2747 | - | - | 2304 B |
|
| Remove_ImmSortedDict | 100 | 8 | 1,950.87 ns | 0.3777 | - | - | 3168 B |
|
||||||
| Iterate_PersistentMap_Unicode | 100 | 8 | 191.41 ns | - | - | - | - |
|
| Remove_ExtMap | 100 | 8 | 2,240.33 ns | 0.5798 | - | - | 4856 B |
|
||||||
| Remove_ImmDict | 100 | 8 | 1,420.61 ns | 0.5360 | 0.0019 | - | 4496 B |
|
| Remove_ExtHashMap | 100 | 8 | 746.28 ns | 0.5140 | 0.0019 | - | 4304 B |
|
||||||
| Remove_PersistentMap_Standard | 100 | 8 | 8,294.72 ns | 2.4261 | 0.0305 | - | 20400 B |
|
| Build_TransientMap_Standard | 100 | 50 | 18,239.16 ns | 0.7324 | - | - | 6216 B |
|
||||||
| Remove_PersistentMap_Unicode | 100 | 8 | 2,597.23 ns | 2.6779 | 0.0496 | - | 22400 B |
|
| Build_TransientMap_Unicode | 100 | 50 | 11,800.99 ns | 0.8850 | 0.0153 | - | 7528 B |
|
||||||
| Remove_TransientMap_Standard | 100 | 8 | 7,178.94 ns | 0.4654 | - | - | 3928 B |
|
| Build_ImmDict | 100 | 50 | 16,343.07 ns | 5.3406 | 0.0610 | - | 44832 B |
|
||||||
| Remove_TransientMap_Unicode | 100 | 8 | 1,446.12 ns | 0.4406 | 0.0057 | - | 3688 B |
|
| Build_ImmSortedDict | 100 | 50 | 21,709.91 ns | 4.2114 | 0.0305 | - | 35232 B |
|
||||||
| Remove_ImmSortedDict | 100 | 8 | 2,031.56 ns | 0.3777 | - | - | 3168 B |
|
| Build_ExtMap | 100 | 50 | 22,948.94 ns | 5.6458 | 0.0610 | - | 47328 B |
|
||||||
| Remove_ExtMap | 100 | 8 | 2,274.33 ns | 0.5798 | - | - | 4856 B |
|
| Build_ExtHashMap | 100 | 50 | 12,107.35 ns | 4.0894 | 0.0305 | - | 34280 B |
|
||||||
| Remove_ExtHashMap | 100 | 8 | 817.02 ns | 0.5102 | 0.0019 | - | 4272 B |
|
| Retrieve_ImmDict | 100 | 50 | 286.13 ns | - | - | - | - |
|
||||||
| Build_TransientMap_Standard | 100 | 50 | 43,518.39 ns | 0.7324 | - | - | 6216 B |
|
| Retrieve_PersistentMap_Standard | 100 | 50 | 984.90 ns | - | - | - | - |
|
||||||
| Build_TransientMap_Unicode | 100 | 50 | 12,061.37 ns | 0.8850 | 0.0153 | - | 7528 B |
|
| Retrieve_PersistentMap_Unicode | 100 | 50 | 151.45 ns | - | - | - | - |
|
||||||
| Build_ImmDict | 100 | 50 | 16,497.93 ns | 5.4016 | 0.0610 | - | 45216 B |
|
| Retrieve_ImmSortedDict | 100 | 50 | 1,308.09 ns | - | - | - | - |
|
||||||
| Build_ImmSortedDict | 100 | 50 | 22,820.20 ns | 4.2114 | 0.0305 | - | 35232 B |
|
| Retrieve_ExtMap | 100 | 50 | 1,164.25 ns | - | - | - | - |
|
||||||
| Build_ExtMap | 100 | 50 | 22,925.57 ns | 5.6458 | 0.0610 | - | 47328 B |
|
| Retrieve_ExtHashMap | 100 | 50 | 398.29 ns | - | - | - | - |
|
||||||
| Build_ExtHashMap | 100 | 50 | 13,019.93 ns | 4.3945 | 0.0305 | - | 36776 B |
|
| Update_ImmDict | 100 | 50 | 1,390.29 ns | 0.4749 | 0.0019 | - | 3984 B |
|
||||||
| Retrieve_ImmDict | 100 | 50 | 286.77 ns | - | - | - | - |
|
| Update_PersistentMap_Standard | 100 | 50 | 2,932.88 ns | 2.4071 | 0.0381 | - | 20160 B |
|
||||||
| Retrieve_PersistentMap_Standard | 100 | 50 | 4,620.16 ns | 0.0534 | - | - | 480 B |
|
| Update_PersistentMap_Unicode | 100 | 50 | 1,947.26 ns | 2.7046 | 0.0534 | - | 22640 B |
|
||||||
| Retrieve_PersistentMap_Unicode | 100 | 50 | 158.67 ns | - | - | - | - |
|
| Update_TransientMap_Standard | 100 | 50 | 1,545.90 ns | 0.4349 | 0.0038 | - | 3640 B |
|
||||||
| Update_ImmDict | 100 | 50 | 1,490.11 ns | 0.4902 | 0.0019 | - | 4112 B |
|
| Update_TransientMap_Unicode | 100 | 50 | 646.55 ns | 0.4644 | 0.0057 | - | 3888 B |
|
||||||
| Update_PersistentMap_Standard | 100 | 50 | 7,007.05 ns | 2.4033 | 0.0381 | - | 20160 B |
|
| Update_ImmSortedDict | 100 | 50 | 2,010.40 ns | 0.4120 | - | - | 3456 B |
|
||||||
| Update_PersistentMap_Unicode | 100 | 50 | 1,976.44 ns | 2.7046 | 0.0534 | - | 22640 B |
|
| Update_ExtMap | 100 | 50 | 1,961.80 ns | 0.4234 | - | - | 3568 B |
|
||||||
| Update_TransientMap_Standard | 100 | 50 | 6,208.54 ns | 0.4349 | - | - | 3640 B |
|
| Update_ExtHashMap | 100 | 50 | 1,013.87 ns | 0.5188 | 0.0019 | - | 4344 B |
|
||||||
| Update_TransientMap_Unicode | 100 | 50 | 665.76 ns | 0.4644 | 0.0057 | - | 3888 B |
|
| UpdateSet_ImmDict | 100 | 50 | 1,753.26 ns | 0.5665 | 0.0019 | - | 4752 B |
|
||||||
| Update_ImmSortedDict | 100 | 50 | 2,133.72 ns | 0.4120 | - | - | 3456 B |
|
| UpdateSet_PersistentMap_Standard | 100 | 50 | 3,393.56 ns | 2.4071 | 0.0420 | - | 20160 B |
|
||||||
| Update_ExtMap | 100 | 50 | 1,842.17 ns | 0.4253 | - | - | 3568 B |
|
| UpdateSet_PersistentMap_Unicode | 100 | 50 | 2,495.39 ns | 2.7046 | 0.0496 | - | 22640 B |
|
||||||
| Update_ExtHashMap | 100 | 50 | 971.20 ns | 0.5474 | 0.0019 | - | 4592 B |
|
| UpdateSet_TransientMap_Standard | 100 | 50 | 2,073.78 ns | 0.4349 | 0.0038 | - | 3640 B |
|
||||||
| UpdateSet_ImmDict | 100 | 50 | 1,816.66 ns | 0.6046 | 0.0019 | - | 5072 B |
|
| UpdateSet_TransientMap_Unicode | 100 | 50 | 1,258.03 ns | 0.4635 | 0.0057 | - | 3888 B |
|
||||||
| UpdateSet_PersistentMap_Standard | 100 | 50 | 6,616.38 ns | 2.4033 | 0.0381 | - | 20160 B |
|
| UpdateSet_ImmSortedDict | 100 | 50 | 2,456.28 ns | 0.4730 | - | - | 3984 B |
|
||||||
| UpdateSet_PersistentMap_Unicode | 100 | 50 | 2,517.24 ns | 2.7046 | 0.0496 | - | 22640 B |
|
| UpdateSet_ExtMap | 100 | 50 | 2,420.97 ns | 0.5913 | - | - | 4968 B |
|
||||||
| UpdateSet_TransientMap_Standard | 100 | 50 | 5,282.92 ns | 0.4349 | - | - | 3640 B |
|
| UpdateSet_ExtHashMap | 100 | 50 | 894.89 ns | 0.4902 | 0.0019 | - | 4104 B |
|
||||||
| UpdateSet_TransientMap_Unicode | 100 | 50 | 1,214.38 ns | 0.4635 | 0.0057 | - | 3888 B |
|
| Iterate_ImmDict | 100 | 50 | 1,311.46 ns | - | - | - | - |
|
||||||
| UpdateSet_ImmSortedDict | 100 | 50 | 2,531.36 ns | 0.4730 | - | - | 3984 B |
|
| Iterate_PersistentMap_Standard | 100 | 50 | 189.59 ns | - | - | - | - |
|
||||||
| UpdateSet_ExtMap | 100 | 50 | 2,399.90 ns | 0.5913 | - | - | 4968 B |
|
| Iterate_ImmSortedDict | 100 | 50 | 482.89 ns | - | - | - | - |
|
||||||
| UpdateSet_ExtHashMap | 100 | 50 | 1,041.57 ns | 0.5512 | 0.0019 | - | 4624 B |
|
| Iterate_ExtMap | 100 | 50 | 357.71 ns | 0.0038 | - | - | 32 B |
|
||||||
| Iterate_ImmDict | 100 | 50 | 1,265.60 ns | - | - | - | - |
|
| Iterate_ExtHashMap | 100 | 50 | 1,241.61 ns | 0.2918 | - | - | 2448 B |
|
||||||
| Iterate_PersistentMap_Standard | 100 | 50 | 183.51 ns | - | - | - | - |
|
| Iterate_PersistentMap_Unicode | 100 | 50 | 195.23 ns | - | - | - | - |
|
||||||
| Iterate_ImmSortedDict | 100 | 50 | 487.68 ns | - | - | - | - |
|
| Remove_ImmDict | 100 | 50 | 1,412.10 ns | 0.4826 | 0.0019 | - | 4048 B |
|
||||||
| Iterate_ExtMap | 100 | 50 | 313.58 ns | 0.0038 | - | - | 32 B |
|
| Remove_PersistentMap_Standard | 100 | 50 | 3,421.53 ns | 2.3804 | 0.0420 | - | 19920 B |
|
||||||
| Iterate_ExtHashMap | 100 | 50 | 1,174.73 ns | 0.2747 | - | - | 2304 B |
|
| Remove_PersistentMap_Unicode | 100 | 50 | 2,640.76 ns | 2.6779 | 0.0458 | - | 22400 B |
|
||||||
| Iterate_PersistentMap_Unicode | 100 | 50 | 190.36 ns | - | - | - | - |
|
| Remove_TransientMap_Standard | 100 | 50 | 2,333.67 ns | 0.4120 | 0.0038 | - | 3448 B |
|
||||||
| Remove_ImmDict | 100 | 50 | 1,566.27 ns | 0.5283 | 0.0019 | - | 4432 B |
|
| Remove_TransientMap_Unicode | 100 | 50 | 1,393.38 ns | 0.4406 | 0.0057 | - | 3688 B |
|
||||||
| Remove_PersistentMap_Standard | 100 | 50 | 7,539.09 ns | 2.4338 | 0.0381 | - | 20400 B |
|
| Remove_ImmSortedDict | 100 | 50 | 2,034.54 ns | 0.3891 | - | - | 3264 B |
|
||||||
| Remove_PersistentMap_Unicode | 100 | 50 | 2,572.60 ns | 2.6779 | 0.0458 | - | 22400 B |
|
| Remove_ExtMap | 100 | 50 | 2,105.53 ns | 0.4387 | - | - | 3680 B |
|
||||||
| Remove_TransientMap_Standard | 100 | 50 | 6,450.13 ns | 0.4654 | - | - | 3928 B |
|
| Remove_ExtHashMap | 100 | 50 | 914.57 ns | 0.4635 | 0.0010 | - | 3880 B |
|
||||||
| Remove_TransientMap_Unicode | 100 | 50 | 1,408.78 ns | 0.4406 | 0.0057 | - | 3688 B |
|
| Build_TransientMap_Standard | 1000 | 8 | 337,908.27 ns | 5.8594 | - | - | 49512 B |
|
||||||
| Remove_ImmSortedDict | 100 | 50 | 2,241.88 ns | 0.3891 | - | - | 3264 B |
|
| Build_TransientMap_Unicode | 1000 | 8 | 174,485.27 ns | 7.3242 | 0.7324 | - | 62248 B |
|
||||||
| Remove_ExtMap | 100 | 50 | 2,156.69 ns | 0.4387 | - | - | 3680 B |
|
| Build_ImmDict | 1000 | 8 | 258,419.20 ns | 79.1016 | 8.7891 | - | 664448 B |
|
||||||
| Remove_ExtHashMap | 100 | 50 | 927.47 ns | 0.4807 | 0.0010 | - | 4024 B |
|
| Build_ImmSortedDict | 1000 | 8 | 425,563.19 ns | 61.0352 | 4.8828 | - | 513312 B |
|
||||||
| Build_TransientMap_Standard | 1000 | 8 | 741,046.07 ns | 5.8594 | - | - | 49512 B |
|
| Build_ExtMap | 1000 | 8 | 405,979.91 ns | 79.1016 | 7.3242 | - | 662448 B |
|
||||||
| Build_TransientMap_Unicode | 1000 | 8 | 176,282.35 ns | 7.3242 | 0.7324 | - | 62248 B |
|
| Build_ExtHashMap | 1000 | 8 | 149,392.88 ns | 70.5566 | 4.6387 | - | 590896 B |
|
||||||
| Build_ImmDict | 1000 | 8 | 251,462.15 ns | 79.1016 | 8.3008 | - | 663488 B |
|
| Retrieve_ImmDict | 1000 | 8 | 1,055.73 ns | - | - | - | - |
|
||||||
| Build_ImmSortedDict | 1000 | 8 | 420,903.44 ns | 61.0352 | 4.8828 | - | 513312 B |
|
| Retrieve_PersistentMap_Standard | 1000 | 8 | 20,720.92 ns | - | - | - | - |
|
||||||
| Build_ExtMap | 1000 | 8 | 426,942.00 ns | 79.1016 | 7.3242 | - | 662448 B |
|
| Retrieve_PersistentMap_Unicode | 1000 | 8 | 1,920.99 ns | - | - | - | - |
|
||||||
| Build_ExtHashMap | 1000 | 8 | 154,509.50 ns | 70.3125 | 4.8828 | - | 589264 B |
|
| Retrieve_ImmSortedDict | 1000 | 8 | 21,922.86 ns | - | - | - | - |
|
||||||
| Retrieve_ImmDict | 1000 | 8 | 1,057.94 ns | - | - | - | - |
|
| Retrieve_ExtMap | 1000 | 8 | 24,281.46 ns | - | - | - | - |
|
||||||
| Retrieve_PersistentMap_Standard | 1000 | 8 | 71,081.84 ns | 0.4883 | - | - | 4800 B |
|
| Retrieve_ExtHashMap | 1000 | 8 | 2,588.04 ns | - | - | - | - |
|
||||||
| Retrieve_PersistentMap_Unicode | 1000 | 8 | 2,056.30 ns | - | - | - | - |
|
| Update_ImmDict | 1000 | 8 | 19,804.39 ns | 7.3853 | 0.3052 | - | 61792 B |
|
||||||
| Update_ImmDict | 1000 | 8 | 20,613.44 ns | 7.4768 | 0.2747 | - | 62688 B |
|
| Update_PersistentMap_Standard | 1000 | 8 | 39,488.86 ns | 24.0479 | 2.3193 | - | 201600 B |
|
||||||
| Update_PersistentMap_Standard | 1000 | 8 | 91,445.80 ns | 24.0479 | 2.3193 | - | 201600 B |
|
| Update_PersistentMap_Unicode | 1000 | 8 | 28,346.74 ns | 27.0386 | 2.5330 | - | 226400 B |
|
||||||
| Update_PersistentMap_Unicode | 1000 | 8 | 29,005.34 ns | 27.0386 | 2.5330 | - | 226400 B |
|
| Update_TransientMap_Standard | 1000 | 8 | 24,653.11 ns | 4.5471 | 0.4883 | - | 38184 B |
|
||||||
| Update_TransientMap_Standard | 1000 | 8 | 85,352.16 ns | 4.5166 | 0.4883 | - | 38184 B |
|
| Update_TransientMap_Unicode | 1000 | 8 | 7,849.22 ns | 4.4250 | 0.4425 | - | 37024 B |
|
||||||
| Update_TransientMap_Unicode | 1000 | 8 | 7,968.40 ns | 4.4250 | 0.4425 | - | 37024 B |
|
| Update_ImmSortedDict | 1000 | 8 | 31,925.02 ns | 5.7373 | 0.1221 | - | 48288 B |
|
||||||
| Update_ImmSortedDict | 1000 | 8 | 32,334.14 ns | 5.7373 | 0.1221 | - | 48288 B |
|
| Update_ExtMap | 1000 | 8 | 31,958.66 ns | 6.4087 | 0.1831 | - | 53824 B |
|
||||||
| Update_ExtMap | 1000 | 8 | 34,280.75 ns | 6.4087 | 0.1831 | - | 53824 B |
|
| Update_ExtHashMap | 1000 | 8 | 10,986.98 ns | 7.2327 | 0.2441 | - | 60568 B |
|
||||||
| Update_ExtHashMap | 1000 | 8 | 11,163.54 ns | 7.1716 | 0.2289 | - | 60016 B |
|
| UpdateSet_ImmDict | 1000 | 8 | 23,205.06 ns | 8.4839 | 0.4272 | - | 71072 B |
|
||||||
| UpdateSet_ImmDict | 1000 | 8 | 23,570.66 ns | 8.3618 | 0.3967 | - | 69984 B |
|
| UpdateSet_PersistentMap_Standard | 1000 | 8 | 46,680.76 ns | 24.0479 | 2.1973 | - | 201600 B |
|
||||||
| UpdateSet_PersistentMap_Standard | 1000 | 8 | 103,655.77 ns | 24.0479 | 2.1973 | - | 201600 B |
|
| UpdateSet_PersistentMap_Unicode | 1000 | 8 | 33,833.67 ns | 27.0386 | 2.6245 | - | 226400 B |
|
||||||
| UpdateSet_PersistentMap_Unicode | 1000 | 8 | 33,858.71 ns | 27.0386 | 2.6245 | - | 226400 B |
|
| UpdateSet_TransientMap_Standard | 1000 | 8 | 30,683.30 ns | 4.2114 | 0.4272 | - | 35368 B |
|
||||||
| UpdateSet_TransientMap_Standard | 1000 | 8 | 86,914.93 ns | 4.1504 | 0.3662 | - | 35368 B |
|
| UpdateSet_TransientMap_Unicode | 1000 | 8 | 12,650.99 ns | 4.5929 | 0.4883 | - | 38432 B |
|
||||||
| UpdateSet_TransientMap_Unicode | 1000 | 8 | 12,939.69 ns | 4.5929 | 0.4883 | - | 38432 B |
|
| UpdateSet_ImmSortedDict | 1000 | 8 | 37,438.25 ns | 6.3477 | 0.2441 | - | 53232 B |
|
||||||
| UpdateSet_ImmSortedDict | 1000 | 8 | 37,789.08 ns | 6.3477 | 0.2441 | - | 53232 B |
|
| UpdateSet_ExtMap | 1000 | 8 | 37,901.44 ns | 7.6904 | 0.3052 | - | 64576 B |
|
||||||
| UpdateSet_ExtMap | 1000 | 8 | 38,304.46 ns | 7.6904 | 0.3052 | - | 64576 B |
|
| UpdateSet_ExtHashMap | 1000 | 8 | 18,651.16 ns | 7.4768 | 0.2441 | - | 62768 B |
|
||||||
| UpdateSet_ExtHashMap | 1000 | 8 | 14,695.01 ns | 7.7057 | 0.2747 | - | 64464 B |
|
| Iterate_ImmDict | 1000 | 8 | 12,693.24 ns | - | - | - | - |
|
||||||
| Iterate_ImmDict | 1000 | 8 | 13,240.07 ns | - | - | - | - |
|
| Iterate_PersistentMap_Standard | 1000 | 8 | 1,629.13 ns | - | - | - | - |
|
||||||
| Iterate_PersistentMap_Standard | 1000 | 8 | 1,628.88 ns | - | - | - | - |
|
| Iterate_ImmSortedDict | 1000 | 8 | 4,901.80 ns | - | - | - | - |
|
||||||
| Iterate_ImmSortedDict | 1000 | 8 | 4,933.29 ns | - | - | - | - |
|
| Iterate_ExtMap | 1000 | 8 | 3,685.00 ns | 0.0038 | - | - | 32 B |
|
||||||
| Iterate_ExtMap | 1000 | 8 | 3,191.58 ns | 0.0038 | - | - | 32 B |
|
| Iterate_ExtHashMap | 1000 | 8 | 14,519.26 ns | 2.6550 | - | - | 22320 B |
|
||||||
| Iterate_ExtHashMap | 1000 | 8 | 14,380.64 ns | 2.6550 | - | - | 22320 B |
|
| Iterate_PersistentMap_Unicode | 1000 | 8 | 1,612.41 ns | - | - | - | - |
|
||||||
| Iterate_PersistentMap_Unicode | 1000 | 8 | 1,647.93 ns | - | - | - | - |
|
| Remove_ImmDict | 1000 | 8 | 19,718.44 ns | 7.6294 | 0.3052 | - | 63840 B |
|
||||||
| Remove_ImmDict | 1000 | 8 | 20,527.32 ns | 7.6599 | 0.3052 | - | 64160 B |
|
| Remove_PersistentMap_Standard | 1000 | 8 | 45,580.39 ns | 23.8037 | 2.0752 | - | 199200 B |
|
||||||
| Remove_PersistentMap_Standard | 1000 | 8 | 106,140.73 ns | 24.2920 | 1.5869 | - | 204000 B |
|
| Remove_PersistentMap_Unicode | 1000 | 8 | 29,970.54 ns | 26.7639 | 2.4414 | - | 224000 B |
|
||||||
| Remove_PersistentMap_Unicode | 1000 | 8 | 30,242.16 ns | 26.7639 | 2.4414 | - | 224000 B |
|
| Remove_TransientMap_Standard | 1000 | 8 | 29,451.58 ns | 4.0894 | 0.3967 | - | 34424 B |
|
||||||
| Remove_TransientMap_Standard | 1000 | 8 | 91,057.33 ns | 4.6387 | 0.4883 | - | 39224 B |
|
| Remove_TransientMap_Unicode | 1000 | 8 | 14,136.83 ns | 3.7994 | 0.3662 | - | 31848 B |
|
||||||
| Remove_TransientMap_Unicode | 1000 | 8 | 14,218.28 ns | 3.7994 | 0.3662 | - | 31848 B |
|
| Remove_ImmSortedDict | 1000 | 8 | 33,400.75 ns | 5.6763 | 0.1221 | - | 47616 B |
|
||||||
| Remove_ImmSortedDict | 1000 | 8 | 33,413.24 ns | 5.6763 | 0.1221 | - | 47616 B |
|
| Remove_ExtMap | 1000 | 8 | 36,167.45 ns | 6.8970 | 0.1831 | - | 57744 B |
|
||||||
| Remove_ExtMap | 1000 | 8 | 37,472.01 ns | 6.8970 | 0.1831 | - | 57744 B |
|
| Remove_ExtHashMap | 1000 | 8 | 12,681.31 ns | 8.0414 | 0.2289 | - | 67288 B |
|
||||||
| Remove_ExtHashMap | 1000 | 8 | 12,185.93 ns | 7.9803 | 0.2441 | - | 66864 B |
|
| Build_TransientMap_Standard | 1000 | 50 | 342,796.72 ns | 5.3711 | - | - | 44992 B |
|
||||||
| Build_TransientMap_Standard | 1000 | 50 | 727,350.80 ns | 4.8828 | - | - | 44992 B |
|
| Build_TransientMap_Unicode | 1000 | 50 | 173,477.79 ns | 7.0801 | 0.4883 | - | 59368 B |
|
||||||
| Build_TransientMap_Unicode | 1000 | 50 | 176,948.61 ns | 7.0801 | 0.4883 | - | 59368 B |
|
| Build_ImmDict | 1000 | 50 | 275,481.11 ns | 79.1016 | 9.2773 | - | 662528 B |
|
||||||
| Build_ImmDict | 1000 | 50 | 285,938.59 ns | 78.6133 | 8.3008 | - | 660096 B |
|
| Build_ImmSortedDict | 1000 | 50 | 417,349.29 ns | 61.0352 | 5.3711 | - | 511344 B |
|
||||||
| Build_ImmSortedDict | 1000 | 50 | 433,882.40 ns | 61.0352 | 5.3711 | - | 511344 B |
|
| Build_ExtMap | 1000 | 50 | 406,348.46 ns | 78.1250 | 7.3242 | - | 656288 B |
|
||||||
| Build_ExtMap | 1000 | 50 | 412,922.58 ns | 78.1250 | 7.3242 | - | 656288 B |
|
| Build_ExtHashMap | 1000 | 50 | 180,890.87 ns | 69.5801 | 4.8828 | - | 582472 B |
|
||||||
| Build_ExtHashMap | 1000 | 50 | 185,309.94 ns | 70.3125 | 4.8828 | - | 589128 B |
|
| Retrieve_ImmDict | 1000 | 50 | 3,137.95 ns | - | - | - | - |
|
||||||
| Retrieve_ImmDict | 1000 | 50 | 3,151.77 ns | - | - | - | - |
|
| Retrieve_PersistentMap_Standard | 1000 | 50 | 20,432.33 ns | - | - | - | - |
|
||||||
| Retrieve_PersistentMap_Standard | 1000 | 50 | 76,705.78 ns | 0.4883 | - | - | 4800 B |
|
| Retrieve_PersistentMap_Unicode | 1000 | 50 | 2,096.52 ns | - | - | - | - |
|
||||||
| Retrieve_PersistentMap_Unicode | 1000 | 50 | 2,077.37 ns | - | - | - | - |
|
| Retrieve_ImmSortedDict | 1000 | 50 | 20,986.51 ns | - | - | - | - |
|
||||||
| Update_ImmDict | 1000 | 50 | 23,312.29 ns | 7.5073 | 0.3052 | - | 62880 B |
|
| Retrieve_ExtMap | 1000 | 50 | 23,287.17 ns | - | - | - | - |
|
||||||
| Update_PersistentMap_Standard | 1000 | 50 | 93,945.90 ns | 24.0479 | 2.0752 | - | 201600 B |
|
| Retrieve_ExtHashMap | 1000 | 50 | 4,776.52 ns | - | - | - | - |
|
||||||
| Update_PersistentMap_Unicode | 1000 | 50 | 29,787.05 ns | 27.0386 | 2.2888 | - | 226400 B |
|
| Update_ImmDict | 1000 | 50 | 25,749.96 ns | 7.5989 | 0.3052 | - | 63776 B |
|
||||||
| Update_TransientMap_Standard | 1000 | 50 | 85,349.42 ns | 3.7842 | 0.2441 | - | 32552 B |
|
| Update_PersistentMap_Standard | 1000 | 50 | 39,878.09 ns | 24.0479 | 2.0752 | - | 201600 B |
|
||||||
| Update_TransientMap_Unicode | 1000 | 50 | 7,349.19 ns | 4.0894 | 0.4044 | - | 34208 B |
|
| Update_PersistentMap_Unicode | 1000 | 50 | 28,771.02 ns | 27.0386 | 2.2888 | - | 226400 B |
|
||||||
| Update_ImmSortedDict | 1000 | 50 | 32,705.50 ns | 5.6763 | 0.1221 | - | 47952 B |
|
| Update_TransientMap_Standard | 1000 | 50 | 24,641.84 ns | 3.8757 | 0.3357 | - | 32552 B |
|
||||||
| Update_ExtMap | 1000 | 50 | 33,742.93 ns | 6.5308 | 0.1831 | - | 54720 B |
|
| Update_TransientMap_Unicode | 1000 | 50 | 7,785.56 ns | 4.0894 | 0.3967 | - | 34208 B |
|
||||||
| Update_ExtHashMap | 1000 | 50 | 13,720.77 ns | 7.2479 | 0.2289 | - | 60688 B |
|
| Update_ImmSortedDict | 1000 | 50 | 32,625.21 ns | 5.6763 | 0.1221 | - | 47952 B |
|
||||||
| UpdateSet_ImmDict | 1000 | 50 | 24,725.01 ns | 8.0566 | 0.3967 | - | 67424 B |
|
| Update_ExtMap | 1000 | 50 | 33,656.18 ns | 6.5308 | 0.1831 | - | 54720 B |
|
||||||
| UpdateSet_PersistentMap_Standard | 1000 | 50 | 106,965.60 ns | 24.1699 | 1.9531 | - | 202504 B |
|
| Update_ExtHashMap | 1000 | 50 | 13,197.36 ns | 7.1869 | 0.2289 | - | 60168 B |
|
||||||
| UpdateSet_PersistentMap_Unicode | 1000 | 50 | 34,398.72 ns | 27.2217 | 2.6245 | - | 227840 B |
|
| UpdateSet_ImmDict | 1000 | 50 | 24,838.46 ns | 8.2397 | 0.3967 | - | 68960 B |
|
||||||
| UpdateSet_TransientMap_Standard | 1000 | 50 | 89,942.92 ns | 3.9063 | 0.3662 | - | 33456 B |
|
| UpdateSet_PersistentMap_Standard | 1000 | 50 | 47,257.42 ns | 24.1699 | 2.0142 | - | 202504 B |
|
||||||
| UpdateSet_TransientMap_Unicode | 1000 | 50 | 13,555.52 ns | 4.4250 | 0.4578 | - | 37056 B |
|
| UpdateSet_PersistentMap_Unicode | 1000 | 50 | 34,871.45 ns | 27.2217 | 2.6245 | - | 227840 B |
|
||||||
| UpdateSet_ImmSortedDict | 1000 | 50 | 37,035.94 ns | 6.2866 | 0.1831 | - | 53088 B |
|
| UpdateSet_TransientMap_Standard | 1000 | 50 | 30,705.12 ns | 3.9673 | 0.3662 | - | 33456 B |
|
||||||
| UpdateSet_ExtMap | 1000 | 50 | 39,025.94 ns | 7.8735 | 0.3052 | - | 66200 B |
|
| UpdateSet_TransientMap_Unicode | 1000 | 50 | 13,306.26 ns | 4.4250 | 0.4578 | - | 37056 B |
|
||||||
| UpdateSet_ExtHashMap | 1000 | 50 | 15,654.51 ns | 7.5989 | 0.2441 | - | 63608 B |
|
| UpdateSet_ImmSortedDict | 1000 | 50 | 37,358.03 ns | 6.2866 | 0.1831 | - | 53088 B |
|
||||||
| Iterate_ImmDict | 1000 | 50 | 12,858.73 ns | - | - | - | - |
|
| UpdateSet_ExtMap | 1000 | 50 | 39,040.99 ns | 7.8735 | 0.3052 | - | 66200 B |
|
||||||
| Iterate_PersistentMap_Standard | 1000 | 50 | 1,674.98 ns | - | - | - | - |
|
| UpdateSet_ExtHashMap | 1000 | 50 | 18,993.92 ns | 7.9346 | 0.2747 | - | 66584 B |
|
||||||
| Iterate_ImmSortedDict | 1000 | 50 | 4,882.38 ns | - | - | - | - |
|
| Iterate_ImmDict | 1000 | 50 | 12,796.55 ns | - | - | - | - |
|
||||||
| Iterate_ExtMap | 1000 | 50 | 3,498.40 ns | 0.0038 | - | - | 32 B |
|
| Iterate_PersistentMap_Standard | 1000 | 50 | 1,601.24 ns | - | - | - | - |
|
||||||
| Iterate_ExtHashMap | 1000 | 50 | 14,585.65 ns | 2.7008 | - | - | 22608 B |
|
| Iterate_ImmSortedDict | 1000 | 50 | 4,897.01 ns | - | - | - | - |
|
||||||
| Iterate_PersistentMap_Unicode | 1000 | 50 | 1,654.17 ns | - | - | - | - |
|
| Iterate_ExtMap | 1000 | 50 | 3,590.09 ns | 0.0038 | - | - | 32 B |
|
||||||
| Remove_ImmDict | 1000 | 50 | 24,001.50 ns | 7.6904 | 0.3052 | - | 64480 B |
|
| Iterate_ExtHashMap | 1000 | 50 | 14,570.64 ns | 2.6550 | - | - | 22320 B |
|
||||||
| Remove_PersistentMap_Standard | 1000 | 50 | 115,583.75 ns | 24.2920 | 1.7090 | - | 204000 B |
|
| Iterate_PersistentMap_Unicode | 1000 | 50 | 1,624.65 ns | - | - | - | - |
|
||||||
| Remove_PersistentMap_Unicode | 1000 | 50 | 30,177.90 ns | 26.7639 | 2.2583 | - | 224000 B |
|
| Remove_ImmDict | 1000 | 50 | 22,247.23 ns | 7.7209 | 0.3357 | - | 64800 B |
|
||||||
| Remove_TransientMap_Standard | 1000 | 50 | 104,629.87 ns | 3.9063 | 0.2441 | - | 33592 B |
|
| Remove_PersistentMap_Standard | 1000 | 50 | 47,236.28 ns | 23.8037 | 2.0752 | - | 199200 B |
|
||||||
| Remove_TransientMap_Unicode | 1000 | 50 | 13,859.15 ns | 3.2959 | 0.2899 | - | 27624 B |
|
| Remove_PersistentMap_Unicode | 1000 | 50 | 30,337.50 ns | 26.7639 | 2.2583 | - | 224000 B |
|
||||||
| Remove_ImmSortedDict | 1000 | 50 | 34,305.81 ns | 5.6763 | 0.1221 | - | 47664 B |
|
| Remove_TransientMap_Standard | 1000 | 50 | 30,224.03 ns | 3.4180 | 0.3052 | - | 28792 B |
|
||||||
| Remove_ExtMap | 1000 | 50 | 36,962.41 ns | 6.9580 | 0.2441 | - | 58640 B |
|
| Remove_TransientMap_Unicode | 1000 | 50 | 13,980.33 ns | 3.2959 | 0.2899 | - | 27624 B |
|
||||||
| Remove_ExtHashMap | 1000 | 50 | 14,045.01 ns | 7.8583 | 0.1984 | - | 65800 B |
|
| Remove_ImmSortedDict | 1000 | 50 | 34,150.76 ns | 5.6763 | 0.1221 | - | 47664 B |
|
||||||
| Build_TransientMap_Standard | 10000 | 8 | 10,481,091.44 ns | 46.8750 | 15.6250 | - | 453272 B |
|
| Remove_ExtMap | 1000 | 50 | 36,453.25 ns | 6.9580 | 0.2441 | - | 58640 B |
|
||||||
| Build_TransientMap_Unicode | 10000 | 8 | 2,288,777.17 ns | 66.4063 | 19.5313 | - | 576584 B |
|
| Remove_ExtHashMap | 1000 | 50 | 14,511.93 ns | 7.9041 | 0.2136 | - | 66176 B |
|
||||||
| Build_ImmDict | 10000 | 8 | 4,451,716.58 ns | 1046.8750 | 500.0000 | - | 8790528 B |
|
| Build_TransientMap_Standard | 10000 | 8 | 4,972,737.60 ns | 46.8750 | 7.8125 | - | 453272 B |
|
||||||
| Build_ImmSortedDict | 10000 | 8 | 6,589,276.41 ns | 804.6875 | 281.2500 | - | 6767232 B |
|
| Build_TransientMap_Unicode | 10000 | 8 | 2,273,723.34 ns | 66.4063 | 19.5313 | - | 576584 B |
|
||||||
| Build_ExtMap | 10000 | 8 | 6,466,222.77 ns | 1015.6250 | 437.5000 | - | 8542480 B |
|
| Build_ImmDict | 10000 | 8 | 4,474,574.70 ns | 1039.0625 | 507.8125 | - | 8751104 B |
|
||||||
| Build_ExtHashMap | 10000 | 8 | 1,987,067.22 ns | 945.3125 | 312.5000 | - | 7921664 B |
|
| Build_ImmSortedDict | 10000 | 8 | 6,548,873.72 ns | 804.6875 | 281.2500 | - | 6767232 B |
|
||||||
| Retrieve_ImmDict | 10000 | 8 | 23,653.66 ns | - | - | - | - |
|
| Build_ExtMap | 10000 | 8 | 6,462,311.12 ns | 1015.6250 | 437.5000 | - | 8542480 B |
|
||||||
| Retrieve_PersistentMap_Standard | 10000 | 8 | 1,067,006.38 ns | 7.8125 | - | - | 72000 B |
|
| Build_ExtHashMap | 10000 | 8 | 1,921,265.07 ns | 945.3125 | 326.1719 | - | 7907368 B |
|
||||||
| Retrieve_PersistentMap_Unicode | 10000 | 8 | 33,794.37 ns | - | - | - | - |
|
| Retrieve_ImmDict | 10000 | 8 | 21,054.43 ns | - | - | - | - |
|
||||||
| Update_ImmDict | 10000 | 8 | 393,904.16 ns | 100.5859 | 25.3906 | - | 844992 B |
|
| Retrieve_PersistentMap_Standard | 10000 | 8 | 386,477.89 ns | - | - | - | - |
|
||||||
| Update_PersistentMap_Standard | 10000 | 8 | 1,373,414.67 ns | 304.6875 | 132.8125 | - | 2560000 B |
|
| Retrieve_PersistentMap_Unicode | 10000 | 8 | 32,919.53 ns | - | - | - | - |
|
||||||
| Update_PersistentMap_Unicode | 10000 | 8 | 416,266.85 ns | 366.2109 | 160.1563 | - | 3064000 B |
|
| Retrieve_ImmSortedDict | 10000 | 8 | 383,296.28 ns | - | - | - | - |
|
||||||
| Update_TransientMap_Standard | 10000 | 8 | 1,160,717.93 ns | 41.0156 | 13.6719 | - | 346280 B |
|
| Retrieve_ExtMap | 10000 | 8 | 447,733.80 ns | - | - | - | - |
|
||||||
| Update_TransientMap_Unicode | 10000 | 8 | 154,306.58 ns | 40.7715 | 16.6016 | - | 341792 B |
|
| Retrieve_ExtHashMap | 10000 | 8 | 38,576.71 ns | - | - | - | - |
|
||||||
| Update_ImmSortedDict | 10000 | 8 | 583,839.85 ns | 76.1719 | 15.6250 | - | 640368 B |
|
| Update_ImmDict | 10000 | 8 | 395,715.60 ns | 101.0742 | 27.3438 | - | 848128 B |
|
||||||
| Update_ExtMap | 10000 | 8 | 571,924.12 ns | 87.8906 | 22.4609 | - | 735640 B |
|
| Update_PersistentMap_Standard | 10000 | 8 | 662,654.83 ns | 305.6641 | 131.8359 | - | 2560000 B |
|
||||||
| Update_ExtHashMap | 10000 | 8 | 164,331.80 ns | 102.7832 | 22.9492 | - | 860152 B |
|
| Update_PersistentMap_Unicode | 10000 | 8 | 425,935.07 ns | 366.2109 | 160.1563 | - | 3064000 B |
|
||||||
| UpdateSet_ImmDict | 10000 | 8 | 433,669.48 ns | 108.3984 | 29.2969 | - | 907072 B |
|
| Update_TransientMap_Standard | 10000 | 8 | 442,700.87 ns | 41.0156 | 14.1602 | - | 346280 B |
|
||||||
| UpdateSet_PersistentMap_Standard | 10000 | 8 | 1,426,063.43 ns | 306.6406 | 130.8594 | - | 2572328 B |
|
| Update_TransientMap_Unicode | 10000 | 8 | 152,961.90 ns | 40.7715 | 16.6016 | - | 341792 B |
|
||||||
| UpdateSet_PersistentMap_Unicode | 10000 | 8 | 502,233.19 ns | 368.1641 | 154.2969 | - | 3086432 B |
|
| Update_ImmSortedDict | 10000 | 8 | 599,396.52 ns | 76.1719 | 15.6250 | - | 640368 B |
|
||||||
| UpdateSet_TransientMap_Standard | 10000 | 8 | 1,183,758.86 ns | 41.0156 | 15.6250 | - | 357200 B |
|
| Update_ExtMap | 10000 | 8 | 565,510.82 ns | 87.8906 | 22.4609 | - | 735640 B |
|
||||||
| UpdateSet_TransientMap_Unicode | 10000 | 8 | 224,362.69 ns | 43.7012 | 16.3574 | - | 365632 B |
|
| Update_ExtHashMap | 10000 | 8 | 165,164.46 ns | 102.5391 | 20.9961 | - | 859160 B |
|
||||||
| UpdateSet_ImmSortedDict | 10000 | 8 | 648,222.74 ns | 82.0313 | 19.5313 | - | 687648 B |
|
| UpdateSet_ImmDict | 10000 | 8 | 436,729.87 ns | 108.3984 | 29.2969 | - | 908672 B |
|
||||||
| UpdateSet_ExtMap | 10000 | 8 | 638,998.68 ns | 99.6094 | 25.3906 | - | 833752 B |
|
| UpdateSet_PersistentMap_Standard | 10000 | 8 | 751,649.78 ns | 306.6406 | 131.8359 | - | 2572328 B |
|
||||||
| UpdateSet_ExtHashMap | 10000 | 8 | 188,297.97 ns | 104.9805 | 23.9258 | - | 878640 B |
|
| UpdateSet_PersistentMap_Unicode | 10000 | 8 | 499,253.41 ns | 368.1641 | 154.2969 | - | 3086432 B |
|
||||||
| Iterate_ImmDict | 10000 | 8 | 180,912.56 ns | - | - | - | - |
|
| UpdateSet_TransientMap_Standard | 10000 | 8 | 538,898.72 ns | 41.9922 | 16.6016 | - | 357200 B |
|
||||||
| Iterate_PersistentMap_Standard | 10000 | 8 | 17,134.49 ns | - | - | - | - |
|
| UpdateSet_TransientMap_Unicode | 10000 | 8 | 227,890.12 ns | 43.7012 | 16.3574 | - | 365632 B |
|
||||||
| Iterate_ImmSortedDict | 10000 | 8 | 55,355.92 ns | - | - | - | - |
|
| UpdateSet_ImmSortedDict | 10000 | 8 | 650,234.49 ns | 82.0313 | 19.5313 | - | 687648 B |
|
||||||
| Iterate_ExtMap | 10000 | 8 | 66,171.51 ns | - | - | - | 32 B |
|
| UpdateSet_ExtMap | 10000 | 8 | 641,265.51 ns | 99.6094 | 25.3906 | - | 833752 B |
|
||||||
| Iterate_ExtHashMap | 10000 | 8 | 173,270.08 ns | 20.2637 | - | - | 171360 B |
|
| UpdateSet_ExtHashMap | 10000 | 8 | 194,749.46 ns | 104.9805 | 23.9258 | - | 878808 B |
|
||||||
| Iterate_PersistentMap_Unicode | 10000 | 8 | 17,291.12 ns | - | - | - | - |
|
| Iterate_ImmDict | 10000 | 8 | 174,946.48 ns | - | - | - | - |
|
||||||
| Remove_ImmDict | 10000 | 8 | 398,833.85 ns | 102.0508 | 24.9023 | - | 857216 B |
|
| Iterate_PersistentMap_Standard | 10000 | 8 | 17,152.00 ns | - | - | - | - |
|
||||||
| Remove_PersistentMap_Standard | 10000 | 8 | 1,488,081.64 ns | 310.5469 | 123.0469 | - | 2608000 B |
|
| Iterate_ImmSortedDict | 10000 | 8 | 52,817.11 ns | - | - | - | - |
|
||||||
| Remove_PersistentMap_Unicode | 10000 | 8 | 492,391.59 ns | 363.2813 | 180.6641 | - | 3041408 B |
|
| Iterate_ExtMap | 10000 | 8 | 66,083.05 ns | - | - | - | 32 B |
|
||||||
| Remove_TransientMap_Standard | 10000 | 8 | 1,334,741.70 ns | 44.9219 | 15.6250 | - | 388696 B |
|
| Iterate_ExtHashMap | 10000 | 8 | 174,496.27 ns | 20.2637 | - | - | 169704 B |
|
||||||
| Remove_TransientMap_Unicode | 10000 | 8 | 224,694.52 ns | 38.0859 | 15.1367 | - | 319240 B |
|
| Iterate_PersistentMap_Unicode | 10000 | 8 | 17,945.71 ns | - | - | - | - |
|
||||||
| Remove_ImmSortedDict | 10000 | 8 | 624,219.05 ns | 77.1484 | 15.6250 | - | 652944 B |
|
| Remove_ImmDict | 10000 | 8 | 402,693.02 ns | 102.0508 | 23.4375 | - | 855488 B |
|
||||||
| Remove_ExtMap | 10000 | 8 | 648,812.07 ns | 91.7969 | 20.5078 | - | 774000 B |
|
| Remove_PersistentMap_Standard | 10000 | 8 | 731,170.91 ns | 302.7344 | 117.1875 | - | 2536000 B |
|
||||||
| Remove_ExtHashMap | 10000 | 8 | 187,697.63 ns | 104.2480 | 21.4844 | - | 873600 B |
|
| Remove_PersistentMap_Unicode | 10000 | 8 | 493,821.11 ns | 363.2813 | 180.6641 | - | 3041408 B |
|
||||||
| Build_TransientMap_Standard | 10000 | 50 | 11,121,008.03 ns | 46.8750 | 15.6250 | - | 453272 B |
|
| Remove_TransientMap_Standard | 10000 | 8 | 511,709.67 ns | 37.1094 | 13.6719 | - | 316696 B |
|
||||||
| Build_TransientMap_Unicode | 10000 | 50 | 2,345,447.27 ns | 66.4063 | 23.4375 | - | 567112 B |
|
| Remove_TransientMap_Unicode | 10000 | 8 | 223,881.92 ns | 38.0859 | 15.1367 | - | 319240 B |
|
||||||
| Build_ImmDict | 10000 | 50 | 4,711,900.43 ns | 1039.0625 | 507.8125 | - | 8746752 B |
|
| Remove_ImmSortedDict | 10000 | 8 | 600,831.24 ns | 77.1484 | 15.6250 | - | 652944 B |
|
||||||
| Build_ImmSortedDict | 10000 | 50 | 6,774,329.88 ns | 804.6875 | 265.6250 | - | 6751584 B |
|
| Remove_ExtMap | 10000 | 8 | 617,128.15 ns | 91.7969 | 20.5078 | - | 774000 B |
|
||||||
| Build_ExtMap | 10000 | 50 | 6,748,429.60 ns | 1015.6250 | 429.6875 | - | 8544720 B |
|
| Remove_ExtHashMap | 10000 | 8 | 179,929.34 ns | 104.4922 | 22.4609 | - | 874984 B |
|
||||||
| Build_ExtHashMap | 10000 | 50 | 2,211,770.12 ns | 941.4063 | 332.0313 | - | 7894224 B |
|
| Build_TransientMap_Standard | 10000 | 50 | 5,124,826.21 ns | 46.8750 | 7.8125 | - | 453272 B |
|
||||||
| Retrieve_ImmDict | 10000 | 50 | 53,674.39 ns | - | - | - | - |
|
| Build_TransientMap_Unicode | 10000 | 50 | 2,251,023.03 ns | 66.4063 | 23.4375 | - | 567112 B |
|
||||||
| Retrieve_PersistentMap_Standard | 10000 | 50 | 1,099,621.23 ns | 7.8125 | - | - | 72000 B |
|
| Build_ImmDict | 10000 | 50 | 4,751,856.80 ns | 1046.8750 | 507.8125 | - | 8757376 B |
|
||||||
| Retrieve_PersistentMap_Unicode | 10000 | 50 | 34,282.21 ns | - | - | - | - |
|
| Build_ImmSortedDict | 10000 | 50 | 6,556,900.60 ns | 804.6875 | 265.6250 | - | 6751584 B |
|
||||||
| Update_ImmDict | 10000 | 50 | 416,110.39 ns | 101.0742 | 24.9023 | - | 845696 B |
|
| Build_ExtMap | 10000 | 50 | 6,985,344.36 ns | 1015.6250 | 429.6875 | - | 8544720 B |
|
||||||
| Update_PersistentMap_Standard | 10000 | 50 | 1,432,050.69 ns | 304.6875 | 125.0000 | - | 2560000 B |
|
| Build_ExtHashMap | 10000 | 50 | 2,218,415.86 ns | 945.3125 | 308.5938 | - | 7925728 B |
|
||||||
| Update_PersistentMap_Unicode | 10000 | 50 | 482,376.79 ns | 366.2109 | 158.2031 | - | 3064000 B |
|
| Retrieve_ImmDict | 10000 | 50 | 46,389.46 ns | - | - | - | - |
|
||||||
| Update_TransientMap_Standard | 10000 | 50 | 1,185,346.37 ns | 39.0625 | 11.7188 | - | 339240 B |
|
| Retrieve_PersistentMap_Standard | 10000 | 50 | 397,729.79 ns | - | - | - | - |
|
||||||
| Update_TransientMap_Unicode | 10000 | 50 | 153,479.49 ns | 39.5508 | 13.9160 | - | 331136 B |
|
| Retrieve_PersistentMap_Unicode | 10000 | 50 | 33,945.57 ns | - | - | - | - |
|
||||||
| Update_ImmSortedDict | 10000 | 50 | 578,927.03 ns | 76.1719 | 14.6484 | - | 641616 B |
|
| Retrieve_ImmSortedDict | 10000 | 50 | 385,767.81 ns | - | - | - | - |
|
||||||
| Update_ExtMap | 10000 | 50 | 582,689.89 ns | 86.9141 | 20.5078 | - | 732896 B |
|
| Retrieve_ExtMap | 10000 | 50 | 426,750.47 ns | - | - | - | - |
|
||||||
| Update_ExtHashMap | 10000 | 50 | 195,769.80 ns | 102.5391 | 20.5078 | - | 859328 B |
|
| Retrieve_ExtHashMap | 10000 | 50 | 61,891.51 ns | - | - | - | - |
|
||||||
| UpdateSet_ImmDict | 10000 | 50 | 460,644.35 ns | 109.3750 | 30.2734 | - | 915264 B |
|
| Update_ImmDict | 10000 | 50 | 419,181.33 ns | 101.0742 | 27.3438 | - | 848768 B |
|
||||||
| UpdateSet_PersistentMap_Standard | 10000 | 50 | 1,488,123.25 ns | 306.6406 | 132.8125 | - | 2575040 B |
|
| Update_PersistentMap_Standard | 10000 | 50 | 674,365.10 ns | 305.6641 | 125.9766 | - | 2560000 B |
|
||||||
| UpdateSet_PersistentMap_Unicode | 10000 | 50 | 516,710.59 ns | 368.1641 | 152.3438 | - | 3085600 B |
|
| Update_PersistentMap_Unicode | 10000 | 50 | 423,829.00 ns | 366.2109 | 158.2031 | - | 3064000 B |
|
||||||
| UpdateSet_TransientMap_Standard | 10000 | 50 | 1,257,184.91 ns | 41.0156 | 13.6719 | - | 355688 B |
|
| Update_TransientMap_Standard | 10000 | 50 | 455,884.40 ns | 40.5273 | 13.6719 | - | 339240 B |
|
||||||
| UpdateSet_TransientMap_Unicode | 10000 | 50 | 222,602.17 ns | 42.2363 | 15.8691 | - | 354144 B |
|
| Update_TransientMap_Unicode | 10000 | 50 | 151,927.19 ns | 39.5508 | 13.9160 | - | 331136 B |
|
||||||
| UpdateSet_ImmSortedDict | 10000 | 50 | 659,407.65 ns | 82.0313 | 19.5313 | - | 691728 B |
|
| Update_ImmSortedDict | 10000 | 50 | 599,787.55 ns | 76.1719 | 14.6484 | - | 641616 B |
|
||||||
| UpdateSet_ExtMap | 10000 | 50 | 652,772.00 ns | 98.6328 | 23.4375 | - | 829552 B |
|
| Update_ExtMap | 10000 | 50 | 576,111.14 ns | 86.9141 | 20.5078 | - | 732896 B |
|
||||||
| UpdateSet_ExtHashMap | 10000 | 50 | 216,637.22 ns | 104.9805 | 24.1699 | - | 878840 B |
|
| Update_ExtHashMap | 10000 | 50 | 186,299.39 ns | 102.5391 | 20.2637 | - | 859392 B |
|
||||||
| Iterate_ImmDict | 10000 | 50 | 172,211.95 ns | - | - | - | - |
|
| UpdateSet_ImmDict | 10000 | 50 | 459,230.81 ns | 108.3984 | 29.2969 | - | 908672 B |
|
||||||
| Iterate_PersistentMap_Standard | 10000 | 50 | 17,227.48 ns | - | - | - | - |
|
| UpdateSet_PersistentMap_Standard | 10000 | 50 | 758,257.06 ns | 307.6172 | 133.7891 | - | 2575040 B |
|
||||||
| Iterate_ImmSortedDict | 10000 | 50 | 56,105.18 ns | - | - | - | - |
|
| UpdateSet_PersistentMap_Unicode | 10000 | 50 | 499,618.94 ns | 368.1641 | 152.3438 | - | 3085600 B |
|
||||||
| Iterate_ExtMap | 10000 | 50 | 70,322.76 ns | - | - | - | 32 B |
|
| UpdateSet_TransientMap_Standard | 10000 | 50 | 552,006.66 ns | 41.9922 | 15.6250 | - | 355688 B |
|
||||||
| Iterate_ExtHashMap | 10000 | 50 | 176,803.08 ns | 20.0195 | - | - | 168264 B |
|
| UpdateSet_TransientMap_Unicode | 10000 | 50 | 225,461.43 ns | 42.2363 | 15.8691 | - | 354144 B |
|
||||||
| Iterate_PersistentMap_Unicode | 10000 | 50 | 17,473.52 ns | - | - | - | - |
|
| UpdateSet_ImmSortedDict | 10000 | 50 | 660,239.03 ns | 82.0313 | 19.5313 | - | 691728 B |
|
||||||
| Remove_ImmDict | 10000 | 50 | 429,520.72 ns | 102.5391 | 28.3203 | - | 860032 B |
|
| UpdateSet_ExtMap | 10000 | 50 | 642,281.65 ns | 98.6328 | 23.4375 | - | 829552 B |
|
||||||
| Remove_PersistentMap_Standard | 10000 | 50 | 1,558,056.72 ns | 310.5469 | 125.0000 | - | 2610816 B |
|
| UpdateSet_ExtHashMap | 10000 | 50 | 213,376.13 ns | 104.9805 | 23.4375 | - | 878248 B |
|
||||||
| Remove_PersistentMap_Unicode | 10000 | 50 | 522,677.95 ns | 363.2813 | 158.2031 | - | 3042816 B |
|
| Iterate_ImmDict | 10000 | 50 | 181,714.98 ns | - | - | - | - |
|
||||||
| Remove_TransientMap_Standard | 10000 | 50 | 1,333,105.09 ns | 44.9219 | 15.6250 | - | 391512 B |
|
| Iterate_PersistentMap_Standard | 10000 | 50 | 17,120.93 ns | - | - | - | - |
|
||||||
| Remove_TransientMap_Unicode | 10000 | 50 | 223,026.23 ns | 37.3535 | 13.1836 | - | 312808 B |
|
| Iterate_ImmSortedDict | 10000 | 50 | 54,752.59 ns | - | - | - | - |
|
||||||
| Remove_ImmSortedDict | 10000 | 50 | 611,137.62 ns | 77.1484 | 15.6250 | - | 651840 B |
|
| Iterate_ExtMap | 10000 | 50 | 66,116.25 ns | - | - | - | 32 B |
|
||||||
| Remove_ExtMap | 10000 | 50 | 630,117.55 ns | 91.7969 | 21.4844 | - | 771256 B |
|
| Iterate_ExtHashMap | 10000 | 50 | 175,406.16 ns | 19.7754 | - | - | 166824 B |
|
||||||
| Remove_ExtHashMap | 10000 | 50 | 208,051.51 ns | 104.7363 | 20.7520 | - | 877216 B |
|
| Iterate_PersistentMap_Unicode | 10000 | 50 | 17,271.03 ns | - | - | - | - |
|
||||||
| Build_TransientMap_Standard | 100000 | 8 | 158,074,169.00 ns | 500.0000 | 250.0000 | - | 4524208 B |
|
| Remove_ImmDict | 10000 | 50 | 424,174.08 ns | 102.0508 | 23.9258 | - | 854784 B |
|
||||||
| Build_TransientMap_Unicode | 100000 | 8 | 40,354,289.36 ns | 692.3077 | 538.4615 | - | 5798728 B |
|
| Remove_PersistentMap_Standard | 10000 | 50 | 739,059.87 ns | 302.7344 | 119.1406 | - | 2538816 B |
|
||||||
| Build_ImmDict | 100000 | 8 | 95,840,918.80 ns | 13200.0000 | 4600.0000 | 200.0000 | 109352965 B |
|
| Remove_PersistentMap_Unicode | 10000 | 50 | 491,577.81 ns | 363.2813 | 158.2031 | - | 3042816 B |
|
||||||
| Build_ImmSortedDict | 100000 | 8 | 145,451,097.25 ns | 10000.0000 | 3750.0000 | - | 83946432 B |
|
| Remove_TransientMap_Standard | 10000 | 50 | 522,589.23 ns | 38.0859 | 12.6953 | - | 319512 B |
|
||||||
| Build_ExtMap | 100000 | 8 | 121,026,729.25 ns | 12500.0000 | 5750.0000 | - | 104660688 B |
|
| Remove_TransientMap_Unicode | 10000 | 50 | 223,052.49 ns | 37.3535 | 13.1836 | - | 312808 B |
|
||||||
| Build_ExtHashMap | 100000 | 8 | 45,582,232.06 ns | 12000.0000 | 2583.3333 | 83.3333 | 99799303 B |
|
| Remove_ImmSortedDict | 10000 | 50 | 612,756.00 ns | 77.1484 | 15.6250 | - | 651840 B |
|
||||||
| Retrieve_ImmDict | 100000 | 8 | 1,518,946.53 ns | - | - | - | - |
|
| Remove_ExtMap | 10000 | 50 | 622,977.64 ns | 91.7969 | 21.4844 | - | 771256 B |
|
||||||
| Retrieve_PersistentMap_Standard | 100000 | 8 | 15,954,066.23 ns | 93.7500 | - | - | 960000 B |
|
| Remove_ExtHashMap | 10000 | 50 | 202,442.11 ns | 104.0039 | 20.9961 | - | 871064 B |
|
||||||
| Retrieve_PersistentMap_Unicode | 100000 | 8 | 1,344,373.24 ns | - | - | - | - |
|
| Build_TransientMap_Standard | 100000 | 8 | 72,441,876.47 ns | 428.5714 | 285.7143 | - | 4524208 B |
|
||||||
| Update_ImmDict | 100000 | 8 | 9,168,537.50 ns | 1265.6250 | 1062.5000 | - | 10588288 B |
|
| Build_TransientMap_Unicode | 100000 | 8 | 39,704,110.55 ns | 692.3077 | 538.4615 | - | 5798728 B |
|
||||||
| Update_PersistentMap_Standard | 100000 | 8 | 24,537,720.52 ns | 3718.7500 | 2906.2500 | 31.2500 | 31040034 B |
|
| Build_ImmDict | 100000 | 8 | 92,116,430.52 ns | 13166.6667 | 4833.3333 | 166.6667 | 109376373 B |
|
||||||
| Update_PersistentMap_Unicode | 100000 | 8 | 11,821,730.59 ns | 4671.8750 | 2500.0000 | 62.5000 | 38640073 B |
|
| Build_ImmSortedDict | 100000 | 8 | 119,704,496.44 ns | 10000.0000 | 3800.0000 | - | 83946432 B |
|
||||||
| Update_TransientMap_Standard | 100000 | 8 | 18,410,364.31 ns | 406.2500 | 312.5000 | - | 3415688 B |
|
| Build_ExtMap | 100000 | 8 | 119,087,830.57 ns | 12400.0000 | 5600.0000 | - | 104660688 B |
|
||||||
| Update_TransientMap_Unicode | 100000 | 8 | 3,724,912.85 ns | 414.0625 | 351.5625 | - | 3487208 B |
|
| Build_ExtHashMap | 100000 | 8 | 45,457,387.28 ns | 12000.0000 | 2583.3333 | 83.3333 | 99806394 B |
|
||||||
| Update_ImmSortedDict | 100000 | 8 | 11,002,667.72 ns | 953.1250 | 781.2500 | - | 8020080 B |
|
| Retrieve_ImmDict | 100000 | 8 | 1,516,808.05 ns | - | - | - | - |
|
||||||
| Update_ExtMap | 100000 | 8 | 11,289,391.77 ns | 1093.7500 | 937.5000 | - | 9246400 B |
|
| Retrieve_PersistentMap_Standard | 100000 | 8 | 6,444,842.15 ns | - | - | - | - |
|
||||||
| Update_ExtHashMap | 100000 | 8 | 3,795,553.44 ns | 1265.6250 | 968.7500 | - | 10624032 B |
|
| Retrieve_PersistentMap_Unicode | 100000 | 8 | 1,351,906.08 ns | - | - | - | - |
|
||||||
| UpdateSet_ImmDict | 100000 | 8 | 9,324,688.19 ns | 1343.7500 | 1046.8750 | - | 11264256 B |
|
| Retrieve_ImmSortedDict | 100000 | 8 | 6,176,362.41 ns | - | - | - | - |
|
||||||
| UpdateSet_PersistentMap_Standard | 100000 | 8 | 28,227,498.72 ns | 3750.0000 | 2593.7500 | 31.2500 | 31143252 B |
|
| Retrieve_ExtMap | 100000 | 8 | 6,613,900.92 ns | - | - | - | - |
|
||||||
| UpdateSet_PersistentMap_Unicode | 100000 | 8 | 12,980,484.49 ns | 4703.1250 | 2250.0000 | 62.5000 | 38809434 B |
|
| Retrieve_ExtHashMap | 100000 | 8 | 1,046,707.73 ns | - | - | - | - |
|
||||||
| UpdateSet_TransientMap_Standard | 100000 | 8 | 18,455,887.50 ns | 406.2500 | 312.5000 | - | 3514688 B |
|
| Update_ImmDict | 100000 | 8 | 8,149,123.59 ns | 1265.6250 | 1046.8750 | - | 10618880 B |
|
||||||
| UpdateSet_TransientMap_Unicode | 100000 | 8 | 4,599,394.95 ns | 429.6875 | 382.8125 | - | 3636872 B |
|
| Update_PersistentMap_Standard | 100000 | 8 | 14,827,486.05 ns | 3750.0000 | 2953.1250 | 46.8750 | 31040047 B |
|
||||||
| UpdateSet_ImmSortedDict | 100000 | 8 | 11,611,425.71 ns | 1015.6250 | 875.0000 | - | 8495856 B |
|
| Update_PersistentMap_Unicode | 100000 | 8 | 11,607,930.86 ns | 4671.8750 | 2500.0000 | 62.5000 | 38640058 B |
|
||||||
| UpdateSet_ExtMap | 100000 | 8 | 13,256,339.44 ns | 1218.7500 | 1015.6250 | - | 10287328 B |
|
| Update_TransientMap_Standard | 100000 | 8 | 7,358,177.48 ns | 406.2500 | 335.9375 | - | 3415688 B |
|
||||||
| UpdateSet_ExtHashMap | 100000 | 8 | 4,056,833.05 ns | 1281.2500 | 992.1875 | - | 10752664 B |
|
| Update_TransientMap_Unicode | 100000 | 8 | 3,826,038.54 ns | 414.0625 | 351.5625 | - | 3487168 B |
|
||||||
| Iterate_ImmDict | 100000 | 8 | 2,245,167.14 ns | - | - | - | 96 B |
|
| Update_ImmSortedDict | 100000 | 8 | 10,318,908.01 ns | 953.1250 | 781.2500 | - | 8020080 B |
|
||||||
| Iterate_PersistentMap_Standard | 100000 | 8 | 226,078.34 ns | - | - | - | - |
|
| Update_ExtMap | 100000 | 8 | 10,354,686.58 ns | 1093.7500 | 937.5000 | - | 9246400 B |
|
||||||
| Iterate_ImmSortedDict | 100000 | 8 | 752,117.01 ns | - | - | - | - |
|
| Update_ExtHashMap | 100000 | 8 | 3,752,714.02 ns | 1269.5313 | 988.2813 | - | 10626504 B |
|
||||||
| Iterate_ExtMap | 100000 | 8 | 1,153,701.70 ns | - | - | - | 32 B |
|
| UpdateSet_ImmDict | 100000 | 8 | 8,658,752.54 ns | 1343.7500 | 1046.8750 | - | 11262464 B |
|
||||||
| Iterate_ExtHashMap | 100000 | 8 | 2,747,144.18 ns | 273.4375 | - | - | 2318432 B |
|
| UpdateSet_PersistentMap_Standard | 100000 | 8 | 16,011,001.98 ns | 3750.0000 | 2593.7500 | 31.2500 | 31143252 B |
|
||||||
| Iterate_PersistentMap_Unicode | 100000 | 8 | 241,814.65 ns | - | - | - | - |
|
| UpdateSet_PersistentMap_Unicode | 100000 | 8 | 12,524,719.72 ns | 4687.5000 | 2281.2500 | 62.5000 | 38809433 B |
|
||||||
| Remove_ImmDict | 100000 | 8 | 8,922,500.09 ns | 1281.2500 | 1031.2500 | - | 10744896 B |
|
| UpdateSet_TransientMap_Standard | 100000 | 8 | 8,280,433.69 ns | 406.2500 | 328.1250 | - | 3514688 B |
|
||||||
| Remove_PersistentMap_Standard | 100000 | 8 | 28,366,797.02 ns | 3812.5000 | 2750.0000 | 31.2500 | 31781143 B |
|
| UpdateSet_TransientMap_Unicode | 100000 | 8 | 4,465,123.76 ns | 429.6875 | 382.8125 | - | 3636832 B |
|
||||||
| Remove_PersistentMap_Unicode | 100000 | 8 | 12,499,542.97 ns | 4640.6250 | 2875.0000 | 62.5000 | 38412730 B |
|
| UpdateSet_ImmSortedDict | 100000 | 8 | 11,403,173.00 ns | 1015.6250 | 875.0000 | - | 8495856 B |
|
||||||
| Remove_TransientMap_Standard | 100000 | 8 | 21,085,953.04 ns | 468.7500 | 343.7500 | - | 4134328 B |
|
| UpdateSet_ExtMap | 100000 | 8 | 11,808,286.34 ns | 1218.7500 | 1015.6250 | - | 10287328 B |
|
||||||
| Remove_TransientMap_Unicode | 100000 | 8 | 3,227,138.07 ns | 382.8125 | 324.2188 | - | 3226088 B |
|
| UpdateSet_ExtHashMap | 100000 | 8 | 4,073,301.12 ns | 1281.2500 | 992.1875 | - | 10759216 B |
|
||||||
| Remove_ImmSortedDict | 100000 | 8 | 10,475,303.83 ns | 953.1250 | 781.2500 | - | 8031888 B |
|
| Iterate_ImmDict | 100000 | 8 | 2,210,260.69 ns | - | - | - | - |
|
||||||
| Remove_ExtMap | 100000 | 8 | 11,473,612.68 ns | 1140.6250 | 937.5000 | - | 9630448 B |
|
| Iterate_PersistentMap_Standard | 100000 | 8 | 221,859.64 ns | - | - | - | - |
|
||||||
| Remove_ExtHashMap | 100000 | 8 | 3,920,078.08 ns | 1265.6250 | 914.0625 | - | 10624344 B |
|
| Iterate_ImmSortedDict | 100000 | 8 | 712,098.18 ns | - | - | - | - |
|
||||||
| Build_TransientMap_Standard | 100000 | 50 | 186,991,900.50 ns | 500.0000 | - | - | 4511632 B |
|
| Iterate_ExtMap | 100000 | 8 | 1,122,895.56 ns | - | - | - | 32 B |
|
||||||
| Build_TransientMap_Unicode | 100000 | 50 | 42,267,081.83 ns | 666.6667 | 500.0000 | - | 5763784 B |
|
| Iterate_ExtHashMap | 100000 | 8 | 2,722,789.29 ns | 273.4375 | - | - | 2314696 B |
|
||||||
| Build_ImmDict | 100000 | 50 | 91,363,990.94 ns | 13166.6667 | 4833.3333 | 166.6667 | 109457840 B |
|
| Iterate_PersistentMap_Unicode | 100000 | 8 | 235,131.71 ns | - | - | - | - |
|
||||||
| Build_ImmSortedDict | 100000 | 50 | 134,058,261.08 ns | 10000.0000 | 4000.0000 | - | 83731632 B |
|
| Remove_ImmDict | 100000 | 8 | 7,950,218.64 ns | 1281.2500 | 1125.0000 | - | 10756416 B |
|
||||||
| Build_ExtMap | 100000 | 50 | 130,083,384.42 ns | 12250.0000 | 5250.0000 | - | 104371560 B |
|
| Remove_PersistentMap_Standard | 100000 | 8 | 15,366,222.73 ns | 3718.7500 | 3328.1250 | 46.8750 | 30821152 B |
|
||||||
| Build_ExtHashMap | 100000 | 50 | 50,176,040.06 ns | 11909.0909 | 2545.4545 | - | 99721040 B |
|
| Remove_PersistentMap_Unicode | 100000 | 8 | 12,092,756.69 ns | 4656.2500 | 2875.0000 | 62.5000 | 38412727 B |
|
||||||
| Retrieve_ImmDict | 100000 | 50 | 1,878,376.76 ns | - | - | - | - |
|
| Remove_TransientMap_Standard | 100000 | 8 | 7,973,868.64 ns | 375.0000 | 312.5000 | - | 3174328 B |
|
||||||
| Retrieve_PersistentMap_Standard | 100000 | 50 | 22,662,880.57 ns | 93.7500 | - | - | 960000 B |
|
| Remove_TransientMap_Unicode | 100000 | 8 | 3,161,959.43 ns | 382.8125 | 324.2188 | - | 3226088 B |
|
||||||
| Retrieve_PersistentMap_Unicode | 100000 | 50 | 1,421,803.13 ns | - | - | - | - |
|
| Remove_ImmSortedDict | 100000 | 8 | 10,396,202.26 ns | 953.1250 | 781.2500 | - | 8031888 B |
|
||||||
| Update_ImmDict | 100000 | 50 | 8,957,341.32 ns | 1265.6250 | 1062.5000 | - | 10646144 B |
|
| Remove_ExtMap | 100000 | 8 | 11,561,856.15 ns | 1140.6250 | 937.5000 | - | 9630448 B |
|
||||||
| Update_PersistentMap_Standard | 100000 | 50 | 37,471,664.44 ns | 3692.3077 | 2769.2308 | - | 31040000 B |
|
| Remove_ExtHashMap | 100000 | 8 | 4,009,364.62 ns | 1265.6250 | 921.8750 | - | 10607248 B |
|
||||||
| Update_PersistentMap_Unicode | 100000 | 50 | 12,856,950.49 ns | 4656.2500 | 2781.2500 | 46.8750 | 38640047 B |
|
| Build_TransientMap_Standard | 100000 | 50 | 81,360,172.13 ns | 428.5714 | 285.7143 | - | 4511632 B |
|
||||||
| Update_TransientMap_Standard | 100000 | 50 | 26,563,266.79 ns | 406.2500 | 312.5000 | - | 3414056 B |
|
| Build_TransientMap_Unicode | 100000 | 50 | 41,339,351.49 ns | 666.6667 | 500.0000 | - | 5763784 B |
|
||||||
| Update_TransientMap_Unicode | 100000 | 50 | 4,173,539.70 ns | 406.2500 | 335.9375 | - | 3440328 B |
|
| Build_ImmDict | 100000 | 50 | 97,054,583.11 ns | 13166.6667 | 4833.3333 | 166.6667 | 109218477 B |
|
||||||
| Update_ImmSortedDict | 100000 | 50 | 11,812,577.59 ns | 953.1250 | 781.2500 | - | 8012928 B |
|
| Build_ImmSortedDict | 100000 | 50 | 129,585,060.60 ns | 10000.0000 | 4000.0000 | - | 83731632 B |
|
||||||
| Update_ExtMap | 100000 | 50 | 11,842,757.42 ns | 1093.7500 | 906.2500 | - | 9233632 B |
|
| Build_ExtMap | 100000 | 50 | 130,490,141.33 ns | 12250.0000 | 5250.0000 | - | 104371560 B |
|
||||||
| Update_ExtHashMap | 100000 | 50 | 4,189,884.01 ns | 1265.6250 | 984.3750 | - | 10632736 B |
|
| Build_ExtHashMap | 100000 | 50 | 49,945,252.31 ns | 11900.0000 | 2400.0000 | - | 99832472 B |
|
||||||
| UpdateSet_ImmDict | 100000 | 50 | 10,459,268.37 ns | 1343.7500 | 1031.2500 | - | 11256960 B |
|
| Retrieve_ImmDict | 100000 | 50 | 1,933,934.21 ns | - | - | - | - |
|
||||||
| UpdateSet_PersistentMap_Standard | 100000 | 50 | 41,029,434.25 ns | 3666.6667 | 2500.0000 | - | 31141992 B |
|
| Retrieve_PersistentMap_Standard | 100000 | 50 | 7,474,711.16 ns | - | - | - | - |
|
||||||
| UpdateSet_PersistentMap_Unicode | 100000 | 50 | 14,028,512.79 ns | 4687.5000 | 2421.8750 | 46.8750 | 38835953 B |
|
| Retrieve_PersistentMap_Unicode | 100000 | 50 | 1,439,009.47 ns | - | - | - | - |
|
||||||
| UpdateSet_TransientMap_Standard | 100000 | 50 | 28,314,403.39 ns | 406.2500 | 312.5000 | - | 3509008 B |
|
| Retrieve_ImmSortedDict | 100000 | 50 | 7,341,270.59 ns | - | - | - | - |
|
||||||
| UpdateSet_TransientMap_Unicode | 100000 | 50 | 5,267,848.18 ns | 429.6875 | 359.3750 | - | 3630600 B |
|
| Retrieve_ExtMap | 100000 | 50 | 7,144,334.50 ns | - | - | - | - |
|
||||||
| UpdateSet_ImmSortedDict | 100000 | 50 | 14,089,168.54 ns | 1015.6250 | 890.6250 | - | 8501136 B |
|
| Retrieve_ExtHashMap | 100000 | 50 | 1,359,724.09 ns | - | - | - | - |
|
||||||
| UpdateSet_ExtMap | 100000 | 50 | 12,785,268.31 ns | 1218.7500 | 1015.6250 | - | 10265544 B |
|
| Update_ImmDict | 100000 | 50 | 8,224,368.98 ns | 1265.6250 | 1062.5000 | - | 10585792 B |
|
||||||
| UpdateSet_ExtHashMap | 100000 | 50 | 4,418,089.19 ns | 1281.2500 | 992.1875 | - | 10750000 B |
|
| Update_PersistentMap_Standard | 100000 | 50 | 16,195,436.66 ns | 3718.7500 | 2875.0000 | 31.2500 | 31040034 B |
|
||||||
| Iterate_ImmDict | 100000 | 50 | 2,338,660.26 ns | - | - | - | 384 B |
|
| Update_PersistentMap_Unicode | 100000 | 50 | 11,872,157.79 ns | 4656.2500 | 2765.6250 | 46.8750 | 38640047 B |
|
||||||
| Iterate_PersistentMap_Standard | 100000 | 50 | 211,359.08 ns | - | - | - | - |
|
| Update_TransientMap_Standard | 100000 | 50 | 8,421,668.39 ns | 406.2500 | 343.7500 | - | 3414056 B |
|
||||||
| Iterate_ImmSortedDict | 100000 | 50 | 715,600.57 ns | - | - | - | - |
|
| Update_TransientMap_Unicode | 100000 | 50 | 3,920,098.30 ns | 406.2500 | 335.9375 | - | 3440288 B |
|
||||||
| Iterate_ExtMap | 100000 | 50 | 1,117,575.94 ns | - | - | - | 32 B |
|
| Update_ImmSortedDict | 100000 | 50 | 11,196,973.30 ns | 953.1250 | 781.2500 | - | 8012928 B |
|
||||||
| Iterate_ExtHashMap | 100000 | 50 | 2,975,826.72 ns | 277.3438 | - | - | 2319904 B |
|
| Update_ExtMap | 100000 | 50 | 10,904,107.16 ns | 1093.7500 | 906.2500 | - | 9233632 B |
|
||||||
| Iterate_PersistentMap_Unicode | 100000 | 50 | 217,594.04 ns | - | - | - | - |
|
| Update_ExtHashMap | 100000 | 50 | 4,099,435.72 ns | 1265.6250 | 976.5625 | - | 10625992 B |
|
||||||
| Remove_ImmDict | 100000 | 50 | 9,190,906.43 ns | 1281.2500 | 1046.8750 | - | 10741824 B |
|
| UpdateSet_ImmDict | 100000 | 50 | 8,815,363.39 ns | 1343.7500 | 1031.2500 | - | 11286912 B |
|
||||||
| Remove_PersistentMap_Standard | 100000 | 50 | 42,259,057.45 ns | 3727.2727 | 2636.3636 | - | 31774080 B |
|
| UpdateSet_PersistentMap_Standard | 100000 | 50 | 17,059,344.47 ns | 3718.7500 | 2562.5000 | - | 31141992 B |
|
||||||
| Remove_PersistentMap_Unicode | 100000 | 50 | 11,946,176.86 ns | 4625.0000 | 2859.3750 | 46.8750 | 38402868 B |
|
| UpdateSet_PersistentMap_Unicode | 100000 | 50 | 13,129,653.12 ns | 4687.5000 | 2437.5000 | 46.8750 | 38835954 B |
|
||||||
| Remove_TransientMap_Standard | 100000 | 50 | 26,120,804.07 ns | 468.7500 | 343.7500 | - | 4127064 B |
|
| UpdateSet_TransientMap_Standard | 100000 | 50 | 9,618,034.32 ns | 406.2500 | 328.1250 | - | 3509008 B |
|
||||||
| Remove_TransientMap_Unicode | 100000 | 50 | 3,583,417.50 ns | 382.8125 | 312.5000 | - | 3205960 B |
|
| UpdateSet_TransientMap_Unicode | 100000 | 50 | 4,850,003.99 ns | 429.6875 | 359.3750 | - | 3630560 B |
|
||||||
| Remove_ImmSortedDict | 100000 | 50 | 14,164,094.39 ns | 953.1250 | 781.2500 | - | 8032656 B |
|
| UpdateSet_ImmSortedDict | 100000 | 50 | 12,656,577.42 ns | 1015.6250 | 890.6250 | - | 8501136 B |
|
||||||
| Remove_ExtMap | 100000 | 50 | 13,861,593.95 ns | 1140.6250 | 921.8750 | - | 9617232 B |
|
| UpdateSet_ExtMap | 100000 | 50 | 12,813,242.59 ns | 1218.7500 | 1015.6250 | - | 10265544 B |
|
||||||
| Remove_ExtHashMap | 100000 | 50 | 4,797,368.31 ns | 1265.6250 | 937.5000 | - | 10628320 B |
|
| UpdateSet_ExtHashMap | 100000 | 50 | 4,430,259.78 ns | 1281.2500 | 1000.0000 | - | 10765376 B |
|
||||||
|
| Iterate_ImmDict | 100000 | 50 | 2,381,194.68 ns | - | - | - | 96 B |
|
||||||
|
| Iterate_PersistentMap_Standard | 100000 | 50 | 211,225.33 ns | - | - | - | - |
|
||||||
|
| Iterate_ImmSortedDict | 100000 | 50 | 713,700.90 ns | - | - | - | - |
|
||||||
|
| Iterate_ExtMap | 100000 | 50 | 1,157,631.41 ns | - | - | - | 32 B |
|
||||||
|
| Iterate_ExtHashMap | 100000 | 50 | 2,676,695.95 ns | 273.4375 | - | - | 2310024 B |
|
||||||
|
| Iterate_PersistentMap_Unicode | 100000 | 50 | 212,687.91 ns | - | - | - | - |
|
||||||
|
| Remove_ImmDict | 100000 | 50 | 8,177,782.10 ns | 1281.2500 | 984.3750 | - | 10749824 B |
|
||||||
|
| Remove_PersistentMap_Standard | 100000 | 50 | 16,635,857.83 ns | 3687.5000 | 3343.7500 | 31.2500 | 30814118 B |
|
||||||
|
| Remove_PersistentMap_Unicode | 100000 | 50 | 12,383,735.25 ns | 4625.0000 | 2859.3750 | 46.8750 | 38402877 B |
|
||||||
|
| Remove_TransientMap_Standard | 100000 | 50 | 8,797,592.89 ns | 375.0000 | 312.5000 | - | 3167064 B |
|
||||||
|
| Remove_TransientMap_Unicode | 100000 | 50 | 3,335,966.12 ns | 382.8125 | 312.5000 | - | 3205960 B |
|
||||||
|
| Remove_ImmSortedDict | 100000 | 50 | 11,619,906.87 ns | 953.1250 | 781.2500 | - | 8032656 B |
|
||||||
|
| Remove_ExtMap | 100000 | 50 | 12,051,548.01 ns | 1140.6250 | 921.8750 | - | 9617232 B |
|
||||||
|
| Remove_ExtHashMap | 100000 | 50 | 4,258,918.68 ns | 1265.6250 | 929.6875 | - | 10612072 B |
|
||||||
|
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue