From 84d0600a807bdd6330af8dcc9e0b1feb51155e46 Mon Sep 17 00:00:00 2001 From: Alex Peck Date: Sat, 17 Sep 2022 18:09:02 -0700 Subject: [PATCH 1/2] col --- BitFaster.Caching.Benchmarks/DisposerBench.cs | 2 +- BitFaster.Caching.Benchmarks/Lfu/LfuJustGetOrAdd.cs | 2 +- BitFaster.Caching.Benchmarks/Lru/LruAsyncGet.cs | 2 +- BitFaster.Caching.Benchmarks/Lru/LruCycleBench.cs | 2 +- BitFaster.Caching.Benchmarks/Lru/LruJustGetOrAdd.cs | 2 +- BitFaster.Caching.Benchmarks/Lru/LruJustTryGet.cs | 2 +- BitFaster.Caching.Benchmarks/Lru/LruMultiGet.cs | 2 +- BitFaster.Caching.Benchmarks/Lru/LruZipDistribution.cs | 2 +- BitFaster.Caching.Benchmarks/Lru/TLruTimeBenchmark.cs | 2 +- BitFaster.Caching.Benchmarks/TimeBenchmarks.cs | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/BitFaster.Caching.Benchmarks/DisposerBench.cs b/BitFaster.Caching.Benchmarks/DisposerBench.cs index a94f2127..d80f4456 100644 --- a/BitFaster.Caching.Benchmarks/DisposerBench.cs +++ b/BitFaster.Caching.Benchmarks/DisposerBench.cs @@ -11,7 +11,7 @@ namespace BitFaster.Caching.Benchmarks [SimpleJob(RuntimeMoniker.Net60)] [DisassemblyDiagnoser(printSource: true, maxDepth: 3)] [MemoryDiagnoser(displayGenColumns: false)] - [HideColumns("Median", "RatioSD")] + [HideColumns("Job", "Median", "RatioSD", "Alloc Ratio")] public class DisposerBench { [Benchmark(Baseline = true)] diff --git a/BitFaster.Caching.Benchmarks/Lfu/LfuJustGetOrAdd.cs b/BitFaster.Caching.Benchmarks/Lfu/LfuJustGetOrAdd.cs index 689225d2..7b139f7b 100644 --- a/BitFaster.Caching.Benchmarks/Lfu/LfuJustGetOrAdd.cs +++ b/BitFaster.Caching.Benchmarks/Lfu/LfuJustGetOrAdd.cs @@ -15,7 +15,7 @@ namespace BitFaster.Caching.Benchmarks [MemoryDiagnoser(displayGenColumns: false)] // [HardwareCounters(HardwareCounter.LlcMisses, HardwareCounter.CacheMisses)] // Requires Admin https://adamsitnik.com/Hardware-Counters-Diagnoser/ // [ThreadingDiagnoser] // Requires .NET Core - [HideColumns("Median", "RatioSD")] + [HideColumns("Job", "Median", "RatioSD", "Alloc Ratio")] public class LfuJustGetOrAdd { private static readonly ConcurrentDictionary dictionary = new ConcurrentDictionary(8, 9, EqualityComparer.Default); diff --git a/BitFaster.Caching.Benchmarks/Lru/LruAsyncGet.cs b/BitFaster.Caching.Benchmarks/Lru/LruAsyncGet.cs index 8a91a204..15a9a203 100644 --- a/BitFaster.Caching.Benchmarks/Lru/LruAsyncGet.cs +++ b/BitFaster.Caching.Benchmarks/Lru/LruAsyncGet.cs @@ -13,7 +13,7 @@ namespace BitFaster.Caching.Benchmarks.Lru [SimpleJob(RuntimeMoniker.Net60)] // [DisassemblyDiagnoser(printSource: true, maxDepth: 5)] // Unstable [MemoryDiagnoser(displayGenColumns: false)] - [HideColumns("Median", "RatioSD")] + [HideColumns("Job", "Median", "RatioSD", "Alloc Ratio")] public class LruAsyncGet { // if the cache value is a value type, value task has no effect - so use string to repro. diff --git a/BitFaster.Caching.Benchmarks/Lru/LruCycleBench.cs b/BitFaster.Caching.Benchmarks/Lru/LruCycleBench.cs index 9d1a5209..1429d8e1 100644 --- a/BitFaster.Caching.Benchmarks/Lru/LruCycleBench.cs +++ b/BitFaster.Caching.Benchmarks/Lru/LruCycleBench.cs @@ -26,7 +26,7 @@ namespace BitFaster.Caching.Benchmarks.Lru [SimpleJob(RuntimeMoniker.Net60)] [DisassemblyDiagnoser(printSource: true, maxDepth: 5)] [MemoryDiagnoser(displayGenColumns: false)] - [HideColumns("Median", "RatioSD")] + [HideColumns("Job", "Median", "RatioSD", "Alloc Ratio")] public class LruCycleBench { private static readonly ClassicLru classicLru = new ClassicLru(8, 9, EqualityComparer.Default); diff --git a/BitFaster.Caching.Benchmarks/Lru/LruJustGetOrAdd.cs b/BitFaster.Caching.Benchmarks/Lru/LruJustGetOrAdd.cs index b2831ff9..f24fcd44 100644 --- a/BitFaster.Caching.Benchmarks/Lru/LruJustGetOrAdd.cs +++ b/BitFaster.Caching.Benchmarks/Lru/LruJustGetOrAdd.cs @@ -34,7 +34,7 @@ namespace BitFaster.Caching.Benchmarks [MemoryDiagnoser(displayGenColumns: false)] // [HardwareCounters(HardwareCounter.LlcMisses, HardwareCounter.CacheMisses)] // Requires Admin https://adamsitnik.com/Hardware-Counters-Diagnoser/ // [ThreadingDiagnoser] // Requires .NET Core - [HideColumns("Median", "RatioSD")] + [HideColumns("Job", "Median", "RatioSD", "Alloc Ratio")] public class LruJustGetOrAdd { private static readonly ConcurrentDictionary dictionary = new ConcurrentDictionary(8, 9, EqualityComparer.Default); diff --git a/BitFaster.Caching.Benchmarks/Lru/LruJustTryGet.cs b/BitFaster.Caching.Benchmarks/Lru/LruJustTryGet.cs index e58bf67c..5820180f 100644 --- a/BitFaster.Caching.Benchmarks/Lru/LruJustTryGet.cs +++ b/BitFaster.Caching.Benchmarks/Lru/LruJustTryGet.cs @@ -23,7 +23,7 @@ namespace BitFaster.Caching.Benchmarks.Lru [SimpleJob(RuntimeMoniker.Net60)] [DisassemblyDiagnoser(printSource: true, maxDepth: 5)] [MemoryDiagnoser(displayGenColumns: false)] - [HideColumns("Median", "RatioSD")] + [HideColumns("Job", "Median", "RatioSD", "Alloc Ratio")] public class LruJustTryGet { private static readonly ConcurrentDictionary dictionary = new ConcurrentDictionary(8, 9, EqualityComparer.Default); diff --git a/BitFaster.Caching.Benchmarks/Lru/LruMultiGet.cs b/BitFaster.Caching.Benchmarks/Lru/LruMultiGet.cs index 059981ac..ff48a57f 100644 --- a/BitFaster.Caching.Benchmarks/Lru/LruMultiGet.cs +++ b/BitFaster.Caching.Benchmarks/Lru/LruMultiGet.cs @@ -28,7 +28,7 @@ namespace BitFaster.Caching.Benchmarks.Lru [SimpleJob(RuntimeMoniker.Net60)] [DisassemblyDiagnoser(printSource: true, maxDepth: 5)] [MemoryDiagnoser(displayGenColumns: false)] - [HideColumns("Median", "RatioSD")] + [HideColumns("Job", "Median", "RatioSD", "Alloc Ratio")] public class LruMultiGet { private static readonly ConcurrentDictionary dictionary = new ConcurrentDictionary(8, 9, EqualityComparer.Default); diff --git a/BitFaster.Caching.Benchmarks/Lru/LruZipDistribution.cs b/BitFaster.Caching.Benchmarks/Lru/LruZipDistribution.cs index 7f1eb4d8..d30fca82 100644 --- a/BitFaster.Caching.Benchmarks/Lru/LruZipDistribution.cs +++ b/BitFaster.Caching.Benchmarks/Lru/LruZipDistribution.cs @@ -25,7 +25,7 @@ namespace BitFaster.Caching.Benchmarks.Lru [SimpleJob(RuntimeMoniker.Net60)] [DisassemblyDiagnoser(printSource: true, maxDepth: 5)] [MemoryDiagnoser(displayGenColumns: false)] - [HideColumns("Median", "RatioSD")] + [HideColumns("Job", "Median", "RatioSD", "Alloc Ratio")] public class LruZipDistribution { const double s = 0.86; diff --git a/BitFaster.Caching.Benchmarks/Lru/TLruTimeBenchmark.cs b/BitFaster.Caching.Benchmarks/Lru/TLruTimeBenchmark.cs index 99d05ff7..c8ca7865 100644 --- a/BitFaster.Caching.Benchmarks/Lru/TLruTimeBenchmark.cs +++ b/BitFaster.Caching.Benchmarks/Lru/TLruTimeBenchmark.cs @@ -11,7 +11,7 @@ namespace BitFaster.Caching.Benchmarks.Lru /// [SimpleJob(RuntimeMoniker.Net48)] [SimpleJob(RuntimeMoniker.Net60)] - [HideColumns("Median", "RatioSD")] + [HideColumns("Job", "Median", "RatioSD", "Alloc Ratio")] public class TLruTimeBenchmark { private static readonly ConcurrentLruCore, TLruDateTimePolicy, NoTelemetryPolicy> dateTimeTLru diff --git a/BitFaster.Caching.Benchmarks/TimeBenchmarks.cs b/BitFaster.Caching.Benchmarks/TimeBenchmarks.cs index c1d39cf8..3a16f5b7 100644 --- a/BitFaster.Caching.Benchmarks/TimeBenchmarks.cs +++ b/BitFaster.Caching.Benchmarks/TimeBenchmarks.cs @@ -7,7 +7,7 @@ namespace BitFaster.Caching.Benchmarks { [SimpleJob(RuntimeMoniker.Net48)] [SimpleJob(RuntimeMoniker.Net60)] - [HideColumns("Median", "RatioSD")] + [HideColumns("Job", "Median", "RatioSD", "Alloc Ratio")] public class TimeBenchmarks { private static readonly Stopwatch sw = Stopwatch.StartNew(); From c8466bb65810f48d3ca02826188a540242de4a3f Mon Sep 17 00:00:00 2001 From: Alex Peck Date: Sat, 17 Sep 2022 18:36:19 -0700 Subject: [PATCH 2/2] struct --- BitFaster.Caching/Lfu/ConcurrentLfu.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/BitFaster.Caching/Lfu/ConcurrentLfu.cs b/BitFaster.Caching/Lfu/ConcurrentLfu.cs index 83a11e8e..d3410891 100644 --- a/BitFaster.Caching/Lfu/ConcurrentLfu.cs +++ b/BitFaster.Caching/Lfu/ConcurrentLfu.cs @@ -615,9 +615,9 @@ private LfuNode EvictFromWindow() return first; } - private struct EvictIterator + private ref struct EvictIterator { - private CmSketch sketch; + private readonly CmSketch sketch; public LfuNode node; public int freq;