From ca947d0346cc73ab6e4b588e6808d1c14c3ac965 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Mon, 16 Nov 2020 16:21:14 -0800 Subject: [PATCH 01/13] Adding scripts --- samples/scripts/scripts.benchmarks.yml | 31 ++++++ .../Configuration.cs | 1 + .../Microsoft.Crank.Controller.csproj | 1 + src/Microsoft.Crank.Controller/Program.cs | 94 +++++++++++++++---- .../ScriptConsole.cs | 40 ++++++++ 5 files changed, 151 insertions(+), 16 deletions(-) create mode 100644 samples/scripts/scripts.benchmarks.yml create mode 100644 src/Microsoft.Crank.Controller/ScriptConsole.cs diff --git a/samples/scripts/scripts.benchmarks.yml b/samples/scripts/scripts.benchmarks.yml new file mode 100644 index 000000000..2a8389e79 --- /dev/null +++ b/samples/scripts/scripts.benchmarks.yml @@ -0,0 +1,31 @@ +scripts: + say_hello: | + console.log("hello") + console.info("world") + console.warn("this is") + console.error("scary") + + add_current_time: | + benchmarks.properties["time"] = new Date().toISOString(); + + add_allocations_per_request: | + var allocations = benchmarks.jobs.application.results["runtime-counter/alloc-rate"] + var rps = benchmarks.jobs.load.results["wrk/requests"]; + benchmarks.jobs.application.results["alloc-per-request"] = allocations / rps; + + add_p95_memory: | + require("percentiles"); + var memories = benchmarks.jobs.application.measurements[0] + .filter(m => m.name == "benchmarks/working-set") + .map(x => x.value); + var value = percentile(memories, 95); + console.info(`p95 of working set is ${value}`); + benchmarks.jobs.application.results["benchmarks/working-set/p95"] = value; + + percentiles: | + function percentile(items, th) { + var ordered = items.sort((a, b) => a - b); // by default sort() uses ordinal comparison + index = Math.max(0, Math.round(ordered.length * th / 100) - 1); + return ordered[index]; + } + diff --git a/src/Microsoft.Crank.Controller/Configuration.cs b/src/Microsoft.Crank.Controller/Configuration.cs index 9940e3203..dbe6d30dc 100644 --- a/src/Microsoft.Crank.Controller/Configuration.cs +++ b/src/Microsoft.Crank.Controller/Configuration.cs @@ -16,6 +16,7 @@ public class Configuration public Dictionary> Scenarios { get; set; } = new Dictionary>(); public Dictionary Profiles { get; set; } = new Dictionary(); + public Dictionary Scripts { get; set; } = new Dictionary(); } public class Scenario diff --git a/src/Microsoft.Crank.Controller/Microsoft.Crank.Controller.csproj b/src/Microsoft.Crank.Controller/Microsoft.Crank.Controller.csproj index 284c96f3b..8c4da2db8 100644 --- a/src/Microsoft.Crank.Controller/Microsoft.Crank.Controller.csproj +++ b/src/Microsoft.Crank.Controller/Microsoft.Crank.Controller.csproj @@ -16,6 +16,7 @@ + diff --git a/src/Microsoft.Crank.Controller/Program.cs b/src/Microsoft.Crank.Controller/Program.cs index 76f8c5dc7..aea0001b9 100644 --- a/src/Microsoft.Crank.Controller/Program.cs +++ b/src/Microsoft.Crank.Controller/Program.cs @@ -23,6 +23,7 @@ using System.Text; using Manatee.Json.Schema; using Manatee.Json; +using Jint; namespace Microsoft.Crank.Controller { @@ -41,6 +42,8 @@ public class Program // Default to arguments which should be sufficient for collecting trace of default Plaintext run private const string _defaultTraceArguments = "BufferSizeMB=1024;CircularMB=1024;clrEvents=JITSymbols;kernelEvents=process+thread+ImageLoad+Profile"; + private static ScriptConsole _scriptConsole = new ScriptConsole(); + private static CommandOption _configOption, _scenarioOption, @@ -65,7 +68,8 @@ private static CommandOption _displayIterationsOption, _iterationsOption, _verboseOption, - _quietOption + _quietOption, + _scriptOption ; // The dynamic arguments that will alter the configurations @@ -137,6 +141,7 @@ public static int Main(string[] args) _scenarioOption = app.Option("-s|--scenario", "Scenario to execute", CommandOptionType.SingleValue); _jobOption = app.Option("-j|--job", "Name of job to define", CommandOptionType.MultipleValue); _profileOption = app.Option("--profile", "Profile name", CommandOptionType.MultipleValue); + _scriptOption = app.Option("--script", "Script name", CommandOptionType.MultipleValue); _outputOption = app.Option("-o|--output", "Output filename", CommandOptionType.SingleValue); _compareOption = app.Option("--compare", "An optional filename to compare the results to. Can be used multiple times.", CommandOptionType.MultipleValue); _variableOption = app.Option("--variable", "Variable", CommandOptionType.MultipleValue); @@ -316,7 +321,7 @@ public static int Main(string[] args) } } - var configuration = await BuildConfigurationAsync(_configOption.Values, scenarioName, _jobOption.Values, Arguments, variables, _profileOption.Values); + var configuration = await BuildConfigurationAsync(_configOption.Values, scenarioName, _jobOption.Values, Arguments, variables, _profileOption.Values, _scriptOption.Values); // Storing the list of services to run as part of the selected scenario var dependencies = String.IsNullOrEmpty(scenarioName) @@ -412,11 +417,11 @@ public static int Main(string[] args) session, iterations, exclude, - span + span, + _scriptOption.Values ); } - // Display diff if (_compareOption.HasValue()) @@ -459,7 +464,8 @@ private static async Task Run( string session, int iterations, int exclude, - TimeSpan span + TimeSpan span, + IEnumerable scripts ) { @@ -1192,7 +1198,8 @@ public static async Task BuildConfigurationAsync( IEnumerable customJobs, IEnumerable> arguments, JObject commandLineVariables, - IEnumerable profiles + IEnumerable profiles, + IEnumerable scripts ) { JObject configuration = null; @@ -1372,6 +1379,15 @@ IEnumerable profiles } } + foreach (var script in scripts) + { + if (!configurationInstance.Scripts.ContainsKey(script)) + { + var availablescripts = String.Join("', '", configurationInstance.Scripts.Keys); + throw new ControllerException($"Could not find a script named '{script}'. Possible values: '{availablescripts}'"); + } + } + return result; } private static void ApplyTemplates(JToken node, TemplateContext templateContext) @@ -1695,31 +1711,77 @@ private static async Task CreateJobResultsAsync(Configuration config var jobResult = jobResults.Jobs[jobName] = new JobResult(); var jobConnections = jobsByDependency[jobName]; - jobResult.Results = SummarizeResults(jobConnections); + jobResult.Results = AggregateAndReduceResults(jobConnections); // Insert metadata - if (!_excludeMetadataOption.HasValue()) - { - jobResult.Metadata = jobConnections[0].Job.Metadata.ToArray(); + jobResult.Metadata = jobConnections[0].Job.Metadata.ToArray(); + foreach (var jobConnection in jobConnections) + { + jobResult.Measurements.Add(jobConnection.Job.Measurements.ToArray()); } - // Insert measurements - if (!_excludeMeasurementsOption.HasValue()) + jobResult.Environment = await jobConnections.First().GetInfoAsync(); + } + + // Apply scripts + + // When scripts are executed, the metadata and measurements are still available. + // The metadata is taken from the first job connection, while the measurements + // of any job connection (multi endpoint job) are taken. + // The "measurements" property is an array of arrays of measurements. + // The "results" property contains all measures that are already aggregated and reduced. + + if (_scriptOption.Values.Any()) + { + var engine = new Engine(); + + engine.SetValue("benchmarks", jobResults); + engine.SetValue("console", _scriptConsole); + engine.SetValue("require", new Action (ImportScript)); + + void ImportScript(string s) { - foreach (var jobConnection in jobConnections) + if (!configuration.Scripts.ContainsKey(s)) { - jobResult.Measurements.Add(jobConnection.Job.Measurements.ToArray()); + var availablescripts = String.Join("', '", configuration.Scripts.Keys); + throw new ControllerException($"Could not find a script named '{s}'. Possible values: '{availablescripts}'"); } + + engine.Execute(configuration.Scripts[s]); } - jobResult.Environment = await jobConnections.First().GetInfoAsync(); + foreach (var scriptName in _scriptOption.Values) + { + var scriptContent = configuration.Scripts[scriptName]; + + engine.Execute(scriptContent); + } + } + + // // Remove metadata + + foreach (var jobName in dependencies) + { + var jobResult = jobResults.Jobs[jobName]; + + // Exclude metadata + if (_excludeMetadataOption.HasValue()) + { + jobResult.Metadata = Array.Empty(); + } + + // Exclude measurements + if (_excludeMeasurementsOption.HasValue()) + { + jobResult.Measurements.Clear(); + } } return jobResults; } - private static Dictionary SummarizeResults(IEnumerable jobs) + private static Dictionary AggregateAndReduceResults(IEnumerable jobs) { if (jobs == null || !jobs.Any()) { diff --git a/src/Microsoft.Crank.Controller/ScriptConsole.cs b/src/Microsoft.Crank.Controller/ScriptConsole.cs new file mode 100644 index 000000000..b01df0ad9 --- /dev/null +++ b/src/Microsoft.Crank.Controller/ScriptConsole.cs @@ -0,0 +1,40 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System; +using System.Linq; + +namespace Microsoft.Crank.Controller +{ + public class ScriptConsole + { + public bool HasErrors { get; private set; } + + public void Log(params object[] args) + { + Console.WriteLine(String.Join(" ", args.Select(x => x.ToString()))); + } + + public void Info(params object[] args) + { + Console.ForegroundColor = ConsoleColor.Green; + Console.WriteLine(String.Join(" ", args.Select(x => x.ToString()))); + Console.ResetColor(); + } + + public void Warn(params object[] args) + { + Console.ForegroundColor = ConsoleColor.DarkYellow; + Console.WriteLine(String.Join(" ", args.Select(x => x.ToString()))); + Console.ResetColor(); + } + + public void Error(params object[] args) + { + Console.ForegroundColor = ConsoleColor.Red; + Console.WriteLine(String.Join(" ", args.Select(x => x.ToString()))); + Console.ResetColor(); + } + } +} From 1e0955c22cb5a8e65b8fb88590d5a3b238f501a8 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Tue, 17 Nov 2020 17:18:53 -0800 Subject: [PATCH 02/13] Adding local counter definitions --- samples/scripts/scripts.benchmarks.yml | 19 +- src/Microsoft.Crank.Agent/Startup.cs | 234 ++++++++---------- .../Configuration.cs | 63 +++++ src/Microsoft.Crank.Controller/JobOptions.cs | 14 -- src/Microsoft.Crank.Controller/Program.cs | 79 ++++-- src/Microsoft.Crank.Controller/README.md | 3 +- .../default.config.yml | 38 +++ src/Microsoft.Crank.Models/Attachment.cs | 5 +- src/Microsoft.Crank.Models/Database.cs | 6 +- src/Microsoft.Crank.Models/DotnetCounter.cs | 24 ++ src/Microsoft.Crank.Models/Hardware.cs | 6 +- src/Microsoft.Crank.Models/Job.cs | 4 +- src/Microsoft.Crank.Models/JobState.cs | 5 +- src/Microsoft.Crank.Models/OperatingSystem.cs | 6 +- src/Microsoft.Crank.Models/Scheme.cs | 5 +- src/Microsoft.Crank.Models/ServerCounter.cs | 15 -- src/Microsoft.Crank.Models/WebHost.cs | 5 +- 17 files changed, 327 insertions(+), 204 deletions(-) delete mode 100644 src/Microsoft.Crank.Controller/JobOptions.cs create mode 100644 src/Microsoft.Crank.Controller/default.config.yml create mode 100644 src/Microsoft.Crank.Models/DotnetCounter.cs delete mode 100644 src/Microsoft.Crank.Models/ServerCounter.cs diff --git a/samples/scripts/scripts.benchmarks.yml b/samples/scripts/scripts.benchmarks.yml index 2a8389e79..ced22a689 100644 --- a/samples/scripts/scripts.benchmarks.yml +++ b/samples/scripts/scripts.benchmarks.yml @@ -1,3 +1,13 @@ +defaultScript: + - | + console.log("this section is loaded by default and before named scripts") + + function percentile(items, th) { + var ordered = items.sort((a, b) => a - b); // by default sort() uses ordinal comparison + index = Math.max(0, Math.round(ordered.length * th / 100) - 1); + return ordered[index]; + } + scripts: say_hello: | console.log("hello") @@ -14,18 +24,9 @@ scripts: benchmarks.jobs.application.results["alloc-per-request"] = allocations / rps; add_p95_memory: | - require("percentiles"); var memories = benchmarks.jobs.application.measurements[0] .filter(m => m.name == "benchmarks/working-set") .map(x => x.value); var value = percentile(memories, 95); console.info(`p95 of working set is ${value}`); benchmarks.jobs.application.results["benchmarks/working-set/p95"] = value; - - percentiles: | - function percentile(items, th) { - var ordered = items.sort((a, b) => a - b); // by default sort() uses ordinal comparison - index = Math.max(0, Math.round(ordered.length * th / 100) - 1); - return ordered[index]; - } - diff --git a/src/Microsoft.Crank.Agent/Startup.cs b/src/Microsoft.Crank.Agent/Startup.cs index 299992c5d..37f465f16 100644 --- a/src/Microsoft.Crank.Agent/Startup.cs +++ b/src/Microsoft.Crank.Agent/Startup.cs @@ -3676,7 +3676,7 @@ private static async Task StartProcess(string hostname, string benchmar RunAndTrace(); } - if (job.CollectCounters) + if (job.Counters.Any()) { StartCounters(job); } @@ -3737,137 +3737,122 @@ private static string GetCGroupController(Job job) return $"benchmarks-{Process.GetCurrentProcess().Id}-{job.Id}"; } - private static readonly Dictionary MetadataProviderPrefixes = new Dictionary() - { - ["System.Runtime"] = "runtime-counter", - ["Microsoft-AspNetCore-Server-Kestrel"] = "kestrel-counter", - ["Microsoft.AspNetCore.Hosting"] = "aspnet-counter", - ["Microsoft.AspNetCore.Http.Connections"] = "signalr-counter", - ["Grpc.AspNetCore.Server"] = "grpc-server-counter", - ["Grpc.Net.client"] = "grpc-client-counter", - ["Npgsql"] = "npgsql-counter" - }; - - private static readonly Dictionary MetadataProviders = new Dictionary - { - ["System.Runtime"] = new MeasurementMetadata[] - { - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/cpu-usage", LongDescription = "Amount of time the process has utilized the CPU (ms)", ShortDescription = "CPU Usage (%)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/working-set", LongDescription = "Amount of working set used by the process (MB)", ShortDescription = "Working Set (MB)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gc-heap-size", LongDescription = "Total heap size reported by the GC (MB)", ShortDescription = "GC Heap Size (MB)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-0-gc-count", LongDescription = "Number of Gen 0 GCs / min", ShortDescription = "Gen 0 GC (#/min)", Format = "n02", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-1-gc-count", LongDescription = "Number of Gen 1 GCs / min", ShortDescription = "Gen 1 GC (#/min)", Format = "n02", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-2-gc-count", LongDescription = "Number of Gen 2 GCs / min", ShortDescription = "Gen 2 GC (#/min)", Format = "n02", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/time-in-gc", LongDescription = "% time in GC since the last GC", ShortDescription = "Time in GC (%)", Format = "n02", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-0-size", LongDescription = "Gen 0 Heap Size", ShortDescription = "Gen 0 Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-1-size", LongDescription = "Gen 1 Heap Size", ShortDescription = "Gen 1 Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-2-size", LongDescription = "Gen 2 Heap Size", ShortDescription = "Gen 2 Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/loh-size", LongDescription = "LOH (Large Object Heap) Size", ShortDescription = "LOH Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/poh-size", LongDescription = "POH (Pinned Object Heap) Size", ShortDescription = "POH Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/alloc-rate", LongDescription = "Allocation Rate", ShortDescription = "Allocation Rate (B/sec)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gc-fragmentation", LongDescription = "GC Heap Fragmentation", ShortDescription = "GC Fragmentation", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/assembly-count", LongDescription = "Number of Assemblies Loaded", ShortDescription = "# of Assemblies Loaded", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/exception-count", LongDescription = "Number of Exceptions / sec", ShortDescription = "Exceptions (#/s)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/threadpool-thread-count", LongDescription = "Number of ThreadPool Threads", ShortDescription = "ThreadPool Threads Count", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/monitor-lock-contention-count", LongDescription = "Monitor Lock Contention Count", ShortDescription = "Lock Contention (#/s)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/threadpool-queue-length", LongDescription = "ThreadPool Work Items Queue Length", ShortDescription = "ThreadPool Queue Length", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/threadpool-completed-items-count", LongDescription = "ThreadPool Completed Work Items Count", ShortDescription = "ThreadPool Items (#/s)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/active-timer-count", LongDescription = "Active Timers Count", ShortDescription = "Active Timers", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/il-bytes-jitted", LongDescription = "Total IL bytes jitted", ShortDescription = "IL Jitted (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/methods-jitted-count", LongDescription = "Number of methods jitted", ShortDescription = "Methods Jitted", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - }, - ["Microsoft-AspNetCore-Server-Kestrel"] = new MeasurementMetadata[] - { - new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/connections-per-second", LongDescription = "Connection Rate", ShortDescription = "Connections/s (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/total-connections", LongDescription = "Total Connections", ShortDescription = "Connections", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/tls-handshakes-per-second", LongDescription = "TLS Handshake Rate", ShortDescription = "TLS Handshakes/sec (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/total-tls-handshakes", LongDescription = "Total TLS Handshakes", ShortDescription = "TLS Handshakes", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/current-tls-handshakes", LongDescription = "Current TLS Handshakes", ShortDescription = "TLS Handshakes (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/failed-tls-handshakes", LongDescription = "Failed TLS Handshakes", ShortDescription = "Failed TLS Handshakes (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/current-connections", LongDescription = "Current Connections", ShortDescription = "Concurrent Connections (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/connection-queue-length", LongDescription = "Connection Queue Length", ShortDescription = "Connection Queue Length (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/request-queue-length", LongDescription = "Request Queue Length", ShortDescription = "Request Queue Length (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/current-upgraded-requests", LongDescription = "Current Upgraded Requests (WebSockets)", ShortDescription = "Upgraded Requests (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - }, - ["Microsoft.AspNetCore.Hosting"] = new MeasurementMetadata[] - { - new MeasurementMetadata { Source = "ASP.NET Core", Name = "aspnet-counter/requests-per-second", LongDescription = "Maximum Requests Per Second", ShortDescription = "Requests/sec (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "ASP.NET Core", Name = "aspnet-counter/total-requests", LongDescription = "Total Requests", ShortDescription = "Requests", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "ASP.NET Core", Name = "aspnet-counter/current-requests", LongDescription = "Maximum Current Requests", ShortDescription = "Concurrent Requests (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "ASP.NET Core", Name = "aspnet-counter/failed-requests", LongDescription = "Failed Requests", ShortDescription = "Failed Requests", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - }, - ["Microsoft.AspNetCore.Http.Connections"] = new MeasurementMetadata[] - { - new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/connections-started", LongDescription = "Total Connections Started", ShortDescription = "Connections Started", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/connections-stopped", LongDescription = "Total Connections Stopped", ShortDescription = "Connections Stopped", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/connections-timed-out", LongDescription = "Total Connections Timed Out", ShortDescription = "Timed Out Connections", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/current-connections", LongDescription = "Maximum of Current Connections", ShortDescription = "Concurrent Connections (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/connections-duration", LongDescription = "Average Connection Duration (ms)", ShortDescription = "Connection Duration (avg, ms)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - }, - ["Grpc.AspNetCore.Server"] = new MeasurementMetadata[] - { - new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/total-calls", LongDescription = "Total Calls", ShortDescription = "Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/current-calls", LongDescription = "Current Calls", ShortDescription = "Concurrent Calls (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/calls-failed", LongDescription = "Total Calls Failed", ShortDescription = "Failed Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/calls-deadline-exceeded", LongDescription = "Total Calls Deadline Exceeded", ShortDescription = "Deadline Exceeded Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/messages-sent", LongDescription = "Total Messages Sent", ShortDescription = "Messages Sent", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/messages-received", LongDescription = "Total Messages Received", ShortDescription = "Messages Received", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/calls-unimplemented", LongDescription = "Total Calls Unimplemented", ShortDescription = "Unimplemented Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - }, - ["Grpc.Net.Client"] = new MeasurementMetadata[] - { - new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/total-calls", LongDescription = "Total Calls", ShortDescription = "Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/current-calls", LongDescription = "Current Calls", ShortDescription = "Concurrent Calls (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/calls-failed", LongDescription = "Total Calls Failed", ShortDescription = "Failed Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/calls-deadline-exceeded", LongDescription = "Total Calls Deadline Exceeded", ShortDescription = "Total Calls Deadline Exceeded", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/messages-sent", LongDescription = "Total Messages Sent", ShortDescription = "Messages Sent", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/messages-received", LongDescription = "Total Messages Received", ShortDescription = "Messages Received", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - }, - ["Npgsql"] = new MeasurementMetadata[] - { - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/bytes-written-per-second", LongDescription = "Bytes Written", ShortDescription = "Bytes Written", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/bytes-read-per-second", LongDescription = "Bytes Read", ShortDescription = "Bytes Read", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/commands-per-second", LongDescription = "Command Rate", ShortDescription = "Command Rate", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/total-commands", LongDescription = "Total Commands", ShortDescription = "Total Commands", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/current-commands", LongDescription = "Current Commands", ShortDescription = "Current Commands", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/failed-commands", LongDescription = "Failed Commands", ShortDescription = "Failed Commands", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/prepared-commands-ratio", LongDescription = "Prepared Commands Ratio", ShortDescription = "Prepared Commands Ratio", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/connection-pools", LongDescription = "Connection Pools", ShortDescription = "Connection Pools", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/idle-connections", LongDescription = "Idle Connections", ShortDescription = "Idle Connections", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/busy-connections", LongDescription = "Busy Connections", ShortDescription = "Busy Connections", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/multiplexing-average-commands-per-batch", LongDescription = "Average commands per multiplexing batch", ShortDescription = "Commands per multiplexing batch", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/multiplexing-average-waits-per-batch", LongDescription = "Average waits per multiplexing batch", ShortDescription = "Waits per multiplexing batch", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/multiplexing-average-write-time-per-batch", LongDescription = "Average write time per multiplexing batch (us)", ShortDescription = "Time per multiplexing batch (us)", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - } - }; + // private static readonly Dictionary MetadataProviderPrefixes = new Dictionary() + // { + // ["System.Runtime"] = "runtime-counter", + // ["Microsoft-AspNetCore-Server-Kestrel"] = "kestrel-counter", + // ["Microsoft.AspNetCore.Hosting"] = "aspnet-counter", + // ["Microsoft.AspNetCore.Http.Connections"] = "signalr-counter", + // ["Grpc.AspNetCore.Server"] = "grpc-server-counter", + // ["Grpc.Net.client"] = "grpc-client-counter", + // ["Npgsql"] = "npgsql-counter" + // }; + + // private static readonly Dictionary MetadataProviders = new Dictionary + // { + // ["System.Runtime"] = new MeasurementMetadata[] + // { + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/cpu-usage", LongDescription = "Amount of time the process has utilized the CPU (ms)", ShortDescription = "CPU Usage (%)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/working-set", LongDescription = "Amount of working set used by the process (MB)", ShortDescription = "Working Set (MB)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gc-heap-size", LongDescription = "Total heap size reported by the GC (MB)", ShortDescription = "GC Heap Size (MB)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-0-gc-count", LongDescription = "Number of Gen 0 GCs / min", ShortDescription = "Gen 0 GC (#/min)", Format = "n02", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-1-gc-count", LongDescription = "Number of Gen 1 GCs / min", ShortDescription = "Gen 1 GC (#/min)", Format = "n02", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-2-gc-count", LongDescription = "Number of Gen 2 GCs / min", ShortDescription = "Gen 2 GC (#/min)", Format = "n02", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/time-in-gc", LongDescription = "% time in GC since the last GC", ShortDescription = "Time in GC (%)", Format = "n02", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-0-size", LongDescription = "Gen 0 Heap Size", ShortDescription = "Gen 0 Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-1-size", LongDescription = "Gen 1 Heap Size", ShortDescription = "Gen 1 Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-2-size", LongDescription = "Gen 2 Heap Size", ShortDescription = "Gen 2 Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/loh-size", LongDescription = "LOH (Large Object Heap) Size", ShortDescription = "LOH Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/poh-size", LongDescription = "POH (Pinned Object Heap) Size", ShortDescription = "POH Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/alloc-rate", LongDescription = "Allocation Rate", ShortDescription = "Allocation Rate (B/sec)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gc-fragmentation", LongDescription = "GC Heap Fragmentation", ShortDescription = "GC Fragmentation", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/assembly-count", LongDescription = "Number of Assemblies Loaded", ShortDescription = "# of Assemblies Loaded", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/exception-count", LongDescription = "Number of Exceptions / sec", ShortDescription = "Exceptions (#/s)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/threadpool-thread-count", LongDescription = "Number of ThreadPool Threads", ShortDescription = "ThreadPool Threads Count", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/monitor-lock-contention-count", LongDescription = "Monitor Lock Contention Count", ShortDescription = "Lock Contention (#/s)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/threadpool-queue-length", LongDescription = "ThreadPool Work Items Queue Length", ShortDescription = "ThreadPool Queue Length", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/threadpool-completed-items-count", LongDescription = "ThreadPool Completed Work Items Count", ShortDescription = "ThreadPool Items (#/s)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/active-timer-count", LongDescription = "Active Timers Count", ShortDescription = "Active Timers", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/il-bytes-jitted", LongDescription = "Total IL bytes jitted", ShortDescription = "IL Jitted (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/methods-jitted-count", LongDescription = "Number of methods jitted", ShortDescription = "Methods Jitted", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // }, + // ["Microsoft-AspNetCore-Server-Kestrel"] = new MeasurementMetadata[] + // { + // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/connections-per-second", LongDescription = "Connection Rate", ShortDescription = "Connections/s (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/total-connections", LongDescription = "Total Connections", ShortDescription = "Connections", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/tls-handshakes-per-second", LongDescription = "TLS Handshake Rate", ShortDescription = "TLS Handshakes/sec (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/total-tls-handshakes", LongDescription = "Total TLS Handshakes", ShortDescription = "TLS Handshakes", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/current-tls-handshakes", LongDescription = "Current TLS Handshakes", ShortDescription = "TLS Handshakes (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/failed-tls-handshakes", LongDescription = "Failed TLS Handshakes", ShortDescription = "Failed TLS Handshakes (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/current-connections", LongDescription = "Current Connections", ShortDescription = "Concurrent Connections (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/connection-queue-length", LongDescription = "Connection Queue Length", ShortDescription = "Connection Queue Length (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/request-queue-length", LongDescription = "Request Queue Length", ShortDescription = "Request Queue Length (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/current-upgraded-requests", LongDescription = "Current Upgraded Requests (WebSockets)", ShortDescription = "Upgraded Requests (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // }, + // ["Microsoft.AspNetCore.Hosting"] = new MeasurementMetadata[] + // { + // new MeasurementMetadata { Source = "ASP.NET Core", Name = "aspnet-counter/requests-per-second", LongDescription = "Maximum Requests Per Second", ShortDescription = "Requests/sec (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "ASP.NET Core", Name = "aspnet-counter/total-requests", LongDescription = "Total Requests", ShortDescription = "Requests", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "ASP.NET Core", Name = "aspnet-counter/current-requests", LongDescription = "Maximum Current Requests", ShortDescription = "Concurrent Requests (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "ASP.NET Core", Name = "aspnet-counter/failed-requests", LongDescription = "Failed Requests", ShortDescription = "Failed Requests", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // }, + // ["Microsoft.AspNetCore.Http.Connections"] = new MeasurementMetadata[] + // { + // new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/connections-started", LongDescription = "Total Connections Started", ShortDescription = "Connections Started", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/connections-stopped", LongDescription = "Total Connections Stopped", ShortDescription = "Connections Stopped", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/connections-timed-out", LongDescription = "Total Connections Timed Out", ShortDescription = "Timed Out Connections", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/current-connections", LongDescription = "Maximum of Current Connections", ShortDescription = "Concurrent Connections (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/connections-duration", LongDescription = "Average Connection Duration (ms)", ShortDescription = "Connection Duration (avg, ms)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // }, + // ["Grpc.AspNetCore.Server"] = new MeasurementMetadata[] + // { + // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/total-calls", LongDescription = "Total Calls", ShortDescription = "Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/current-calls", LongDescription = "Current Calls", ShortDescription = "Concurrent Calls (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/calls-failed", LongDescription = "Total Calls Failed", ShortDescription = "Failed Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/calls-deadline-exceeded", LongDescription = "Total Calls Deadline Exceeded", ShortDescription = "Deadline Exceeded Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/messages-sent", LongDescription = "Total Messages Sent", ShortDescription = "Messages Sent", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/messages-received", LongDescription = "Total Messages Received", ShortDescription = "Messages Received", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/calls-unimplemented", LongDescription = "Total Calls Unimplemented", ShortDescription = "Unimplemented Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // }, + // ["Grpc.Net.Client"] = new MeasurementMetadata[] + // { + // new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/total-calls", LongDescription = "Total Calls", ShortDescription = "Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/current-calls", LongDescription = "Current Calls", ShortDescription = "Concurrent Calls (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/calls-failed", LongDescription = "Total Calls Failed", ShortDescription = "Failed Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/calls-deadline-exceeded", LongDescription = "Total Calls Deadline Exceeded", ShortDescription = "Total Calls Deadline Exceeded", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/messages-sent", LongDescription = "Total Messages Sent", ShortDescription = "Messages Sent", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/messages-received", LongDescription = "Total Messages Received", ShortDescription = "Messages Received", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // }, + // ["Npgsql"] = new MeasurementMetadata[] + // { + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/bytes-written-per-second", LongDescription = "Bytes Written", ShortDescription = "Bytes Written", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/bytes-read-per-second", LongDescription = "Bytes Read", ShortDescription = "Bytes Read", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/commands-per-second", LongDescription = "Command Rate", ShortDescription = "Command Rate", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/total-commands", LongDescription = "Total Commands", ShortDescription = "Total Commands", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/current-commands", LongDescription = "Current Commands", ShortDescription = "Current Commands", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/failed-commands", LongDescription = "Failed Commands", ShortDescription = "Failed Commands", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/prepared-commands-ratio", LongDescription = "Prepared Commands Ratio", ShortDescription = "Prepared Commands Ratio", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/connection-pools", LongDescription = "Connection Pools", ShortDescription = "Connection Pools", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/idle-connections", LongDescription = "Idle Connections", ShortDescription = "Idle Connections", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/busy-connections", LongDescription = "Busy Connections", ShortDescription = "Busy Connections", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/multiplexing-average-commands-per-batch", LongDescription = "Average commands per multiplexing batch", ShortDescription = "Commands per multiplexing batch", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/multiplexing-average-waits-per-batch", LongDescription = "Average waits per multiplexing batch", ShortDescription = "Waits per multiplexing batch", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, + // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/multiplexing-average-write-time-per-batch", LongDescription = "Average write time per multiplexing batch (us)", ShortDescription = "Time per multiplexing batch (us)", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, + // } + // }; private static void StartCounters(Job job) { eventPipeTerminated = false; eventPipeTask = new Task(async () => { - // If not specific provider was defined, add System.Runtime - if (job.CounterProviders.Count == 0) - { - job.CounterProviders.Add("System.Runtime"); - } - - foreach (var providerName in job.CounterProviders) - { - if (MetadataProviders.TryGetValue(providerName, out var providerMetadata)) - { - foreach (var metadata in providerMetadata) - { - job.Metadata.Enqueue(metadata); - } - } - } + var providerNames = job.Counters.Select(x => x.Provider).Distinct().ToArray(); - Log.WriteLine($"Listening to counter event pipes (providers: {string.Join(", ", job.CounterProviders)})"); + Log.WriteLine($"Listening to counter event pipes (providers: {string.Join(", ", providerNames)})"); try { - var providerList = job.CounterProviders + var providerList = providerNames .Select(p => new EventPipeProvider( name: p, eventLevel: EventLevel.Informational, @@ -3923,12 +3908,13 @@ private static void StartCounters(Job job) var counterName = payloadFields["Name"].ToString(); // Skip value if the provider is unknown - if (!MetadataProviderPrefixes.TryGetValue(eventData.ProviderName, out var prefix)) + if (!providerNames.Contains(eventData.ProviderName, StringComparer.OrdinalIgnoreCase)) { return; } - measurement.Name = $"{prefix}/{counterName}"; + // TODO: optimize by pre-computing a searchable structure + measurement.Name = job.Counters.First(x => x.Provider.Equals(eventData.ProviderName, StringComparison.OrdinalIgnoreCase) && x.Name.Equals(counterName, StringComparison.OrdinalIgnoreCase))?.Measurement; switch (payloadFields["CounterType"]) { diff --git a/src/Microsoft.Crank.Controller/Configuration.cs b/src/Microsoft.Crank.Controller/Configuration.cs index dbe6d30dc..358b9ddae 100644 --- a/src/Microsoft.Crank.Controller/Configuration.cs +++ b/src/Microsoft.Crank.Controller/Configuration.cs @@ -16,11 +16,74 @@ public class Configuration public Dictionary> Scenarios { get; set; } = new Dictionary>(); public Dictionary Profiles { get; set; } = new Dictionary(); + + /// + /// List of named script sections that can be executed in a run + /// public Dictionary Scripts { get; set; } = new Dictionary(); + + /// + /// Scripts which are loaded automatically when the configuration file is included. + /// It's a collection such that multiple configuration files can be merged without overwriting the scripts. + /// + public List DefaultScripts { get; set; } = new List(); + + /// + /// List of named script sections that can be executed in a run + /// + public List Counters { get; set; } = new List(); + + /// + /// List of named script sections that can be executed in a run + /// + public List Results { get; set; } = new List(); } public class Scenario { public string Job { get; set; } } + + public class CounterList + { + /// + /// The name of the dotnet counters list, e.g. System.Runtime + /// + public string Name { get; set; } + + public List Values { get; set; } = new List(); + } + + public class Counter + { + /// + /// The name of the counter + /// + public string Name { get; set; } + + /// + /// The name of the measurement in the results + /// + public string Measurement { get; set; } + + /// + /// The description of the counter + /// + public string Description { get; set; } + } + + public class Result + { + public string Name { get; set; } + + public string Measurement { get; set; } + + public string Format { get; set; } = "n0"; + + public string Aggregate { get; set; } = "max"; + + public string Reduce { get; set; } = "max"; + + public bool Enabled { get; set; } = true; + } } diff --git a/src/Microsoft.Crank.Controller/JobOptions.cs b/src/Microsoft.Crank.Controller/JobOptions.cs deleted file mode 100644 index f3161d11c..000000000 --- a/src/Microsoft.Crank.Controller/JobOptions.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using System.Collections.Generic; - -namespace Microsoft.Crank.Controller -{ - public class JobOptions - { - public List Paths { get; set; } - public string PresetHeaders { get; set; } - } -} diff --git a/src/Microsoft.Crank.Controller/Program.cs b/src/Microsoft.Crank.Controller/Program.cs index aea0001b9..4db9f78be 100644 --- a/src/Microsoft.Crank.Controller/Program.cs +++ b/src/Microsoft.Crank.Controller/Program.cs @@ -1367,24 +1367,43 @@ IEnumerable scripts var result = configuration.ToObject(); - // If the job is a BenchmarkDotNet application, define default arguments - // so we can download the results as JSon + + // Validates that the scripts defined in the command line exist + foreach (var script in scripts) + { + if (!configurationInstance.Scripts.ContainsKey(script)) + { + var availablescripts = String.Join("', '", configurationInstance.Scripts.Keys); + throw new ControllerException($"Could not find a script named '{script}'. Possible values: '{availablescripts}'"); + } + } + + // Jobs post configuration foreach (var job in result.Jobs) { + // If the job is a BenchmarkDotNet application, define default arguments so we can download the results as JSon if (job.Value.Options.BenchmarkDotNet) { job.Value.WaitForExit = true; job.Value.ReadyStateText ??= "BenchmarkRunner: Start"; job.Value.Arguments = DefaultBenchmarkDotNetArguments + " " + job.Value.Arguments; } - } - foreach (var script in scripts) - { - if (!configurationInstance.Scripts.ContainsKey(script)) + // Copy the dotnet counters from the list of providers + if (job.Value.Options.CounterProviders.Any()) { - var availablescripts = String.Join("', '", configurationInstance.Scripts.Keys); - throw new ControllerException($"Could not find a script named '{script}'. Possible values: '{availablescripts}'"); + foreach (var provider in job.Value.Options.CounterProviders) + { + var allProviderSections = configurationInstance.Counters.Where(x => x.Name.Equals(provider, StringComparison.OrdinalIgnoreCase)); + + foreach (var providerSection in allProviderSections) + { + foreach (var counter in providerSection.Values) + { + job.Value.Counters.Add(new DotnetCounter { Provider = providerSection.Name, Name = counter.Name, Measurement = counter.Measurement }); + } + } + } } } @@ -1732,32 +1751,38 @@ private static async Task CreateJobResultsAsync(Configuration config // The "measurements" property is an array of arrays of measurements. // The "results" property contains all measures that are already aggregated and reduced. - if (_scriptOption.Values.Any()) - { - var engine = new Engine(); - - engine.SetValue("benchmarks", jobResults); - engine.SetValue("console", _scriptConsole); - engine.SetValue("require", new Action (ImportScript)); + var engine = new Engine(); + + engine.SetValue("benchmarks", jobResults); + engine.SetValue("console", _scriptConsole); + engine.SetValue("require", new Action (ImportScript)); - void ImportScript(string s) + void ImportScript(string s) + { + if (!configuration.Scripts.ContainsKey(s)) { - if (!configuration.Scripts.ContainsKey(s)) - { - var availablescripts = String.Join("', '", configuration.Scripts.Keys); - throw new ControllerException($"Could not find a script named '{s}'. Possible values: '{availablescripts}'"); - } - - engine.Execute(configuration.Scripts[s]); + var availablescripts = String.Join("', '", configuration.Scripts.Keys); + throw new ControllerException($"Could not find a script named '{s}'. Possible values: '{availablescripts}'"); } - foreach (var scriptName in _scriptOption.Values) - { - var scriptContent = configuration.Scripts[scriptName]; + engine.Execute(configuration.Scripts[s]); + } - engine.Execute(scriptContent); + // Import default scripts section + foreach (var script in configuration.DefaultScripts) + { + if (!String.IsNullOrWhiteSpace(script)) + { + engine.Execute(script); } } + + foreach (var scriptName in _scriptOption.Values) + { + var scriptContent = configuration.Scripts[scriptName]; + + engine.Execute(scriptContent); + } // // Remove metadata diff --git a/src/Microsoft.Crank.Controller/README.md b/src/Microsoft.Crank.Controller/README.md index 952278906..197ddcb35 100644 --- a/src/Microsoft.Crank.Controller/README.md +++ b/src/Microsoft.Crank.Controller/README.md @@ -74,8 +74,7 @@ Options: --[JOB].dotnetTrace Whether to collect a diagnostics trace using dotnet-trace. An optional profile name or list of dotnet-trace providers can be passed. e.g., true --[JOB].dotnetTraceProviders A comma-separated list of trace providers. By default the profile 'cpu-sampling' is used. See https://github.com/dotnet/diagnostics/blob/master/documentation/dotnet-trace-instructions.md for details. e.g., "Microsoft-DotNETCore-SampleProfiler, gc-verbose, JIT+Contention". --[JOB].options.traceOutput The name of the trace file. Can be a file prefix (app will add *.DATE*.zip) , or a specific name and no DATE* will be added e.g., c:\traces\mytrace - --[JOB].collectCounters Whether to collect dotnet counters. - --[JOB].counterProviders The name of a performance counter provider from which to collect. e.g., System.Runtime (default if none is set), Microsoft-AspNetCore-Server-Kestrel, Microsoft.AspNetCore.Hosting, Microsoft.AspNetCore.Http.Connections, Grpc.AspNetCore.Server, Grpc.Net.client, Npgsql +--[JOB].options.counterProviders The name of a performance counter provider from which to collect. e.g., System.Runtime, Microsoft-AspNetCore-Server-Kestrel, Microsoft.AspNetCore.Hosting, Microsoft.AspNetCore.Http.Connections, Grpc.AspNetCore.Server, Grpc.Net.client, Npgsql --[JOB].collectStartup Whether to include the startup phase in the traces, i.e after the application is launched and before it is marked as ready. For a web application it means before it is ready to accept requests. --[JOB].collect Whether to collect native traces. Uses PerfView on Windows and Perf/PerfCollect on Linux. --[JOB].collectArguments Native traces arguments, e.g., "BufferSizeMB=1024;CircularMB=1024;clrEvents=JITSymbols;kernelEvents=process+thread+ImageLoad+Profile" diff --git a/src/Microsoft.Crank.Controller/default.config.yml b/src/Microsoft.Crank.Controller/default.config.yml new file mode 100644 index 000000000..a15122fc5 --- /dev/null +++ b/src/Microsoft.Crank.Controller/default.config.yml @@ -0,0 +1,38 @@ +counters: +- name: System.Runtime + values: + - name: cpu-usage + measurement: runtime-counter/cpu-usage + description: Amount of time the process has utilized the CPU (ms) + - name: working-set + measurement: runtime-counter/working-set + description: Amount of working set used by the process (MB) + - name: gc-heap-size + measurement: runtime-counter/gc-heap-size + description: Total heap size reported by the GC (MB) + + Microsoft-AspNetCore-Server-Kestrel: + - name: System.Runtime + values: + - name: connections-per-second + measurement: kestrel-counter/connections-per-second + description: Connection Rate + +results: +# todo: call aggregate on each collection of results, then reduce on the new set +- measurement: runtime-counter/cpu-usage + name: Max CPU Usage (%) + format: n0 + aggregate: max + reduce: max + enabled: true # set to false to override any previous setting and exclude this result + +defaultScripts: + - | + console.warn("Default script is loaded") + + function max(values) { + let max = undefined; + values.forEach(x => max = Math.max(max, x)); + return max; + } diff --git a/src/Microsoft.Crank.Models/Attachment.cs b/src/Microsoft.Crank.Models/Attachment.cs index 399a4a326..2c076f5bb 100644 --- a/src/Microsoft.Crank.Models/Attachment.cs +++ b/src/Microsoft.Crank.Models/Attachment.cs @@ -1,5 +1,6 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. namespace Microsoft.Crank.Models { diff --git a/src/Microsoft.Crank.Models/Database.cs b/src/Microsoft.Crank.Models/Database.cs index a4a220909..b251769e9 100644 --- a/src/Microsoft.Crank.Models/Database.cs +++ b/src/Microsoft.Crank.Models/Database.cs @@ -1,4 +1,8 @@ -namespace Microsoft.Crank.Models +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +namespace Microsoft.Crank.Models { public enum Database { diff --git a/src/Microsoft.Crank.Models/DotnetCounter.cs b/src/Microsoft.Crank.Models/DotnetCounter.cs new file mode 100644 index 000000000..a6cc14e8a --- /dev/null +++ b/src/Microsoft.Crank.Models/DotnetCounter.cs @@ -0,0 +1,24 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +namespace Microsoft.Crank.Models +{ + public class DotnetCounter + { + /// + /// Provider name, e.g., System.Runtime + /// + public string Provider { get; set; } + + /// + /// Name of the counter, cpu-usage + /// + public string Name { get; set; } + + /// + /// Name of the measurement, runtime/cpu-usage + /// + public string Measurement { get; set; } + } +} diff --git a/src/Microsoft.Crank.Models/Hardware.cs b/src/Microsoft.Crank.Models/Hardware.cs index 40de7819e..ca8897456 100644 --- a/src/Microsoft.Crank.Models/Hardware.cs +++ b/src/Microsoft.Crank.Models/Hardware.cs @@ -1,4 +1,8 @@ -namespace Microsoft.Crank.Models +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +namespace Microsoft.Crank.Models { public enum Hardware { diff --git a/src/Microsoft.Crank.Models/Job.cs b/src/Microsoft.Crank.Models/Job.cs index 5a85fef5c..f219fae65 100644 --- a/src/Microsoft.Crank.Models/Job.cs +++ b/src/Microsoft.Crank.Models/Job.cs @@ -103,12 +103,11 @@ public class Job // Other collection options public bool CollectStartup { get; set; } - public bool CollectCounters { get; set; } /// /// The list of performance counter providers to be collected. Defaults to System.Runtime. /// - public List CounterProviders { get; set; } = new List(); + public List Counters { get; set; } = new List(); public string BasePath { get; set; } public int ProcessId { get; set; } public int ChildProcessId { get; set; } @@ -207,5 +206,6 @@ public class Options public List BuildArchives { get; set; } = new List(); public List OutputArchives { get; set; } = new List(); public bool BenchmarkDotNet { get; set; } + public List CounterProviders { get; set; } = new List(); } } diff --git a/src/Microsoft.Crank.Models/JobState.cs b/src/Microsoft.Crank.Models/JobState.cs index a0b8c7d1a..e9f0fba28 100644 --- a/src/Microsoft.Crank.Models/JobState.cs +++ b/src/Microsoft.Crank.Models/JobState.cs @@ -1,5 +1,6 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. namespace Microsoft.Crank.Models { diff --git a/src/Microsoft.Crank.Models/OperatingSystem.cs b/src/Microsoft.Crank.Models/OperatingSystem.cs index f569baa3d..169a9a03f 100644 --- a/src/Microsoft.Crank.Models/OperatingSystem.cs +++ b/src/Microsoft.Crank.Models/OperatingSystem.cs @@ -1,4 +1,8 @@ -namespace Microsoft.Crank.Models +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +namespace Microsoft.Crank.Models { public enum OperatingSystem { diff --git a/src/Microsoft.Crank.Models/Scheme.cs b/src/Microsoft.Crank.Models/Scheme.cs index d3c7484a1..4837d40cb 100644 --- a/src/Microsoft.Crank.Models/Scheme.cs +++ b/src/Microsoft.Crank.Models/Scheme.cs @@ -1,5 +1,6 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. namespace Microsoft.Crank.Models { diff --git a/src/Microsoft.Crank.Models/ServerCounter.cs b/src/Microsoft.Crank.Models/ServerCounter.cs deleted file mode 100644 index 661d4d719..000000000 --- a/src/Microsoft.Crank.Models/ServerCounter.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using System; - -namespace Microsoft.Crank.Models -{ - public class ServerCounter - { - public TimeSpan Elapsed { get; set; } - public long WorkingSet { get; set; } - public double CpuPercentage { get; set; } - } -} diff --git a/src/Microsoft.Crank.Models/WebHost.cs b/src/Microsoft.Crank.Models/WebHost.cs index 99ebdc178..736fabe5a 100644 --- a/src/Microsoft.Crank.Models/WebHost.cs +++ b/src/Microsoft.Crank.Models/WebHost.cs @@ -1,5 +1,6 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. namespace Microsoft.Crank.Models { From 93e874c653924f7392ea34f516eae98a340e4557 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Fri, 20 Nov 2020 10:41:57 -0800 Subject: [PATCH 03/13] progress --- src/Microsoft.Crank.Agent/Startup.cs | 24 +- .../Configuration.cs | 21 +- src/Microsoft.Crank.Controller/JobResults.cs | 8 +- .../Microsoft.Crank.Controller.csproj | 2 + src/Microsoft.Crank.Controller/Program.cs | 544 ++++++++---------- .../ResultComparer.cs | 2 +- .../default.config.yml | 103 +++- src/Microsoft.Crank.Models/DotnetCounter.cs | 1 + 8 files changed, 380 insertions(+), 325 deletions(-) diff --git a/src/Microsoft.Crank.Agent/Startup.cs b/src/Microsoft.Crank.Agent/Startup.cs index 37f465f16..780b7af86 100644 --- a/src/Microsoft.Crank.Agent/Startup.cs +++ b/src/Microsoft.Crank.Agent/Startup.cs @@ -483,9 +483,9 @@ private static async Task ProcessJobs(string hostname, string dockerHostname, Ca Name = "benchmarks/cpu/raw", Aggregate = Operation.Max, Reduce = Operation.Max, - Format = "n2", // two decimals + Format = "n0", LongDescription = "Raw CPU value (not normalized by number of cores)", - ShortDescription = "Raw CPU Usage (%)" + ShortDescription = "Cores usage (%)" }); } @@ -759,7 +759,7 @@ private static async Task ProcessJobs(string hostname, string dockerHostname, Ca var workingSetRaw = data[1]; var usedMemoryRaw = workingSetRaw.Split('/')[0].Trim(); var cpu = double.Parse(cpuPercentRaw.Trim('%')); - var rawCPU = cpu; + var rawCpu = cpu; // On Windows the CPU already takes the number or HT into account if (OperatingSystem == OperatingSystem.Linux) @@ -808,7 +808,7 @@ private static async Task ProcessJobs(string hostname, string dockerHostname, Ca { Name = "benchmarks/cpu/raw", Timestamp = now, - Value = rawCPU + Value = Math.Round(rawCpu) }); if (job.CollectSwapMemory && OperatingSystem == OperatingSystem.Linux) @@ -929,7 +929,7 @@ private static async Task ProcessJobs(string hostname, string dockerHostname, Ca { Name = "benchmarks/cpu/raw", Timestamp = now, - Value = rawCpu + Value = Math.Round(rawCpu) }); if (job.CollectSwapMemory && OperatingSystem == OperatingSystem.Linux) @@ -3900,8 +3900,6 @@ private static void StartCounters(Job job) return; } - var measurement = new Measurement(); - var payloadVal = (IDictionary)(eventData.PayloadValue(0)); var payloadFields = (IDictionary)(payloadVal["Payload"]); @@ -3914,7 +3912,17 @@ private static void StartCounters(Job job) } // TODO: optimize by pre-computing a searchable structure - measurement.Name = job.Counters.First(x => x.Provider.Equals(eventData.ProviderName, StringComparison.OrdinalIgnoreCase) && x.Name.Equals(counterName, StringComparison.OrdinalIgnoreCase))?.Measurement; + var counter = job.Counters.FirstOrDefault(x => x.Provider.Equals(eventData.ProviderName, StringComparison.OrdinalIgnoreCase) && x.Name.Equals(counterName, StringComparison.OrdinalIgnoreCase)); + + if (counter == null) + { + // The counter is not tracked + return; + } + + var measurement = new Measurement(); + + measurement.Name = counter.Measurement; switch (payloadFields["CounterType"]) { diff --git a/src/Microsoft.Crank.Controller/Configuration.cs b/src/Microsoft.Crank.Controller/Configuration.cs index 358b9ddae..ac3889484 100644 --- a/src/Microsoft.Crank.Controller/Configuration.cs +++ b/src/Microsoft.Crank.Controller/Configuration.cs @@ -49,7 +49,7 @@ public class CounterList /// /// The name of the dotnet counters list, e.g. System.Runtime /// - public string Name { get; set; } + public string Provider { get; set; } public List Values { get; set; } = new List(); } @@ -74,16 +74,23 @@ public class Counter public class Result { - public string Name { get; set; } - + /// + /// The name of the measurements sent back from the jobs + /// public string Measurement { get; set; } + + /// + /// The name of the result to create + /// + public string Name { get; set; } + public string Description { get; set; } - public string Format { get; set; } = "n0"; + public string Format { get; set; } - public string Aggregate { get; set; } = "max"; + public string Aggregate { get; set; } - public string Reduce { get; set; } = "max"; + public string Reduce { get; set; } - public bool Enabled { get; set; } = true; + public bool Excluded { get; set; } } } diff --git a/src/Microsoft.Crank.Controller/JobResults.cs b/src/Microsoft.Crank.Controller/JobResults.cs index 0e1436cd5..5c8755eb7 100644 --- a/src/Microsoft.Crank.Controller/JobResults.cs +++ b/src/Microsoft.Crank.Controller/JobResults.cs @@ -17,8 +17,14 @@ public class JobResults public class JobResult { public Dictionary Results { get; set; } = new Dictionary(); - public MeasurementMetadata[] Metadata { get; set; } = Array.Empty(); + public ResultMetadata[] Metadata { get; set; } = Array.Empty(); public List Measurements { get; set; } = new List(); public Dictionary Environment { get; set; } = new Dictionary(); } + public class ResultMetadata + { + public string Name { get; set; } + public string Description { get; set; } + public string Format { get; set; } + } } diff --git a/src/Microsoft.Crank.Controller/Microsoft.Crank.Controller.csproj b/src/Microsoft.Crank.Controller/Microsoft.Crank.Controller.csproj index 8c4da2db8..965db24b8 100644 --- a/src/Microsoft.Crank.Controller/Microsoft.Crank.Controller.csproj +++ b/src/Microsoft.Crank.Controller/Microsoft.Crank.Controller.csproj @@ -29,6 +29,8 @@ + + diff --git a/src/Microsoft.Crank.Controller/Program.cs b/src/Microsoft.Crank.Controller/Program.cs index 4db9f78be..603d3b6c0 100644 --- a/src/Microsoft.Crank.Controller/Program.cs +++ b/src/Microsoft.Crank.Controller/Program.cs @@ -727,37 +727,38 @@ await Task.WhenAll( } } - // Display results + // Normalize results foreach (var jobName in dependencies) { - // When running iterations, don't display the results unless the flag is set - - if (iterations > 1 && !_displayIterationsOption.HasValue()) - { - continue; - } - var service = configuration.Jobs[jobName]; // Skip failed jobs - if (!jobsByDependency.ContainsKey(jobName)) + if (!jobsByDependency.TryGetValue(jobName, out var jobConnections)) { continue; } - var jobConnections = jobsByDependency[jobName]; - // Convert any json result to an object NormalizeResults(jobConnections); + } - if (!service.Options.DiscardResults) + var jobResults = await CreateJobResultsAsync(configuration, dependencies, jobsByDependency); + + // Display results + foreach (var jobName in dependencies) + { + var service = configuration.Jobs[jobName]; + + if (service.Options.DiscardResults) { - Console.WriteLine(); - WriteMeasuresTable(jobName, jobConnections); + continue; } - } - var jobResults = await CreateJobResultsAsync(configuration, dependencies, jobsByDependency); + var job = jobResults.Jobs[jobName]; + + Console.WriteLine(); + WriteResults(jobName, job); + } foreach (var property in _propertyOption.Values) { @@ -787,6 +788,8 @@ await Task.WhenAll( // Save results + CleanMeasurements(jobResults); + if (_outputOption.HasValue()) { var filename = _outputOption.Value(); @@ -1010,6 +1013,8 @@ string session // Store data + CleanMeasurements(jobResults); + if (!String.IsNullOrEmpty(_sqlConnectionString)) { var executionResult = new ExecutionResult(); @@ -1106,13 +1111,13 @@ TimeSpan span // Convert any json result to an object NormalizeResults(new[] { job }); + var jobResults = await CreateJobResultsAsync(configuration, dependencies, new Dictionary> { [jobName] = new List { job } }); + if (!service.Options.DiscardResults) { - WriteMeasures(job); + WriteResults(jobName, jobResults.Jobs[jobName]); } - var jobResults = await CreateJobResultsAsync(configuration, dependencies, new Dictionary> { [jobName] = new List { job } }); - foreach (var property in _propertyOption.Values) { var segments = property.Split('=', 2); @@ -1122,6 +1127,8 @@ TimeSpan span // Save results + CleanMeasurements(jobResults); + if (_outputOption.HasValue()) { var filename = _outputOption.Value(); @@ -1203,6 +1210,10 @@ IEnumerable scripts ) { JObject configuration = null; + + var defaultConfigFilename = Path.Combine(Path.GetDirectoryName(typeof(Program).Assembly.Location), "default.config.yml"); + + configurationFileOrUrls = new [] { defaultConfigFilename }.Union(configurationFileOrUrls); // Merge all configuration sources foreach (var configurationFileOrUrl in configurationFileOrUrls) @@ -1394,13 +1405,13 @@ IEnumerable scripts { foreach (var provider in job.Value.Options.CounterProviders) { - var allProviderSections = configurationInstance.Counters.Where(x => x.Name.Equals(provider, StringComparison.OrdinalIgnoreCase)); + var allProviderSections = configurationInstance.Counters.Where(x => x.Provider.Equals(provider, StringComparison.OrdinalIgnoreCase)); foreach (var providerSection in allProviderSections) { foreach (var counter in providerSection.Values) { - job.Value.Counters.Add(new DotnetCounter { Provider = providerSection.Name, Name = counter.Name, Measurement = counter.Measurement }); + job.Value.Counters.Add(new DotnetCounter { Provider = providerSection.Provider, Name = counter.Name, Measurement = counter.Measurement }); } } } @@ -1677,6 +1688,9 @@ private static Func, double> Percentile(int percentile) }; } + /// + /// Converts any "json" serialized value (format: json) to an object + /// private static void NormalizeResults(IEnumerable jobs) { if (jobs == null || !jobs.Any()) @@ -1711,9 +1725,37 @@ private static void NormalizeResults(IEnumerable jobs) } private static async Task CreateJobResultsAsync(Configuration configuration, string[] dependencies, Dictionary> jobsByDependency) - { + { var jobResults = new JobResults(); + // Initializes the JS engine to compute results + + var engine = new Engine(); + + engine.SetValue("benchmarks", jobResults); + engine.SetValue("console", _scriptConsole); + engine.SetValue("require", new Action (ImportScript)); + + void ImportScript(string s) + { + if (!configuration.Scripts.ContainsKey(s)) + { + var availablescripts = String.Join("', '", configuration.Scripts.Keys); + throw new ControllerException($"Could not find a script named '{s}'. Possible values: '{availablescripts}'"); + } + + engine.Execute(configuration.Scripts[s]); + } + + // Import default scripts sections + foreach (var script in configuration.DefaultScripts) + { + if (!String.IsNullOrWhiteSpace(script)) + { + engine.Execute(script); + } + } + foreach (var jobName in dependencies) { if (configuration.Jobs[jobName].Options.DiscardResults) @@ -1730,11 +1772,75 @@ private static async Task CreateJobResultsAsync(Configuration config var jobResult = jobResults.Jobs[jobName] = new JobResult(); var jobConnections = jobsByDependency[jobName]; - jobResult.Results = AggregateAndReduceResults(jobConnections); + // Calculate results from configuration and job metadata + + var resultDefinitions = jobConnections[0].Job.Metadata.Select(x => + new Result { + Measurement = x .Name, + Name = x.Name, + Description = x.ShortDescription, + Format = x.Format, + Aggregate = x.Aggregate.ToString().ToLowerInvariant(), + Reduce = x.Reduce.ToString().ToLowerInvariant() + } + ).GroupBy(x => x.Name).ToDictionary(x => x.Key, x => x.Last()); + + // Update any result definition with the ones in the configuration + foreach (var result in configuration.Results) + { + resultDefinitions.TryGetValue(result.Name, out var existing); + + if (existing == null) + { + // Add the result if it is not already defined by a metadata from the job + resultDefinitions[result.Name] = result; + } + else + { + if (result.Excluded) + { + existing.Excluded = true; + } + + if (!String.IsNullOrWhiteSpace(result.Aggregate)) + { + existing.Aggregate = result.Aggregate; + } + + if (!String.IsNullOrWhiteSpace(result.Reduce)) + { + existing.Reduce = result.Reduce; + } + + if (!String.IsNullOrWhiteSpace(result.Format)) + { + existing.Format = result.Format; + } + + if (!String.IsNullOrWhiteSpace(result.Name)) + { + existing.Name = result.Name; + } - // Insert metadata - jobResult.Metadata = jobConnections[0].Job.Metadata.ToArray(); + if (!String.IsNullOrWhiteSpace(result.Description)) + { + existing.Description = result.Description; + } + } + } + // Update job's metadata with custom results + jobResult.Metadata = resultDefinitions.Values.Select(x => + new ResultMetadata + { + Name = x .Name, + Description = x.Description, + Format = x.Format + }) + .ToArray(); + + jobResult.Results = AggregateAndReduceResults(jobConnections, engine, resultDefinitions.Values.ToList()); + foreach (var jobConnection in jobConnections) { jobResult.Measurements.Add(jobConnection.Job.Measurements.ToArray()); @@ -1751,32 +1857,8 @@ private static async Task CreateJobResultsAsync(Configuration config // The "measurements" property is an array of arrays of measurements. // The "results" property contains all measures that are already aggregated and reduced. - var engine = new Engine(); - - engine.SetValue("benchmarks", jobResults); - engine.SetValue("console", _scriptConsole); - engine.SetValue("require", new Action (ImportScript)); - - void ImportScript(string s) - { - if (!configuration.Scripts.ContainsKey(s)) - { - var availablescripts = String.Join("', '", configuration.Scripts.Keys); - throw new ControllerException($"Could not find a script named '{s}'. Possible values: '{availablescripts}'"); - } - - engine.Execute(configuration.Scripts[s]); - } - - // Import default scripts section - foreach (var script in configuration.DefaultScripts) - { - if (!String.IsNullOrWhiteSpace(script)) - { - engine.Execute(script); - } - } + // Run custom scripts after the results are computed foreach (var scriptName in _scriptOption.Values) { var scriptContent = configuration.Scripts[scriptName]; @@ -1784,16 +1866,18 @@ void ImportScript(string s) engine.Execute(scriptContent); } - // // Remove metadata + return jobResults; + } - foreach (var jobName in dependencies) + private static void CleanMeasurements(JobResults jobResults) + { + // Remove metadata + foreach (var jobResult in jobResults.Jobs.Values) { - var jobResult = jobResults.Jobs[jobName]; - // Exclude metadata if (_excludeMetadataOption.HasValue()) { - jobResult.Metadata = Array.Empty(); + jobResult.Metadata = Array.Empty(); } // Exclude measurements @@ -1802,11 +1886,9 @@ void ImportScript(string s) jobResult.Measurements.Clear(); } } - - return jobResults; } - private static Dictionary AggregateAndReduceResults(IEnumerable jobs) + private static Dictionary AggregateAndReduceResults(IEnumerable jobs, Engine engine, List resultDefinitions) { if (jobs == null || !jobs.Any()) { @@ -1821,71 +1903,32 @@ private static Dictionary AggregateAndReduceResults(IEnumerable< var summaries = new Dictionary(); - foreach (var metadata in job.Job.Metadata) + foreach (var name in measurements.Keys) { - if (!measurements.ContainsKey(metadata.Name)) - { - continue; - } - - object result = 0; - - switch (metadata.Aggregate) + foreach (var resultDefinition in resultDefinitions.Where(x => x.Measurement == name)) { - case Operation.All: - result = measurements[metadata.Name].Select(x => x.Value).ToArray(); - break; - - case Operation.First: - result = measurements[metadata.Name].First().Value; - break; - - case Operation.Last: - result = measurements[metadata.Name].Last().Value; - break; - - case Operation.Avg: - result = measurements[metadata.Name].Average(x => Convert.ToDouble(x.Value)); - break; - - case Operation.Count: - result = measurements[metadata.Name].Count(); - break; - - case Operation.Max: - result = measurements[metadata.Name].Max(x => Convert.ToDouble(x.Value)); - break; - - case Operation.Median: - result = Percentile(50)(measurements[metadata.Name].Select(x => Convert.ToDouble(x.Value))); - break; - - case Operation.Min: - result = measurements[metadata.Name].Min(x => Convert.ToDouble(x.Value)); - break; - - case Operation.Sum: - result = measurements[metadata.Name].Sum(x => Convert.ToDouble(x.Value)); - break; - - case Operation.Delta: - result = measurements[metadata.Name].Max(x => Convert.ToDouble(x.Value)) - measurements[metadata.Name].Min(x => Convert.ToDouble(x.Value)); - break; + object aggregated = null; - default: - result = measurements[metadata.Name].First().Value; - break; - } + try + { + aggregated = engine.Invoke(resultDefinition.Aggregate, arguments: new object [] { measurements[name].Select(x => x.Value).ToArray() }).ToObject(); + } + catch + { + Console.WriteLine($"Could not aggregate: {name} with {resultDefinition.Aggregate}"); + continue; + } - try - { - summaries[metadata.Name] = Convert.ToDouble(result); - } - catch - { - // If the value can't be converted to double, just keep it - // e.g., bombardier/raw - summaries[metadata.Name] = result; + try + { + summaries[resultDefinition.Name] = Convert.ToDouble(aggregated); + } + catch + { + // If the value can't be converted to double, just keep it + // e.g., bombardier/raw + summaries[resultDefinition.Name] = aggregated; + } } } @@ -1900,181 +1943,138 @@ private static Dictionary AggregateAndReduceResults(IEnumerable< var reduced = new Dictionary(); - var maxWidth = jobs.First().Job.Metadata.Max(x => x.ShortDescription.Length) + 2; - - foreach (var metadata in jobs.First().Job.Metadata) + foreach (var resultDefinition in resultDefinitions) { - var reducedValues = groups.SelectMany(x => x) - .Where(x => x.Key == metadata.Name); + var values = groups.SelectMany(x => x).Where(x => x.Key == resultDefinition.Name).ToArray(); - // some values are not emitted, even if metadata is present, causing aggregation to fail - if (reducedValues.Count() == 0) + // No measurement for this result + if (values.Length == 0) { continue; } object reducedValue = null; - switch (metadata.Reduce) + try { - case Operation.All: - reducedValue = reducedValues.ToArray(); - break; - - case Operation.First: - reducedValue = reducedValues.First().Value; - break; - - case Operation.Last: - reducedValue = reducedValues.Last().Value; - break; - - case Operation.Avg: - reducedValue = reducedValues.Average(x => Convert.ToDouble(x.Value)); - break; - - case Operation.Count: - reducedValue = reducedValues.Count(); - break; - - case Operation.Max: - reducedValue = reducedValues.Max(x => Convert.ToDouble(x.Value)); - break; - - case Operation.Median: - reducedValue = Percentile(50)(reducedValues.Select(x => Convert.ToDouble(x.Value))); - break; - - case Operation.Min: - reducedValue = reducedValues.Min(x => Convert.ToDouble(x.Value)); - break; - - case Operation.Sum: - reducedValue = reducedValues.Sum(x => Convert.ToDouble(x.Value)); - break; - - case Operation.Delta: - reducedValue = reducedValues.Max(x => Convert.ToDouble(x.Value)) - reducedValues.Min(x => Convert.ToDouble(x.Value)); - break; - - default: - reducedValue = reducedValues.First().Value; - break; + reducedValue = engine.Invoke(resultDefinition.Reduce, arguments: new object [] { values }).ToObject(); } - - reduced[metadata.Name] = reducedValue; - - Log.Quiet(""); - Log.Quiet($"# Summary"); - - if (metadata.Format != "object") + catch { - if (!String.IsNullOrEmpty(metadata.Format)) - { - Console.WriteLine($"{(metadata.ShortDescription + ":").PadRight(maxWidth)} {Convert.ToDouble(reducedValue).ToString(metadata.Format)}"); - } - else - { - Console.WriteLine($"{(metadata.ShortDescription + ":").PadRight(maxWidth)} {reducedValue.ToString()}"); - } + Console.WriteLine($"Could not reduce: {resultDefinition.Name} with {resultDefinition.Reduce}"); + continue; } + reduced[resultDefinition.Name] = reducedValue; } return reduced; } - private static void WriteMeasures(JobConnection job) + private static void WriteResults(string jobName, JobResult jobResult) { - // Handle old server versions that don't expose measurements - if (!job.Job.Measurements.Any() || !job.Job.Metadata.Any()) + var renderChart = _renderChartOption.HasValue(); + + // 1 column per jobConnection + var table = new ResultTable(2); + + // Add a chart column? + if (renderChart) { - return; + table = new ResultTable(table.Columns + 1); } - // Group by name for easy lookup - var measurements = job.Job.Measurements.GroupBy(x => x.Name).ToDictionary(x => x.Key, x => x.ToList()); - var maxWidth = job.Job.Metadata.Max(x => x.ShortDescription.Length) + 2; + table.Headers.Add(jobName); + table.Headers.Add(""); - var previousSource = ""; + if (renderChart) + { + table.Headers.Add(""); + } - foreach (var metadata in job.Job.Metadata) + foreach (var metadata in jobResult.Metadata) { - if (!measurements.ContainsKey(metadata.Name)) + if (!jobResult.Results.ContainsKey(metadata.Name) || metadata.Format == "object") { continue; } - if (previousSource != metadata.Source) - { - Log.Quiet(""); - Log.Quiet($"## {metadata.Source}:"); - - previousSource = metadata.Source; - } - - object result = 0; - - switch (metadata.Aggregate) - { - case Operation.All: - result = measurements[metadata.Name].Select(x => x.Value).ToArray(); - break; - - case Operation.First: - result = measurements[metadata.Name].First().Value; - break; - - case Operation.Last: - result = measurements[metadata.Name].Last().Value; - break; - - case Operation.Avg: - result = measurements[metadata.Name].Average(x => Convert.ToDouble(x.Value)); - break; - - case Operation.Count: - result = measurements[metadata.Name].Count(); - break; - - case Operation.Max: - result = measurements[metadata.Name].Max(x => Convert.ToDouble(x.Value)); - break; + var row = table.AddRow(); - case Operation.Median: - result = Percentile(50)(measurements[metadata.Name].Select(x => Convert.ToDouble(x.Value))); - break; + var cell = new Cell(); + cell.Elements.Add(new CellElement() { Text = metadata.Description, Alignment = CellTextAlignment.Left }); + row.Add(cell); - case Operation.Min: - result = measurements[metadata.Name].Min(x => Convert.ToDouble(x.Value)); - break; + cell = new Cell(); + row.Add(cell); - case Operation.Sum: - result = measurements[metadata.Name].Sum(x => Convert.ToDouble(x.Value)); - break; - - case Operation.Delta: - result = measurements[metadata.Name].Max(x => Convert.ToDouble(x.Value)) - measurements[metadata.Name].Min(x => Convert.ToDouble(x.Value)); - break; + var value = jobResult.Results[metadata.Name]; - default: - result = measurements[metadata.Name].First().Value; - break; + if (value is string s) + { + cell.Elements.Add(new CellElement(s, CellTextAlignment.Left)); } - - // We don't render the result if it's a raw object - if (metadata.Format != "object") + else if (value is double d) { if (!String.IsNullOrEmpty(metadata.Format)) { - Console.WriteLine($"{(metadata.ShortDescription + ":").PadRight(maxWidth)} {Convert.ToDouble(result).ToString(metadata.Format)}"); + cell.Elements.Add(new CellElement(d.ToString(metadata.Format), CellTextAlignment.Left)); } else { - Console.WriteLine($"{(metadata.ShortDescription + ":").PadRight(maxWidth)} {result.ToString()}"); + cell.Elements.Add(new CellElement(d.ToString("n2"), CellTextAlignment.Left)); + } + } + + if (renderChart) + { + try + { + var autoScale = _chartScaleOption.HasValue() && _chartScaleOption.Value() == "auto"; + + Console.OutputEncoding = Encoding.UTF8; + + var chars = _chartTypeOption.HasValue() && _chartTypeOption.Value() == "hex" + ? hexChartChars + : barChartChars + ; + + var values = jobResult.Measurements[0].Where(x => x.Name.Equals(metadata.Name, StringComparison.OrdinalIgnoreCase)).Select(x => Convert.ToDouble(x.Value)).ToArray(); + + // Exclude zeros from min value so we can use a blank space for exact zeros + var min = values.Where(x => x != 0).Min(); + var max = values.Max(); + var delta = autoScale ? max - min : max; + var step = delta / (chars.Length - 1); + + var normalizedValues = values.Select(x => x == 0 ? 0 : (int) Math.Round((x - (autoScale ? min : 0)) / step)); + + if (step != 0 && values.Length > 1) + { + if (normalizedValues.All(x => x >= 0 && x < chars.Length)) + { + var chart = new String(normalizedValues.Select(x => chars[x]).ToArray()); + row.Add(new Cell(new CellElement(chart, CellTextAlignment.Left))); + } + else + { + row.Add(new Cell()); + } + } + else + { + row.Add(new Cell()); + } + } + catch + { + row.Add(new Cell()); } } } + + table.Render(Console.Out); + Console.WriteLine(); } private static void WriteMeasuresTable(string jobName, IList jobConnections) @@ -2286,47 +2286,7 @@ private static void WriteExecutionResults(ExecutionResult executionResult) var jobName = job.Key; var jobResult = job.Value; - // 1 column per jobConnection - var table = new ResultTable(2); - - table.Headers.Add(jobName); - table.Headers.Add(""); - - foreach (var metadata in jobResult.Metadata) - { - if (jobResult.Results.ContainsKey(metadata.Name) && metadata.Format != "object") - { - var row = table.AddRow(); - - var cell = new Cell(); - cell.Elements.Add(new CellElement() { Text = metadata.ShortDescription, Alignment = CellTextAlignment.Left }); - row.Add(cell); - - cell = new Cell(); - row.Add(cell); - - var value = jobResult.Results[metadata.Name]; - - if (value is string s) - { - cell.Elements.Add(new CellElement(s, CellTextAlignment.Left)); - } - else if (value is double d) - { - if (!String.IsNullOrEmpty(metadata.Format)) - { - cell.Elements.Add(new CellElement(d.ToString(metadata.Format), CellTextAlignment.Left)); - } - else - { - cell.Elements.Add(new CellElement(d.ToString("n2"), CellTextAlignment.Left)); - } - } - } - } - - table.Render(Console.Out); - Console.WriteLine(); + WriteResults(jobName, jobResult); } } diff --git a/src/Microsoft.Crank.Controller/ResultComparer.cs b/src/Microsoft.Crank.Controller/ResultComparer.cs index 43c1c8649..480ab0b00 100644 --- a/src/Microsoft.Crank.Controller/ResultComparer.cs +++ b/src/Microsoft.Crank.Controller/ResultComparer.cs @@ -85,7 +85,7 @@ private static void DisplayDiff(IEnumerable allResults, IEnumerable< var cell = new Cell(); - cell.Elements.Add(new CellElement() { Text = metadata.ShortDescription, Alignment = CellTextAlignment.Left }); + cell.Elements.Add(new CellElement() { Text = metadata.Description, Alignment = CellTextAlignment.Left }); row.Add(cell); diff --git a/src/Microsoft.Crank.Controller/default.config.yml b/src/Microsoft.Crank.Controller/default.config.yml index a15122fc5..d5b25430b 100644 --- a/src/Microsoft.Crank.Controller/default.config.yml +++ b/src/Microsoft.Crank.Controller/default.config.yml @@ -1,38 +1,109 @@ counters: -- name: System.Runtime + # creates measurements from dotnet counters +- provider: System.Runtime values: - name: cpu-usage measurement: runtime-counter/cpu-usage description: Amount of time the process has utilized the CPU (ms) + - name: working-set measurement: runtime-counter/working-set description: Amount of working set used by the process (MB) + - name: gc-heap-size measurement: runtime-counter/gc-heap-size description: Total heap size reported by the GC (MB) - Microsoft-AspNetCore-Server-Kestrel: - - name: System.Runtime - values: - - name: connections-per-second - measurement: kestrel-counter/connections-per-second - description: Connection Rate +- provider: Microsoft-AspNetCore-Server-Kestrel + values: + - name: connections-per-second + measurement: kestrel-counter/connections-per-second + description: Connection Rate results: -# todo: call aggregate on each collection of results, then reduce on the new set -- measurement: runtime-counter/cpu-usage - name: Max CPU Usage (%) + # creates results from measurements +- name: runtime-counter/cpu-usage + measurement: runtime-counter/cpu-usage + description: Max CPU Usage (%) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/working-set + measurement: runtime-counter/working-set + description: Max Working Set (MB) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/working-set/p95 + measurement: runtime-counter/working-set + description: p95 Working Set (MB) + format: n0 + aggregate: percentile95 + reduce: max + +- name: runtime-counter/gc-heap-size + measurement: runtime-counter/gc-heap-size + description: Max GC Heap Size (MB) format: n0 aggregate: max reduce: max - enabled: true # set to false to override any previous setting and exclude this result defaultScripts: - | - console.warn("Default script is loaded") - function max(values) { - let max = undefined; - values.forEach(x => max = Math.max(max, x)); - return max; + return Math.max(...values); + } + + function min(values) { + return Math.max(...values); } + + function last(values) { + return values.length == 0 ? null : values[values.length-1]; + } + + function first(values) { + return values.length == 0 ? null : values[0]; + } + + function all(values) { + return values.length == 0 ? null : values[0]; + } + + function avg(values) { + return values.reduce((acc, next) => acc + next) / values.length; + } + + function sum(values) { + return values.reduce((acc, next) => acc + next); + } + + function median(values) { + return percentile(values, 50); + } + + function count(values) { + return values.length; + } + + function count(values) { + return values.length; + } + + function delta(values) { + return max(values) - min(values); + } + + function percentile(values, th) { + var ordered = values.sort((a, b) => a - b); // by default sort() uses ordinal comparison + index = Math.max(0, Math.round(ordered.length * th / 100) - 1); + return ordered[index]; + } + + var percentile99 = x => percentile(x, 99) + var percentile95 = x => percentile(x, 95) + var percentile90 = x => percentile(x, 90) + var percentile75 = x => percentile(x, 90) + var percentile50 = x => percentile(x, 90) diff --git a/src/Microsoft.Crank.Models/DotnetCounter.cs b/src/Microsoft.Crank.Models/DotnetCounter.cs index a6cc14e8a..44d37f6a1 100644 --- a/src/Microsoft.Crank.Models/DotnetCounter.cs +++ b/src/Microsoft.Crank.Models/DotnetCounter.cs @@ -20,5 +20,6 @@ public class DotnetCounter /// Name of the measurement, runtime/cpu-usage /// public string Measurement { get; set; } + } } From f1a8d9bd908d216b0babd18b745e173a3739afc8 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Fri, 20 Nov 2020 18:06:28 -0800 Subject: [PATCH 04/13] More counters --- .../default.config.yml | 542 +++++++++++++++++- 1 file changed, 534 insertions(+), 8 deletions(-) diff --git a/src/Microsoft.Crank.Controller/default.config.yml b/src/Microsoft.Crank.Controller/default.config.yml index d5b25430b..b4184c137 100644 --- a/src/Microsoft.Crank.Controller/default.config.yml +++ b/src/Microsoft.Crank.Controller/default.config.yml @@ -1,10 +1,13 @@ counters: # creates measurements from dotnet counters - provider: System.Runtime + + # https://github.com/dotnet/diagnostics/blob/master/src/Tools/dotnet-counters/KnownData.cs + values: - name: cpu-usage measurement: runtime-counter/cpu-usage - description: Amount of time the process has utilized the CPU (ms) + description: Percentage of time the process has utilized the CPU (%) - name: working-set measurement: runtime-counter/working-set @@ -14,14 +17,305 @@ counters: measurement: runtime-counter/gc-heap-size description: Total heap size reported by the GC (MB) + - name: gen-0-gc-count + measurement: runtime-counter/gen-0-gc-count + description: Number of Gen 0 GCs / min + + - name: gen-1-gc-count + measurement: runtime-counter/gen-1-gc-count + description: Number of Gen 1 GCs / min + + - name: gen-2-gc-count + measurement: runtime-counter/gen-2-gc-count + description: Number of Gen 2 GCs / min + + - name: time-in-gc + measurement: runtime-counter/time-in-gc + description: '% time in GC since the last GC' + + - name: gen-0-size + measurement: runtime-counter/gen-0-size + description: Gen 0 Heap Size + + - name: gen-1-size + measurement: runtime-counter/gen-1-size + description: Gen 1 Heap Size + + - name: gen-1-size + measurement: runtime-counter/gen-1-size + description: Gen 1 Heap Size + + - name: loh-size + measurement: runtime-counter/loh-size + description: LOH (Large Object Heap) Size + + - name: poh-size + measurement: runtime-counter/ + description: POH (Pinned Object Heap) Size + + - name: alloc-rate + measurement: runtime-counter/alloc-rate + description: Number of bytes allocated in the managed heap per second + + - name: gc-fragmentation + measurement: runtime-counter/gc-fragmentation + description: GC Heap Fragmentation + + - name: assembly-count + measurement: runtime-counter/assembly-count + description: Number of Assemblies Loaded + + - name: exception-count + measurement: runtime-counter/exception-count + description: Number of Exceptions / sec + + - name: threadpool-thread-count + measurement: runtime-counter/threadpool-thread-count + description: Number of ThreadPool Threads + + - name: monitor-lock-contention-count + measurement: runtime-counter/monitor-lock-contention-count + description: Number of times there were contention when trying to take the monitor lock per second + + - name: threadpool-queue-length + measurement: runtime-counter/threadpool-queue-length + description: ThreadPool Work Items Queue Length + + - name: threadpool-completed-items-count + measurement: runtime-counter/threadpool-completed-items-count + description: ThreadPool Completed Work Items Count + + - name: active-timer-count + measurement: runtime-counter/active-timer-count + description: Number of timers that are currently active + + - name: il-bytes-jitted + measurement: runtime-counter/il-bytes-jitted + description: Total IL bytes jitted + + - name: methods-jitted-count + measurement: runtime-counter/methods-jitted-count + description: Number of methods jitted + - provider: Microsoft-AspNetCore-Server-Kestrel values: - name: connections-per-second measurement: kestrel-counter/connections-per-second description: Connection Rate + - name: total-connections + measurement: kestrel-counter/total-connections + description: Total Connections + + - name: tls-handshakes-per-second + measurement: kestrel-counter/tls-handshakes-per-second + description: Rate at which TLS Handshakes are made + + - name: total-tls-handshakes + measurement: kestrel-counter/total-tls-handshakes + description: Total number of TLS handshakes made + + - name: current-tls-handshakes + measurement: kestrel-counter/current-tls-handshakes + description: Number of currently active TLS handshakes + + - name: failed-tls-handshakes + measurement: kestrel-counter/failed-tls-handshakes + description: Total number of failed TLS handshakes + + - name: current-connections + measurement: kestrel-counter/current-connections + description: Number of current connections + + - name: connection-queue-length + measurement: kestrel-counter/connection-queue-length + description: Length of Kestrel Connection Queue + + - name: request-queue-length + measurement: kestrel-counter/request-queue-length + description: Length total HTTP request queue + + - name: current-upgraded-requests + measurement: kestrel-counter/current-upgraded-requests + description: Current Upgraded Requests (WebSockets) + +- provider: Microsoft.AspNetCore.Hosting + values: + - name: requests-per-second + measurement: aspnet-counter/requests-per-second + description: Request rate + + - name: total-requests + measurement: aspnet-counter/total-requests + description: Total number of requests + + - name: current-requests + measurement: aspnet-counter/current-requests + description: Current number of requests + + - name: failed-requests + measurement: aspnet-counter/failed-requests + description: Failed number of requests + +- provider: System.Net.Http + values: + - name: requests-started + measurement: system-net-http-counter/requests-started + description: Requests Started + + - name: requests-started-rate + measurement: system-net-http-counter/requests-started-rate + description: Requests Started Rate + + - name: requests-aborted + measurement: system-net-http-counter/requests-aborted + description: Requests Aborted + + - name: requests-aborted-rate + measurement: system-net-http-counter/requests-aborted-rate + description: Requests Aborted Rate + + - name: current-requests + measurement: system-net-http-counter/current-requests + description: Current Requests + +# SignalR +- provider: Microsoft.AspNetCore.Http.Connections + values: + - name: connections-started + measurement: signalr-counter/connections-started + description: Total Connections Started + + - name: connections-stopped + measurement: signalr-counter/connections-stopped + description: Total Connections Stopped + + - name: connections-timed-out + measurement: signalr-counter/connections-timed-out + description: Total Connections Timed Out + + - name: current-connections + measurement: signalr-counter/current-connections + description: Current Connections + + - name: connections-duration + measurement: signalr-counter/connections-duration + description: Average Connection Duration (ms) + +- provider: Grpc.AspNetCore.Server + values: + - name: total-calls + measurement: grpc-server-counter/total-calls + description: Total Calls + + - name: current-calls + measurement: grpc-server-counter/current-calls + description: Current Calls + + - name: calls-failed + measurement: grpc-server-counter/calls-failed + description: Total Calls Failed + + - name: calls-deadline-exceeded + measurement: grpc-server-counter/calls-deadline-exceeded + description: Total Calls Deadline Exceeded + + - name: messages-sent + measurement: grpc-server-counter/messages-sent + description: Total Messages Sent + + - name: messages-received + measurement: grpc-server-counter/messages-received + description: Total Messages Received + + - name: calls-unimplemented + measurement: grpc-server-counter/calls-unimplemented + description: Total Calls Unimplemented + +- provider: Grpc.Net.Client + values: + - name: total-calls + measurement: grpc-client-counter/total-calls + description: Total Calls + + - name: current-calls + measurement: grpc-client-counter/current-calls + description: Current Calls + + - name: calls-failed + measurement: grpc-client-counter/calls-failed + description: Total Calls Failed + + - name: calls-deadline-exceeded + measurement: grpc-client-counter/calls-deadline-exceeded + description: Total Calls Deadline Exceeded + + - name: messages-sent + measurement: grpc-client-counter/messages-sent + description: Total Messages Sent + + - name: messages-received + measurement: grpc-client-counter/messages-received + description: Total Messages Received + +- provider: Npgsql + values: + - name: bytes-written-per-second + measurement: npgsql-counter/bytes-written-per-second + description: Bytes Written + + - name: bytes-read-per-second + measurement: npgsql-counter/bytes-read-per-second + description: Bytes Read + + - name: commands-per-second + measurement: npgsql-counter/commands-per-second + description: Command Rate + + - name: total-commands + measurement: npgsql-counter/total-commands + description: Total Commands + + - name: current-commands + measurement: npgsql-counter/current-commands + description: Current Commands + + - name: failed-commands + measurement: npgsql-counter/failed-commands + description: Failed Commands + + - name: prepared-commands-ratio + measurement: npgsql-counter/prepared-commands-ratio + description: Prepared Commands Ratio + + - name: connection-pools + measurement: npgsql-counter/connection-pools + description: Connection Pools + + - name: idle-connections + measurement: npgsql-counter/idle-connections + description: Idle Connections + + - name: busy-connections + measurement: npgsql-counter/busy-connections + description: Busy Connections + + - name: multiplexing-average-commands-per-batch + measurement: npgsql-counter/multiplexing-average-commands-per-batch + description: Average commands per multiplexing batch + + - name: multiplexing-average-waits-per-batch + measurement: npgsql-counter/multiplexing-average-waits-per-batch + description: Average waits per multiplexing batch + + - name: multiplexing-average-write-time-per-batch + measurement: npgsql-counter/multiplexing-average-write-time-per-batch + description: Average write time per multiplexing batch (us) + results: # creates results from measurements + + # System.Runtime counters - name: runtime-counter/cpu-usage measurement: runtime-counter/cpu-usage description: Max CPU Usage (%) @@ -36,13 +330,6 @@ results: aggregate: max reduce: max -- name: runtime-counter/working-set/p95 - measurement: runtime-counter/working-set - description: p95 Working Set (MB) - format: n0 - aggregate: percentile95 - reduce: max - - name: runtime-counter/gc-heap-size measurement: runtime-counter/gc-heap-size description: Max GC Heap Size (MB) @@ -50,6 +337,245 @@ results: aggregate: max reduce: max +- name: runtime-counter/gen-0-gc-count + measurement: runtime-counter/gen-0-gc-count + description: Max Number of Gen 0 GCs / min + format: n2 + aggregate: max + reduce: max + +- name: runtime-counter/gen-1-gc-count + measurement: runtime-counter/gen-1-gc-count + description: Max Number of Gen 1 GCs / min + format: n2 + aggregate: max + reduce: max + +- name: runtime-counter/gen-2-gc-count + measurement: runtime-counter/gen-2-gc-count + description: Max Number of Gen 2 GCs / min + format: n2 + aggregate: max + reduce: max + +- name: runtime-counter/time-in-gc + measurement: runtime-counter/time-in-gc + description: Max Time in GC (%) + format: n2 + aggregate: max + reduce: max + +- name: runtime-counter/gen-0-size + measurement: runtime-counter/gen-0-size + description: Max Gen 0 Size (B) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/gen-1-size + measurement: runtime-counter/gen-1-size + description: Max Gen 1 Size (B) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/gen-2-size + measurement: runtime-counter/gen-2-size + description: Max Gen 2 Size (B) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/loh-size + measurement: runtime-counter/loh-size + description: Max LOH Size (B) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/poh-size + measurement: runtime-counter/poh-size + description: Max POH Size (B) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/alloc-rate + measurement: runtime-counter/alloc-rate + description: Max Allocation Rate (B/sec) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/gc-fragmentation + measurement: runtime-counter/gc-fragmentation + description: Max GC Heap Fragmentation + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/assembly-count + measurement: runtime-counter/assembly-count + description: '# of Assemblies Loaded' + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/exception-count + measurement: runtime-counter/exception-count + description: Max Exceptions (#/s) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/monitor-lock-contention-count + measurement: runtime-counter/monitor-lock-contention-count + description: Max Lock Contention (#/s) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/threadpool-thread-count + measurement: runtime-counter/threadpool-thread-count + description: Max ThreadPool Threads Count + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/threadpool-queue-length + measurement: runtime-counter/threadpool-queue-length + description: Max ThreadPool Queue Length + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/threadpool-completed-items-count + measurement: runtime-counter/threadpool-completed-items-count + description: Max ThreadPool Items (#/s) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/active-timer-count + measurement: runtime-counter/active-timer-count + description: Max Active Timers + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/il-bytes-jitted + measurement: runtime-counter/il-bytes-jitted + description: IL Jitted (B) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/methods-jitted-count + measurement: runtime-counter/methods-jitted-count + description: Methods Jitted + format: n0 + aggregate: max + reduce: max + +# Microsoft-AspNetCore-Server-Kestrel counters + +- name: kestrel-counter/connections-per-second + measurement: kestrel-counter/connections-per-second + description: Max Connections per second + +- name: kestrel-counter/total-connections + measurement: kestrel-counter/total-connections + description: Max Connections + format: n0 + aggregate: max + reduce: max + +- name: kestrel-counter/tls-handshakes-per-second + measurement: kestrel-counter/tls-handshakes-per-second + description: Max TLS Handshakes per second + format: n0 + aggregate: max + reduce: max + +- name: kestrel-counter/total-tls-handshakes + measurement: kestrel-counter/total-tls-handshakes + description: Total TLS Handshakes + format: n0 + aggregate: max + reduce: max + +- name: kestrel-counter/current-tls-handshakes + measurement: kestrel-counter/current-tls-handshakes + description: Max Active TLS Handshakes + format: n0 + aggregate: max + reduce: max + +- name: kestrel-counter/failed-tls-handshakes + measurement: kestrel-counter/failed-tls-handshakes + description: Total Dailed TLS Handshakes + format: n0 + aggregate: max + reduce: max + +- name: kestrel-counter/current-connections + measurement: kestrel-counter/current-connections + description: Max Active Connections + format: n0 + aggregate: max + reduce: max + +- name: kestrel-counter/connection-queue-length + measurement: kestrel-counter/connection-queue-length + description: Max Connection Queue Length + format: n0 + aggregate: max + reduce: max + +- name: kestrel-counter/request-queue-length + measurement: kestrel-counter/request-queue-length + description: Max Request Queue Length + format: n0 + aggregate: max + reduce: max + +- name: kestrel-counter/current-upgraded-requests + measurement: kestrel-counter/current-upgraded-requests + description: Max Active Upgraded Requests (WebSockets) + format: n0 + aggregate: max + reduce: max + +# Microsoft.AspNetCore.Hosting + +- name: aspnet-counter/requests-per-second + measurement: aspnet-counter/requests-per-second + description: Max Requests per second + format: n0 + aggregate: max + reduce: max + +- name: aspnet-counter/total-requests + measurement: aspnet-counter/total-requests + description: Total Requests + format: n0 + aggregate: max + reduce: max + +- name: aspnet-counter/current-requests + measurement: aspnet-counter/current-requests + description: Max Active Requests + format: n0 + aggregate: max + reduce: max + +- name: aspnet-counter/failed-requests + measurement: aspnet-counter/failed-requests + description: Failed Requests + format: n0 + aggregate: max + reduce: max + defaultScripts: - | function max(values) { From 2fb981707b569d5556afff635379c6fad73e7667 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Mon, 23 Nov 2020 13:57:52 -0800 Subject: [PATCH 05/13] Adding documentation --- docs/event_counters.md | 159 + docs/post_processing.md | 76 + samples/scripts/scripts.benchmarks.yml | 5 + src/Microsoft.Crank.Controller/Program.cs | 5 + .../default.config.yml | 274 +- src/Microsoft.Crank.Controller/results.json | 6186 +++++++++++++++++ 6 files changed, 6698 insertions(+), 7 deletions(-) create mode 100644 docs/event_counters.md create mode 100644 docs/post_processing.md create mode 100644 src/Microsoft.Crank.Controller/results.json diff --git a/docs/event_counters.md b/docs/event_counters.md new file mode 100644 index 000000000..d1965ec74 --- /dev/null +++ b/docs/event_counters.md @@ -0,0 +1,159 @@ +## Description + +This guide shows how to collect standard and custom dotnet event counters. + +Crank is able to record any predefined set of event counters, the same way [dotnet-counters](https://docs.microsoft.com/en-us/dotnet/core/diagnostics/dotnet-counters) does, but without the need of spawning a different sidecar process. Another advantage over dotnet-counters is that it can also be configured to record custom event counters and apply build custom statistics out of it (max, min, percentiles, ...). + +## Prerequisites + +1. You should have followed the [Getting Started](getting_started.md) tutorial, and have `crank` and `crank-agent` tools available. + +## Collecting event counters + +The following command line will run a benchmark and record the event counters exposed by the `System.Runtime` provider. + +``` +crank --config /crank/samples/hello/hello.benchmarks.yml --scenario hello --profile local --application.counterProviders System.Runtime --chart +``` + +``` +| application | | | +| ----------------------------- | ---------- | ----------------------------------- | +| CPU Usage (%) | 38 | ▃▇▇▇▆▆▆▇▆▆▆▅█▇▇█▇▇▇▅▃ | +| Raw CPU Usage (%) | 300.46 | ▃▇▇▇▆▆▆▇▆▆▆▅█▇▇█▇▇▇▆▃ | +| Working Set (MB) | 89 | ▃▃▃▃▃▃▃▃▃▃▆▇████████████████████ | +| Build Time (ms) | 5,358 | | +| Start Time (ms) | 564 | | +| Published Size (KB) | 86,753 | | +| .NET Core SDK Version | 5.0.100 | | +| Max CPU Usage (%) | 35 | ▂█▇█▆▆██▆█▅▇▇▇███▇█▇▅ | +| Max Working Set (MB) | 93 | ▃▃▃▃▃▃▃▃▃▃▃▅▇▇█████████████████████ | +| Max GC Heap Size (MB) | 39 | ▄▅▆▆▁▂▄▆▅▇▂▁▂▂▃▂▂█▅▆▂▂▂▂ | +| Max Number of Gen 0 GCs / min | 3.00 | ▅▅▅█▅▅▅▅▅█▅▅▅▅▅▅▃▅▅▅ | +| Max Number of Gen 1 GCs / min | 1.00 | █ █ | +| Max Number of Gen 2 GCs / min | 1.00 | █ | +| Max Time in GC (%) | 1.00 | █ | +| Max Gen 0 Size (B) | 192 | ███████████████████████ | +| Max Gen 1 Size (B) | 3,272,160 | █ | +| Max LOH Size (B) | 134,392 | ███████████████████████ | +| Max Allocation Rate (B/sec) | 72,372,048 | ▂▇███▇██▇█▇▇▇██▇▇▇▆▆▅ | +| Max GC Heap Fragmentation | NaN | | +| # of Assemblies Loaded | 97 | ▇▇▇▇▇▇▇▇▇▇▇████████████████████████ | +| Max Exceptions (#/s) | 1,019 | █ █ | +| Max Lock Contention (#/s) | 34 | █▁▁ ▁ ▁ ▁ ▁▁▁█ | +| Max ThreadPool Threads Count | 23 | ▁▁▁▁▁▁▁▁▁▁▁▆▆▆▆▆██▆▆█▆▆▇▆▆▇▆▇▆▇▇▇▇▇ | +| Max ThreadPool Queue Length | 101 | █ ▁▃ ▁ ▁ ▁ | +| Max ThreadPool Items (#/s) | 191,763 | ▁▆██▇▆██▇█▇▇▇████▇▆▆▅ | +| Max Active Timers | 0 | | +| IL Jitted (B) | 168,412 | ▁▂▂▂▂▂▂▂▂▂▂▃▆▆▆▆▆▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇███ | +| Methods Jitted | 1,927 | ▁▂▂▂▂▂▂▂▂▂▂▃▆▆▆▆▆▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇███ | +``` + +The chart on the last column are created from all the data points over the benchmark. + +## List of pre-defined counter providers: + +The following providers are pre-defined in crank: + +- System.Runtime +- Microsoft-AspNetCore-Server-Kestrel +- Microsoft.AspNetCore.Hosting +- System.Net.Http +- Microsoft.AspNetCore.Http.Connections +- Grpc.AspNetCore.Server +- Grpc.Net.Client +- Npgsql + +## Adding custom providers + +The providers are defined in the same config files that contain the scenarios of job definitions, under the `counters` section. + +Here is an example defining a subset of the `System.Runtime` counters: + +```yml +counters: +- provider: System.Runtime + values: + - name: cpu-usage + measurement: runtime-counter/cpu-usage + description: Percentage of time the process has utilized the CPU (%) + + - name: working-set + measurement: runtime-counter/working-set + description: Amount of working set used by the process (MB) +``` + +Using this format, you can add the definition of a counter you are exposing, and all its values will be recorded as measurements. + +## Building results out of measurements + +When an event counter is recorded, it creates timestamped measurements. There can be multiple data points of the same measurement. To build a result that is displayed in the summary table, and saved in results files, you need to define a __result__ that will desribe how to transform the set of measurements in a single value, usually the max. + +In any configuration file, results can be defined under the `results` section like this: + +```yml +results: + +# System.Runtime counters +- name: runtime-counter/cpu-usage + measurement: runtime-counter/cpu-usage + description: Max CPU Usage (%) + format: n0 + aggregate: max + reduce: max + +- name: runtime-counter/working-set + measurement: runtime-counter/working-set + description: Max Working Set (MB) + format: n0 + aggregate: max + reduce: max +``` + +Multiple results can be computed for the same measurements. The following example adds a new result that computes the 95th of the working set: + +```yml +- name: runtime-counter/working-set/95 + measurement: runtime-counter/working-set + description: Max Working Set (MB) + format: n0 + aggregate: percentile95 + reduce: max +``` + +- The `aggregate` operation defines how to group the results that come from a single source. +- The `reduce` operation defines how to group the aggregated results from different sources. This is less usual as it requires a job to run on multiple nodes, for instance when splitting a web load on multiple clients. + +### Available operations + +The following operations are available by default: + +- max +- min +- last +- first +- all +- avg +- sum +- median +- count +- delta +- percentile99 +- percentile95 +- percentile90 +- percentile75 +- percentile50 + +## Defining custom operations + +Any configuration file can add custom operations using javascript, in the `defaultScript` section. + +The following example defines the `max` operation: + +```yml +defaultScripts: + - | + function max(values) { + return Math.max(...values); + } +``` diff --git a/docs/post_processing.md b/docs/post_processing.md new file mode 100644 index 000000000..4ed5b6ade --- /dev/null +++ b/docs/post_processing.md @@ -0,0 +1,76 @@ +## Description + +This guide shows how to execute custom scripts over the results and measurements. + +Once a benchmark is finished, the results (compured values our of measurements) and the data points (timestamped measurements) can be saved locally or in a database. However it might be necessary to compute custom results, alter existing ones, or even add custom properties. + +Crank provides the ability to define custom post-processing scripts that can be invoked before the results are stored, and reused across runs. + +## Prerequisites + +1. You should have followed the [Getting Started](getting_started.md) tutorial, and have `crank` and `crank-agent` tools available. + +## Defining custom scripts + +Custom scripts are defined in the `scripts` section of a configuration file. +In a script, the `benchmarks` property is available for read/write access, and represent the JSon document as it would be save on disk with the option `--output [filename]`. + +The following configuration snippet demonstrates how to add a custom property to the `properties` element of the results: + +```yml +scripts: + add_current_time: | + benchmarks.properties["time"] = new Date().toISOString(); +``` + +Custom scripts are invoked from the command line with the `--script` option like so: + +``` +crank --config /crank/samples/hello/hello.benchmarks.yml --scenario hello --profile local --script add_current_time +``` + +Multiple scripts can be invoked from the command line by invoking the argument multiple times. +All the script are executed in the same JavaScript context, such that top level variables are shared across script invocations. + +## Defining global scripts + +A global script is one that is executed automatically when a configuration file is loaded. It can be useful when named scripts need to share some common function or variables. +The following script creates a function to compute percentiles of a set of values. + +__percentile.config.yml__ + +```yml +defaultScript: + - | + console.log("this section is loaded by default and before named scripts") + + function percentile(items, th) { + var ordered = items.sort((a, b) => a - b); // by default sort() uses ordinal comparison + index = Math.max(0, Math.round(ordered.length * th / 100) - 1); + return ordered[index]; + } +``` + +By running a benchmark with the `--config percentile.config.yml` the text _this section is loaded by default and before named scripts_ would be displayed, and the `percentile()` function would be available for any other scripts that are invoked. + +## Adding custom results + +Some values might be the results of results coming from different source. The following examples show how to add a new result to the __application__ job by using one that is in the __load__ job. + +```yml + add_allocations_per_request: | + var allocations = benchmarks.jobs.application.results["runtime-counter/alloc-rate"] + var rps = benchmarks.jobs.load.results["wrk/requests"]; + benchmarks.jobs.application.results["alloc-per-request"] = allocations / rps; +``` + +## Logging + +A custom `console` object is made available and support the following methods: + +- log(message) +- info(message) +- warn(message) +- error(message) + +These methods will use different colors to render the message, respectively default, green, yellow and red. diff --git a/samples/scripts/scripts.benchmarks.yml b/samples/scripts/scripts.benchmarks.yml index ced22a689..616781b01 100644 --- a/samples/scripts/scripts.benchmarks.yml +++ b/samples/scripts/scripts.benchmarks.yml @@ -9,20 +9,25 @@ defaultScript: } scripts: + + # displays a message using all different colors say_hello: | console.log("hello") console.info("world") console.warn("this is") console.error("scary") + # records the current date and time as a custom property add_current_time: | benchmarks.properties["time"] = new Date().toISOString(); + # calculats the allocations per request by using results from application and load add_allocations_per_request: | var allocations = benchmarks.jobs.application.results["runtime-counter/alloc-rate"] var rps = benchmarks.jobs.load.results["wrk/requests"]; benchmarks.jobs.application.results["alloc-per-request"] = allocations / rps; + # computes the 95th percentile of the working set from all the data points (measurements) add_p95_memory: | var memories = benchmarks.jobs.application.measurements[0] .filter(m => m.name == "benchmarks/working-set") diff --git a/src/Microsoft.Crank.Controller/Program.cs b/src/Microsoft.Crank.Controller/Program.cs index 603d3b6c0..dc6258a64 100644 --- a/src/Microsoft.Crank.Controller/Program.cs +++ b/src/Microsoft.Crank.Controller/Program.cs @@ -1407,6 +1407,11 @@ IEnumerable scripts { var allProviderSections = configurationInstance.Counters.Where(x => x.Provider.Equals(provider, StringComparison.OrdinalIgnoreCase)); + if (!allProviderSections.Any()) + { + throw new ControllerException($"Could not find the counters provider named '{provider}'. Possible values: {String.Join(", ", configurationInstance.Counters.Select(x => x.Provider))}"); + } + foreach (var providerSection in allProviderSections) { foreach (var counter in providerSection.Values) diff --git a/src/Microsoft.Crank.Controller/default.config.yml b/src/Microsoft.Crank.Controller/default.config.yml index b4184c137..157914089 100644 --- a/src/Microsoft.Crank.Controller/default.config.yml +++ b/src/Microsoft.Crank.Controller/default.config.yml @@ -312,16 +312,22 @@ counters: measurement: npgsql-counter/multiplexing-average-write-time-per-batch description: Average write time per multiplexing batch (us) -results: - # creates results from measurements +results: # creates results from measurements - # System.Runtime counters +# System.Runtime counters - name: runtime-counter/cpu-usage measurement: runtime-counter/cpu-usage description: Max CPU Usage (%) format: n0 aggregate: max reduce: max + +- name: runtime-counter/cpu-usage/avg + measurement: runtime-counter/cpu-usage + description: Avg CPU Usage (%) + format: n0 + aggregate: percentile95 + reduce: max - name: runtime-counter/working-set measurement: runtime-counter/working-set @@ -576,6 +582,264 @@ results: aggregate: max reduce: max +# System.Net.Http + +- name: system-net-http-counter/requests-started + measurement: system-net-http-counter/requests-started + description: Total Requests Started + format: n0 + aggregate: max + reduce: max + +- name: system-net-http-counter/requests-started-rate + measurement: system-net-http-counter/requests-started-rate + description: Max Requests Started per second + format: n0 + aggregate: max + reduce: max + +- name: system-net-http-counter/requests-aborted + measurement: system-net-http-counter/requests-aborted + description: Total Requests Aborted + format: n0 + aggregate: max + reduce: max + +- name: system-net-http-counter/requests-aborted-rate + measurement: system-net-http-counter/requests-aborted-rate + description: Max Requests Aborted per second + format: n0 + aggregate: max + reduce: max + +- name: system-net-http-counter/current-requests + measurement: system-net-http-counter/current-requests + description: Max Active Requests + format: n0 + aggregate: max + reduce: max + +# Microsoft.AspNetCore.Http.Connections (SignalR) +- name: signalr-counter/connections-started + measurement: signalr-counter/connections-started + description: Total Connections Started + format: n0 + aggregate: max + reduce: max + +- name: signalr-counter/connections-stopped + measurement: signalr-counter/connections-stopped + description: Total Connections Stopped + format: n0 + aggregate: max + reduce: max + +- name: signalr-counter/connections-timed-out + measurement: signalr-counter/connections-timed-out + description: Total Connections Timed Out + format: n0 + aggregate: max + reduce: max + +- name: signalr-counter/current-connections + measurement: signalr-counter/current-connections + description: Max Active Connections + format: n0 + aggregate: max + reduce: max + +- name: signalr-counter/connections-duration + measurement: signalr-counter/connections-duration + description: Max Average Connection Duration per second (ms) + format: n0 + aggregate: Max + reduce: max + +# Grpc.AspNetCore.Server +- name: grpc-server-counter/total-calls + measurement: grpc-server-counter/total-calls + description: Total Calls + format: n0 + aggregate: Max + reduce: max + +- name: grpc-server-counter/current-calls + measurement: grpc-server-counter/current-calls + description: Max Active Calls + format: n0 + aggregate: Max + reduce: max + +- name: grpc-server-counter/calls-failed + measurement: grpc-server-counter/calls-failed + description: Total Calls Failed + format: n0 + aggregate: Max + reduce: max + +- name: grpc-server-counter/calls-deadline-exceeded + measurement: grpc-server-counter/calls-deadline-exceeded + description: Total Calls Deadline Exceeded + format: n0 + aggregate: Max + reduce: max + +- name: grpc-server-counter/messages-sent + measurement: grpc-server-counter/messages-sent + description: Total Messages Sent + format: n0 + aggregate: Max + reduce: max + +- name: grpc-server-counter/messages-received + measurement: grpc-server-counter/messages-received + description: Total Messages Received + format: n0 + aggregate: Max + reduce: max + +- name: grpc-server-counter/calls-unimplemented + measurement: grpc-server-counter/calls-unimplemented + description: Total Calls Unimplemented + format: n0 + aggregate: Max + reduce: max + +# Grpc.Net.Client +- name: grpc-client-counter/total-calls + measurement: grpc-client-counter/total-calls + description: Total Calls + format: n0 + aggregate: Max + reduce: max + +- name: grpc-client-counter/current-calls + measurement: grpc-client-counter/current-calls + description: Max Active Calls + format: n0 + aggregate: Max + reduce: max + +- name: grpc-client-counter/calls-failed + measurement: grpc-client-counter/calls-failed + description: Total Calls Failed + format: n0 + aggregate: Max + reduce: max + +- name: grpc-client-counter/calls-deadline-exceeded + measurement: grpc-client-counter/calls-deadline-exceeded + description: Total Calls Deadline Exceeded + format: n0 + aggregate: Max + reduce: max + +- name: grpc-client-counter/messages-sent + measurement: grpc-client-counter/messages-sent + description: Total Messages Sent + format: n0 + aggregate: Max + reduce: max + +- name: grpc-client-counter/messages-received + measurement: grpc-client-counter/messages-received + description: Total Messages Received + format: n0 + aggregate: Max + reduce: max + +# Npgsql +- name: npgsql-counter/bytes-written-per-second + measurement: npgsql-counter/bytes-written-per-second + description: Total Bytes Written + format: n0 + aggregate: Max + reduce: max + +- name: npgsql-counter/bytes-read-per-second + measurement: npgsql-counter/bytes-read-per-second + description: Total Bytes Read + format: n0 + aggregate: Max + reduce: max + +- name: npgsql-counter/commands-per-second + measurement: npgsql-counter/commands-per-second + description: Max Command Rate + format: n0 + aggregate: Max + reduce: max + +- name: npgsql-counter/total-commands + measurement: npgsql-counter/total-commands + description: Total Commands + format: n0 + aggregate: Max + reduce: max + +- name: npgsql-counter/current-commands + measurement: npgsql-counter/current-commands + description: Max Active Commands per second + format: n0 + aggregate: Max + reduce: max + +- name: npgsql-counter/failed-commands + measurement: npgsql-counter/failed-commands + description: Total Failed Commands + format: n0 + aggregate: Max + reduce: max + +- name: npgsql-counter/prepared-commands-ratio + measurement: npgsql-counter/prepared-commands-ratio + description: Max Prepared Commands Ratio + format: n0 + aggregate: Max + reduce: max + +- name: npgsql-counter/connection-pools + measurement: npgsql-counter/connection-pools + description: Max Connection Pools + format: n0 + aggregate: Max + reduce: max + +- name: npgsql-counter/idle-connections + measurement: npgsql-counter/idle-connections + description: Max Idle Connections + format: n0 + aggregate: Max + reduce: max + +- name: npgsql-counter/busy-connections + measurement: npgsql-counter/busy-connections + description: Max Busy Connections + format: n0 + aggregate: Max + reduce: max + +- name: npgsql-counter/multiplexing-average-commands-per-batch + measurement: npgsql-counter/multiplexing-average-commands-per-batch + description: Max Average commands per multiplexing batch per second + format: n0 + aggregate: Max + reduce: max + +- name: npgsql-counter/multiplexing-average-waits-per-batch + measurement: npgsql-counter/multiplexing-average-waits-per-batch + description: Max Average waits per multiplexing batch per second + format: n0 + aggregate: Max + reduce: max + +- name: npgsql-counter/multiplexing-average-write-time-per-batch + measurement: npgsql-counter/multiplexing-average-write-time-per-batch + description: Max Average write time per multiplexing batch (us) per second + format: n0 + aggregate: Max + reduce: max + defaultScripts: - | function max(values) { @@ -614,10 +878,6 @@ defaultScripts: return values.length; } - function count(values) { - return values.length; - } - function delta(values) { return max(values) - min(values); } diff --git a/src/Microsoft.Crank.Controller/results.json b/src/Microsoft.Crank.Controller/results.json new file mode 100644 index 000000000..9d9cd9f14 --- /dev/null +++ b/src/Microsoft.Crank.Controller/results.json @@ -0,0 +1,6186 @@ +{ + "returnCode": 0, + "jobResults": { + "jobs": { + "application": { + "results": { + "netSdkVersion": "5.0.100", + "benchmarks/build-time": 9095.0, + "benchmarks/published-size": 86753.0, + "benchmarks/start-time": 910.0, + "runtime-counter/cpu-usage": 30.0, + "runtime-counter/cpu-usage/avg": 24.0, + "runtime-counter/working-set": 90.0, + "runtime-counter/gc-heap-size": 37.0, + "runtime-counter/gen-0-gc-count": 1.0, + "runtime-counter/gen-1-gc-count": 1.0, + "runtime-counter/gen-2-gc-count": 1.0, + "runtime-counter/threadpool-thread-count": 24.0, + "runtime-counter/monitor-lock-contention-count": 46.0, + "runtime-counter/threadpool-queue-length": 92.0, + "runtime-counter/threadpool-completed-items-count": 65402.0, + "runtime-counter/alloc-rate": 32490688.0, + "runtime-counter/active-timer-count": 0.0, + "runtime-counter/gc-fragmentation": "NaN", + "runtime-counter/exception-count": 1027.0, + "runtime-counter/time-in-gc": 2.0, + "runtime-counter/gen-0-size": 192.0, + "runtime-counter/gen-1-size": 3252312.0, + "runtime-counter/loh-size": 134392.0, + "runtime-counter/assembly-count": 97.0, + "runtime-counter/il-bytes-jitted": 168507.0, + "runtime-counter/methods-jitted-count": 1928.0, + "benchmarks/working-set": 87.0, + "benchmarks/cpu": 26.0, + "benchmarks/cpu/raw": 210.13 + }, + "metadata": [ + { + "name": "benchmarks/cpu", + "description": "CPU Usage (%)", + "format": "n0" + }, + { + "name": "benchmarks/cpu/raw", + "description": "Raw CPU Usage (%)", + "format": "n2" + }, + { + "name": "benchmarks/working-set", + "description": "Working Set (MB)", + "format": "n0" + }, + { + "name": "benchmarks/build-time", + "description": "Build Time (ms)", + "format": "n0" + }, + { + "name": "benchmarks/start-time", + "description": "Start Time (ms)", + "format": "n0" + }, + { + "name": "benchmarks/published-size", + "description": "Published Size (KB)", + "format": "n0" + }, + { + "name": "benchmarks/swap", + "description": "Swap (MB)", + "format": "n0" + }, + { + "name": "netSdkVersion", + "description": ".NET Core SDK Version", + "format": "" + }, + { + "name": "runtime-counter/cpu-usage", + "description": "Max CPU Usage (%)", + "format": "n0" + }, + { + "name": "runtime-counter/cpu-usage/avg", + "description": "Avg CPU Usage (%)", + "format": "n0" + }, + { + "name": "runtime-counter/working-set", + "description": "Max Working Set (MB)", + "format": "n0" + }, + { + "name": "runtime-counter/gc-heap-size", + "description": "Max GC Heap Size (MB)", + "format": "n0" + }, + { + "name": "runtime-counter/gen-0-gc-count", + "description": "Max Number of Gen 0 GCs / min", + "format": "n2" + }, + { + "name": "runtime-counter/gen-1-gc-count", + "description": "Max Number of Gen 1 GCs / min", + "format": "n2" + }, + { + "name": "runtime-counter/gen-2-gc-count", + "description": "Max Number of Gen 2 GCs / min", + "format": "n2" + }, + { + "name": "runtime-counter/time-in-gc", + "description": "Max Time in GC (%)", + "format": "n2" + }, + { + "name": "runtime-counter/gen-0-size", + "description": "Max Gen 0 Size (B)", + "format": "n0" + }, + { + "name": "runtime-counter/gen-1-size", + "description": "Max Gen 1 Size (B)", + "format": "n0" + }, + { + "name": "runtime-counter/gen-2-size", + "description": "Max Gen 2 Size (B)", + "format": "n0" + }, + { + "name": "runtime-counter/loh-size", + "description": "Max LOH Size (B)", + "format": "n0" + }, + { + "name": "runtime-counter/poh-size", + "description": "Max POH Size (B)", + "format": "n0" + }, + { + "name": "runtime-counter/alloc-rate", + "description": "Max Allocation Rate (B/sec)", + "format": "n0" + }, + { + "name": "runtime-counter/gc-fragmentation", + "description": "Max GC Heap Fragmentation", + "format": "n0" + }, + { + "name": "runtime-counter/assembly-count", + "description": "# of Assemblies Loaded", + "format": "n0" + }, + { + "name": "runtime-counter/exception-count", + "description": "Max Exceptions (#/s)", + "format": "n0" + }, + { + "name": "runtime-counter/monitor-lock-contention-count", + "description": "Max Lock Contention (#/s)", + "format": "n0" + }, + { + "name": "runtime-counter/threadpool-thread-count", + "description": "Max ThreadPool Threads Count", + "format": "n0" + }, + { + "name": "runtime-counter/threadpool-queue-length", + "description": "Max ThreadPool Queue Length", + "format": "n0" + }, + { + "name": "runtime-counter/threadpool-completed-items-count", + "description": "Max ThreadPool Items (#/s)", + "format": "n0" + }, + { + "name": "runtime-counter/active-timer-count", + "description": "Max Active Timers", + "format": "n0" + }, + { + "name": "runtime-counter/il-bytes-jitted", + "description": "IL Jitted (B)", + "format": "n0" + }, + { + "name": "runtime-counter/methods-jitted-count", + "description": "Methods Jitted", + "format": "n0" + }, + { + "name": "kestrel-counter/connections-per-second", + "description": "Max Connections per second", + "format": null + }, + { + "name": "kestrel-counter/total-connections", + "description": "Max Connections", + "format": "n0" + }, + { + "name": "kestrel-counter/tls-handshakes-per-second", + "description": "Max TLS Handshakes per second", + "format": "n0" + }, + { + "name": "kestrel-counter/total-tls-handshakes", + "description": "Total TLS Handshakes", + "format": "n0" + }, + { + "name": "kestrel-counter/current-tls-handshakes", + "description": "Max Active TLS Handshakes", + "format": "n0" + }, + { + "name": "kestrel-counter/failed-tls-handshakes", + "description": "Total Dailed TLS Handshakes", + "format": "n0" + }, + { + "name": "kestrel-counter/current-connections", + "description": "Max Active Connections", + "format": "n0" + }, + { + "name": "kestrel-counter/connection-queue-length", + "description": "Max Connection Queue Length", + "format": "n0" + }, + { + "name": "kestrel-counter/request-queue-length", + "description": "Max Request Queue Length", + "format": "n0" + }, + { + "name": "kestrel-counter/current-upgraded-requests", + "description": "Max Active Upgraded Requests (WebSockets)", + "format": "n0" + }, + { + "name": "aspnet-counter/requests-per-second", + "description": "Max Requests per second", + "format": "n0" + }, + { + "name": "aspnet-counter/total-requests", + "description": "Total Requests", + "format": "n0" + }, + { + "name": "aspnet-counter/current-requests", + "description": "Max Active Requests", + "format": "n0" + }, + { + "name": "aspnet-counter/failed-requests", + "description": "Failed Requests", + "format": "n0" + }, + { + "name": "system-net-http-counter/requests-started", + "description": "Total Requests Started", + "format": "n0" + }, + { + "name": "system-net-http-counter/requests-started-rate", + "description": "Max Requests Started per second", + "format": "n0" + }, + { + "name": "system-net-http-counter/requests-aborted", + "description": "Total Requests Aborted", + "format": "n0" + }, + { + "name": "system-net-http-counter/requests-aborted-rate", + "description": "Max Requests Aborted per second", + "format": "n0" + }, + { + "name": "system-net-http-counter/current-requests", + "description": "Max Active Requests", + "format": "n0" + }, + { + "name": "signalr-counter/connections-started", + "description": "Total Connections Started", + "format": "n0" + }, + { + "name": "signalr-counter/connections-stopped", + "description": "Total Connections Stopped", + "format": "n0" + }, + { + "name": "signalr-counter/connections-timed-out", + "description": "Total Connections Timed Out", + "format": "n0" + }, + { + "name": "signalr-counter/current-connections", + "description": "Max Active Connections", + "format": "n0" + }, + { + "name": "signalr-counter/connections-duration", + "description": "Max Average Connection Duration per second (ms)", + "format": "n0" + }, + { + "name": "grpc-server-counter/total-calls", + "description": "Total Calls", + "format": "n0" + }, + { + "name": "grpc-server-counter/current-calls", + "description": "Max Active Calls", + "format": "n0" + }, + { + "name": "grpc-server-counter/calls-failed", + "description": "Total Calls Failed", + "format": "n0" + }, + { + "name": "grpc-server-counter/calls-deadline-exceeded", + "description": "Total Calls Deadline Exceeded", + "format": "n0" + }, + { + "name": "grpc-server-counter/messages-sent", + "description": "Total Messages Sent", + "format": "n0" + }, + { + "name": "grpc-server-counter/messages-received", + "description": "Total Messages Received", + "format": "n0" + }, + { + "name": "grpc-server-counter/calls-unimplemented", + "description": "Total Calls Unimplemented", + "format": "n0" + }, + { + "name": "grpc-client-counter/total-calls", + "description": "Total Calls", + "format": "n0" + }, + { + "name": "grpc-client-counter/current-calls", + "description": "Max Active Calls", + "format": "n0" + }, + { + "name": "grpc-client-counter/calls-failed", + "description": "Total Calls Failed", + "format": "n0" + }, + { + "name": "grpc-client-counter/calls-deadline-exceeded", + "description": "Total Calls Deadline Exceeded", + "format": "n0" + }, + { + "name": "grpc-client-counter/messages-sent", + "description": "Total Messages Sent", + "format": "n0" + }, + { + "name": "grpc-client-counter/messages-received", + "description": "Total Messages Received", + "format": "n0" + }, + { + "name": "npgsql-counter/bytes-written-per-second", + "description": "Total Bytes Written", + "format": "n0" + }, + { + "name": "npgsql-counter/bytes-read-per-second", + "description": "Total Bytes Read", + "format": "n0" + }, + { + "name": "npgsql-counter/commands-per-second", + "description": "Max Command Rate", + "format": "n0" + }, + { + "name": "npgsql-counter/total-commands", + "description": "Total Commands", + "format": "n0" + }, + { + "name": "npgsql-counter/current-commands", + "description": "Max Active Commands per second", + "format": "n0" + }, + { + "name": "npgsql-counter/failed-commands", + "description": "Total Failed Commands", + "format": "n0" + }, + { + "name": "npgsql-counter/prepared-commands-ratio", + "description": "Max Prepared Commands Ratio", + "format": "n0" + }, + { + "name": "npgsql-counter/connection-pools", + "description": "Max Connection Pools", + "format": "n0" + }, + { + "name": "npgsql-counter/idle-connections", + "description": "Max Idle Connections", + "format": "n0" + }, + { + "name": "npgsql-counter/busy-connections", + "description": "Max Busy Connections", + "format": "n0" + }, + { + "name": "npgsql-counter/multiplexing-average-commands-per-batch", + "description": "Max Average commands per multiplexing batch per second", + "format": "n0" + }, + { + "name": "npgsql-counter/multiplexing-average-waits-per-batch", + "description": "Max Average waits per multiplexing batch per second", + "format": "n0" + }, + { + "name": "npgsql-counter/multiplexing-average-write-time-per-batch", + "description": "Max Average write time per multiplexing batch (us) per second", + "format": "n0" + } + ], + "measurements": [ + [ + { + "timestamp": "2020-11-23T19:24:15.3140295Z", + "name": "netSdkVersion", + "value": "5.0.100" + }, + { + "timestamp": "2020-11-23T19:24:24.4106943Z", + "name": "benchmarks/build-time", + "value": 9095 + }, + { + "timestamp": "2020-11-23T19:24:24.4149982Z", + "name": "benchmarks/published-size", + "value": 86753 + }, + { + "timestamp": "2020-11-23T19:24:25.3268071Z", + "name": "benchmarks/start-time", + "value": 910 + }, + { + "timestamp": "2020-11-23T11:24:25.6966746-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6968363-08:00", + "name": "runtime-counter/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6968986-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6974933-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6975197-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6975297-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6975467-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6975773-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6976237-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6976446-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 13.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6976587-08:00", + "name": "runtime-counter/alloc-rate", + "value": 1204832.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6977912-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6979049-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:25.6979205-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6979395-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6979513-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6979609-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6979781-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6979876-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6980082-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6980396-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 29587.0 + }, + { + "timestamp": "2020-11-23T11:24:25.6980528-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 300.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6928678-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:26.9598472Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:26.9598472Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:26.9598472Z", + "name": "benchmarks/cpu/raw", + "value": 1.56 + }, + { + "timestamp": "2020-11-23T19:24:27.9714661Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:27.9714661Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:27.9714661Z", + "name": "benchmarks/cpu/raw", + "value": 1.54 + }, + { + "timestamp": "2020-11-23T11:24:26.6929343-08:00", + "name": "runtime-counter/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6929528-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6929693-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6929947-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6930047-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6930309-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6930462-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6930918-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6931055-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6931182-08:00", + "name": "runtime-counter/alloc-rate", + "value": 16336.0 + }, + { + "timestamp": "2020-11-23T11:24:26.693134-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6931465-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:26.6931675-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6931811-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:26.693191-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6932008-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6932196-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6932292-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6932405-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6932508-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 37326.0 + }, + { + "timestamp": "2020-11-23T11:24:26.6932671-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 369.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7073885-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.70744-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7074592-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7075682-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7075997-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7076107-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7077116-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7077412-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7077718-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7077874-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7078029-08:00", + "name": "runtime-counter/alloc-rate", + "value": 8168.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7078181-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7078342-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:27.7078478-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.707862-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7078758-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7078941-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7079235-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7079378-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7079642-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7079814-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 39717.0 + }, + { + "timestamp": "2020-11-23T11:24:27.7079985-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 393.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7037042-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:28.9888287Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:28.9888287Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:28.9888287Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:30.0016499Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:30.0016499Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:30.0016499Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7037323-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7037571-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7037719-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7037787-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7037847-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7037912-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038013-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038174-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038249-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038312-08:00", + "name": "runtime-counter/alloc-rate", + "value": 8168.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038384-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038458-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:28.7038516-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038576-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038632-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038687-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038802-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038858-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038918-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7038975-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 42378.0 + }, + { + "timestamp": "2020-11-23T11:24:28.7039031-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 430.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7045164-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:31.0254126Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:31.0254126Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:31.0254126Z", + "name": "benchmarks/cpu/raw", + "value": 1.53 + }, + { + "timestamp": "2020-11-23T11:24:29.7045411-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7045534-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7045685-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7045753-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7045818-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7045888-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7045991-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7046103-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7046239-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7046392-08:00", + "name": "runtime-counter/alloc-rate", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7046498-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7046603-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:29.7046782-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7046894-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7046997-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7047094-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7047251-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7047313-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7047381-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7047444-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 42378.0 + }, + { + "timestamp": "2020-11-23T11:24:29.7047505-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 430.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6986247-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:32.0381939Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:32.0381939Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:32.0381939Z", + "name": "benchmarks/cpu/raw", + "value": 1.54 + }, + { + "timestamp": "2020-11-23T11:24:30.698691-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6987171-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:30.69874-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6987864-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6988012-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6988165-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:30.698836-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6988549-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:30.698871-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6988866-08:00", + "name": "runtime-counter/alloc-rate", + "value": 16336.0 + }, + { + "timestamp": "2020-11-23T11:24:30.698902-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6989181-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:30.6989324-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6989465-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6989603-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6989733-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6990001-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:30.699013-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6990265-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6990392-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 42518.0 + }, + { + "timestamp": "2020-11-23T11:24:30.6990526-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 432.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6938535-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:33.0490991Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:33.0490991Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:33.0490991Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6938993-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6939186-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6939545-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.69397-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6939869-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6940043-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6940243-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.694043-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6940549-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T11:24:31.694065-08:00", + "name": "runtime-counter/alloc-rate", + "value": 8168.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6940756-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6940904-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:31.6941036-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6941172-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6941304-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6941409-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6941581-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6941667-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6941753-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6941838-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 43754.0 + }, + { + "timestamp": "2020-11-23T11:24:31.6942026-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 448.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7051832-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:34.0631957Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:34.0631957Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:34.0631957Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7052148-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7052318-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7052485-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7052599-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7052708-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7052827-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7052979-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7053129-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7053251-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7053373-08:00", + "name": "runtime-counter/alloc-rate", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7053499-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7053627-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:32.7053739-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.705396-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7054078-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7054185-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7054407-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7054519-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7054632-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7054745-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 43811.0 + }, + { + "timestamp": "2020-11-23T11:24:32.7054859-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 449.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7034603-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:35.0756381Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:35.0756381Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:35.0756381Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7035036-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:33.703527-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7035459-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7035584-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7035699-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7035833-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7035999-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7036162-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7036318-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7036514-08:00", + "name": "runtime-counter/alloc-rate", + "value": 8168.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7036656-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7036788-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:33.7036898-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7037012-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7037127-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7037242-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7037466-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.703758-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7037699-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7037821-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 43843.0 + }, + { + "timestamp": "2020-11-23T11:24:33.7037938-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 450.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7056905-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:36.0853169Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:36.0853169Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:36.0853169Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7061852-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7063553-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:34.706399-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7067799-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.706862-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7068906-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7069073-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.70692-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7069288-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7069378-08:00", + "name": "runtime-counter/alloc-rate", + "value": 8168.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7069505-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7069602-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:34.7069807-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7069902-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7070018-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7070126-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7070481-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7070614-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7070698-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7070792-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 43843.0 + }, + { + "timestamp": "2020-11-23T11:24:34.7071042-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 450.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6989266-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:37.1001939Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:37.1001939Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:37.1001939Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6990371-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6991243-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6991704-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6992156-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6992363-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6992501-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6992657-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6992841-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6993927-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6994279-08:00", + "name": "runtime-counter/alloc-rate", + "value": 8168.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6994447-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.6994584-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:35.6999539-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.7000515-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.7000891-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.7001009-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.7001213-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.700207-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:35.7002275-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:35.7002391-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 44006.0 + }, + { + "timestamp": "2020-11-23T11:24:35.7002658-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 454.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7066043-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:38.1086551Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:38.1086551Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:38.1086551Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7066615-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7066857-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:36.706704-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7067165-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7067282-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7067412-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7067571-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7067735-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7067859-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7067985-08:00", + "name": "runtime-counter/alloc-rate", + "value": 8168.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7068121-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7068257-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:36.7068371-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7068489-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7068602-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7068717-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7068947-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.706906-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7069179-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7069293-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 44065.0 + }, + { + "timestamp": "2020-11-23T11:24:36.7069404-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 455.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7034647-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:39.1223058Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:39.1223058Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:39.1223058Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7035104-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7035311-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7035853-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7036066-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7036317-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7036463-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7036637-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7036809-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7036944-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7037072-08:00", + "name": "runtime-counter/alloc-rate", + "value": 8168.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7037216-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.703736-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:37.7037484-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7037612-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7037741-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7037862-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7038101-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7038232-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7038353-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7038477-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 44065.0 + }, + { + "timestamp": "2020-11-23T11:24:37.7038725-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 455.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7010549-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:40.1381149Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:40.1381149Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:40.1381149Z", + "name": "benchmarks/cpu/raw", + "value": 1.54 + }, + { + "timestamp": "2020-11-23T11:24:38.7010951-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7011137-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7011288-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7011401-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7011509-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7011621-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7011774-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7011917-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.701203-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.701214-08:00", + "name": "runtime-counter/alloc-rate", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7012269-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.70124-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:38.7012497-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7012603-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7012707-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7012925-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7013154-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.701324-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7013318-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7013389-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 44065.0 + }, + { + "timestamp": "2020-11-23T11:24:38.7013455-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 455.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6972919-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:41.1487023Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:41.1487023Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:41.1487023Z", + "name": "benchmarks/cpu/raw", + "value": 1.55 + }, + { + "timestamp": "2020-11-23T11:24:39.6973442-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6973647-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6973812-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.697393-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6974037-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6974152-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6974302-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6974447-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.697456-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6974669-08:00", + "name": "runtime-counter/alloc-rate", + "value": 8168.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6974759-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6974845-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:39.6974914-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6974984-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6975053-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6975121-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6975258-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6975326-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6975395-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6975462-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 44065.0 + }, + { + "timestamp": "2020-11-23T11:24:39.6975531-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 455.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6932828-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:42.1705338Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T19:24:42.1705338Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:42.1705338Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6933634-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6933859-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6934051-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6934166-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6934496-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6934622-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6934806-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.693498-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6935116-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6935275-08:00", + "name": "runtime-counter/alloc-rate", + "value": 16336.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6935424-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6935554-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:40.6935673-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.693579-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6935886-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.693596-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6936112-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6936184-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6936264-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6936338-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 44628.0 + }, + { + "timestamp": "2020-11-23T11:24:40.6936412-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 464.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7045169-08:00", + "name": "runtime-counter/cpu-usage", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:43.1898881Z", + "name": "benchmarks/working-set", + "value": 59.0 + }, + { + "timestamp": "2020-11-23T19:24:43.1898881Z", + "name": "benchmarks/cpu", + "value": 24.0 + }, + { + "timestamp": "2020-11-23T19:24:43.1898881Z", + "name": "benchmarks/cpu/raw", + "value": 193.14 + }, + { + "timestamp": "2020-11-23T11:24:41.7045693-08:00", + "name": "runtime-counter/working-set", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7045963-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7046142-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7046253-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7046331-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7046418-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7046539-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7046656-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7046744-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7046823-08:00", + "name": "runtime-counter/alloc-rate", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7046912-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7047002-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:41.7047076-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7047166-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7047277-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7047388-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7047639-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7047713-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7047789-08:00", + "name": "runtime-counter/assembly-count", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7047862-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 44628.0 + }, + { + "timestamp": "2020-11-23T11:24:41.7047933-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 464.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0642395-08:00", + "name": "runtime-counter/cpu-usage", + "value": 8.0 + }, + { + "timestamp": "2020-11-23T19:24:44.2755475Z", + "name": "benchmarks/working-set", + "value": 74.0 + }, + { + "timestamp": "2020-11-23T19:24:44.2755475Z", + "name": "benchmarks/cpu", + "value": 26.0 + }, + { + "timestamp": "2020-11-23T19:24:44.2755475Z", + "name": "benchmarks/cpu/raw", + "value": 210.13 + }, + { + "timestamp": "2020-11-23T11:24:43.0649084-08:00", + "name": "runtime-counter/working-set", + "value": 58.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0650387-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 17.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0650575-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0650685-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0653228-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0653635-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 17.0 + }, + { + "timestamp": "2020-11-23T11:24:43.06539-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0661084-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 92.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0661425-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 23306.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0661567-08:00", + "name": "runtime-counter/alloc-rate", + "value": 16073000.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0661751-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.066189-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": "NaN" + }, + { + "timestamp": "2020-11-23T11:24:43.0662008-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0662131-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0662353-08:00", + "name": "runtime-counter/gen-0-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0662467-08:00", + "name": "runtime-counter/gen-1-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0662708-08:00", + "name": "runtime-counter/loh-size", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0662821-08:00", + "name": "runtime-counter/", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.066294-08:00", + "name": "runtime-counter/assembly-count", + "value": 93.0 + }, + { + "timestamp": "2020-11-23T11:24:43.0663056-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 92226.0 + }, + { + "timestamp": "2020-11-23T11:24:43.066317-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1033.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9735385-08:00", + "name": "runtime-counter/cpu-usage", + "value": 30.0 + }, + { + "timestamp": "2020-11-23T19:24:45.3270379Z", + "name": "benchmarks/working-set", + "value": 82.0 + }, + { + "timestamp": "2020-11-23T19:24:45.3270379Z", + "name": "benchmarks/cpu", + "value": 19.0 + }, + { + "timestamp": "2020-11-23T19:24:45.3270379Z", + "name": "benchmarks/cpu/raw", + "value": 153.06 + }, + { + "timestamp": "2020-11-23T11:24:43.9736034-08:00", + "name": "runtime-counter/working-set", + "value": 76.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9736312-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 10.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9736493-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:43.973663-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9736755-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9736879-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 24.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9737079-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9737393-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9737542-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 41833.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9737664-08:00", + "name": "runtime-counter/alloc-rate", + "value": 21909208.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9737806-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9737939-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.01784203264915321 + }, + { + "timestamp": "2020-11-23T11:24:43.9738055-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9738188-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9738344-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9738482-08:00", + "name": "runtime-counter/gen-1-size", + "value": 3213800.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9738701-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9738804-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9738913-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9739024-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 128392.0 + }, + { + "timestamp": "2020-11-23T11:24:43.9739151-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1394.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7604364-08:00", + "name": "runtime-counter/cpu-usage", + "value": 23.0 + }, + { + "timestamp": "2020-11-23T19:24:46.4034087Z", + "name": "benchmarks/working-set", + "value": 82.0 + }, + { + "timestamp": "2020-11-23T19:24:46.4034087Z", + "name": "benchmarks/cpu", + "value": 18.0 + }, + { + "timestamp": "2020-11-23T19:24:46.4034087Z", + "name": "benchmarks/cpu/raw", + "value": 146.62 + }, + { + "timestamp": "2020-11-23T11:24:44.7605117-08:00", + "name": "runtime-counter/working-set", + "value": 80.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7605336-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 32.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7605514-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7605641-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7606479-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7606699-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7606914-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7607314-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 3.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7607572-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 43323.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7607813-08:00", + "name": "runtime-counter/alloc-rate", + "value": 22124560.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7608069-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7608229-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.01784203264915321 + }, + { + "timestamp": "2020-11-23T11:24:44.7608456-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7608887-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7609391-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7611783-08:00", + "name": "runtime-counter/gen-1-size", + "value": 3213800.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7612964-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7613446-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7614037-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7614644-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 131993.0 + }, + { + "timestamp": "2020-11-23T11:24:44.7615-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1465.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8662929-08:00", + "name": "runtime-counter/cpu-usage", + "value": 19.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8665736-08:00", + "name": "runtime-counter/working-set", + "value": 85.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8666028-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 27.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8666215-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8666342-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8666474-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8666602-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 23.0 + }, + { + "timestamp": "2020-11-23T11:24:45.86668-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:45.866698-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8667113-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 65402.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8667242-08:00", + "name": "runtime-counter/alloc-rate", + "value": 32490688.0 + }, + { + "timestamp": "2020-11-23T11:24:45.866739-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8667642-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.026128920448990837 + }, + { + "timestamp": "2020-11-23T11:24:45.8667765-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8667891-08:00", + "name": "runtime-counter/time-in-gc", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8668118-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8668236-08:00", + "name": "runtime-counter/gen-1-size", + "value": 11728.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8668482-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:45.866867-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8668788-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8668914-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 132480.0 + }, + { + "timestamp": "2020-11-23T11:24:45.8669035-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1467.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7184035-08:00", + "name": "runtime-counter/cpu-usage", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:24:47.4193226Z", + "name": "benchmarks/working-set", + "value": 84.0 + }, + { + "timestamp": "2020-11-23T19:24:47.4193226Z", + "name": "benchmarks/cpu", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T19:24:47.4193226Z", + "name": "benchmarks/cpu/raw", + "value": 164.57 + }, + { + "timestamp": "2020-11-23T11:24:46.7184798-08:00", + "name": "runtime-counter/working-set", + "value": 85.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7185039-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 25.0 + }, + { + "timestamp": "2020-11-23T11:24:46.718531-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7185471-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7185622-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7185813-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 23.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7186191-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7186577-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 7.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7186837-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 54731.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7187111-08:00", + "name": "runtime-counter/alloc-rate", + "value": 27081496.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7187429-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7187808-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.026118057171894127 + }, + { + "timestamp": "2020-11-23T11:24:46.7188172-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7188565-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7188851-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7189145-08:00", + "name": "runtime-counter/gen-1-size", + "value": 13600.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7189638-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:46.718978-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:46.718996-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:46.719018-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 132480.0 + }, + { + "timestamp": "2020-11-23T11:24:46.7190425-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1467.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7632064-08:00", + "name": "runtime-counter/cpu-usage", + "value": 15.0 + }, + { + "timestamp": "2020-11-23T19:24:48.4393044Z", + "name": "benchmarks/working-set", + "value": 85.0 + }, + { + "timestamp": "2020-11-23T19:24:48.4393044Z", + "name": "benchmarks/cpu", + "value": 20.0 + }, + { + "timestamp": "2020-11-23T19:24:48.4393044Z", + "name": "benchmarks/cpu/raw", + "value": 163.91 + }, + { + "timestamp": "2020-11-23T19:24:49.4683621Z", + "name": "benchmarks/working-set", + "value": 86.0 + }, + { + "timestamp": "2020-11-23T19:24:49.4683621Z", + "name": "benchmarks/cpu", + "value": 26.0 + }, + { + "timestamp": "2020-11-23T19:24:49.4683621Z", + "name": "benchmarks/cpu/raw", + "value": 204.98 + }, + { + "timestamp": "2020-11-23T11:24:47.7632461-08:00", + "name": "runtime-counter/working-set", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7632653-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 14.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7632826-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7632953-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7633071-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7633198-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 23.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7633387-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 31.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7633571-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7633712-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 40706.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7633844-08:00", + "name": "runtime-counter/alloc-rate", + "value": 23774592.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7634-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7634145-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.0261101243339254 + }, + { + "timestamp": "2020-11-23T11:24:47.7634271-08:00", + "name": "runtime-counter/exception-count", + "value": 1020.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7634405-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7634527-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7634645-08:00", + "name": "runtime-counter/gen-1-size", + "value": 14968.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7634876-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7634988-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7635108-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7635237-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 140798.0 + }, + { + "timestamp": "2020-11-23T11:24:47.7635357-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1541.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8653984-08:00", + "name": "runtime-counter/cpu-usage", + "value": 24.0 + }, + { + "timestamp": "2020-11-23T19:24:50.5275731Z", + "name": "benchmarks/working-set", + "value": 85.0 + }, + { + "timestamp": "2020-11-23T19:24:50.5275731Z", + "name": "benchmarks/cpu", + "value": 20.0 + }, + { + "timestamp": "2020-11-23T19:24:50.5275731Z", + "name": "benchmarks/cpu/raw", + "value": 156.37 + }, + { + "timestamp": "2020-11-23T11:24:48.8654571-08:00", + "name": "runtime-counter/working-set", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8654814-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 13.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8655042-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8655486-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8655665-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8655838-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8656192-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:48.865782-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8658184-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 63425.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8658607-08:00", + "name": "runtime-counter/alloc-rate", + "value": 32384408.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8658961-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8659138-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.015193547186816548 + }, + { + "timestamp": "2020-11-23T11:24:48.865938-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8660556-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8663127-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8663381-08:00", + "name": "runtime-counter/gen-1-size", + "value": 3251096.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8663615-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8663732-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8663845-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8663961-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 153343.0 + }, + { + "timestamp": "2020-11-23T11:24:48.8664084-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1711.0 + }, + { + "timestamp": "2020-11-23T11:24:49.792581-08:00", + "name": "runtime-counter/cpu-usage", + "value": 23.0 + }, + { + "timestamp": "2020-11-23T19:24:51.5372546Z", + "name": "benchmarks/working-set", + "value": 85.0 + }, + { + "timestamp": "2020-11-23T19:24:51.5372546Z", + "name": "benchmarks/cpu", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T19:24:51.5372546Z", + "name": "benchmarks/cpu/raw", + "value": 167.13 + }, + { + "timestamp": "2020-11-23T11:24:49.7926364-08:00", + "name": "runtime-counter/working-set", + "value": 89.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7931179-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 18.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7932195-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7937228-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7940717-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7941035-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7941438-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7941641-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 8.0 + }, + { + "timestamp": "2020-11-23T11:24:49.79419-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 61632.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7942034-08:00", + "name": "runtime-counter/alloc-rate", + "value": 29364144.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7942179-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7942329-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.015191160604670196 + }, + { + "timestamp": "2020-11-23T11:24:49.794245-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:49.794258-08:00", + "name": "runtime-counter/time-in-gc", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7942842-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7942959-08:00", + "name": "runtime-counter/gen-1-size", + "value": 3252312.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7945972-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:49.794712-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7947555-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7947717-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 153343.0 + }, + { + "timestamp": "2020-11-23T11:24:49.7947862-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1711.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7965702-08:00", + "name": "runtime-counter/cpu-usage", + "value": 20.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7968419-08:00", + "name": "runtime-counter/working-set", + "value": 89.0 + }, + { + "timestamp": "2020-11-23T11:24:50.796884-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 15.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7969022-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7969139-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7976895-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7977191-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7977406-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7977582-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7977714-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 62425.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7977838-08:00", + "name": "runtime-counter/alloc-rate", + "value": 30222680.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7977974-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7978109-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.0351266146769234 + }, + { + "timestamp": "2020-11-23T11:24:50.7978218-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7978347-08:00", + "name": "runtime-counter/time-in-gc", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7978464-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7978584-08:00", + "name": "runtime-counter/gen-1-size", + "value": 1584.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7978841-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7978955-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7979077-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7979197-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 153343.0 + }, + { + "timestamp": "2020-11-23T11:24:50.7979319-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1711.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7104222-08:00", + "name": "runtime-counter/cpu-usage", + "value": 24.0 + }, + { + "timestamp": "2020-11-23T19:24:52.5931636Z", + "name": "benchmarks/working-set", + "value": 86.0 + }, + { + "timestamp": "2020-11-23T19:24:52.5931636Z", + "name": "benchmarks/cpu", + "value": 24.0 + }, + { + "timestamp": "2020-11-23T19:24:52.5931636Z", + "name": "benchmarks/cpu/raw", + "value": 189.41 + }, + { + "timestamp": "2020-11-23T19:24:53.6512224Z", + "name": "benchmarks/working-set", + "value": 86.0 + }, + { + "timestamp": "2020-11-23T19:24:53.6512224Z", + "name": "benchmarks/cpu", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T19:24:53.6512224Z", + "name": "benchmarks/cpu/raw", + "value": 171.3 + }, + { + "timestamp": "2020-11-23T11:24:51.7104824-08:00", + "name": "runtime-counter/working-set", + "value": 89.0 + }, + { + "timestamp": "2020-11-23T11:24:51.710505-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 14.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7105249-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7105413-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7105572-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:51.710577-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7106081-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7106422-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7106746-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 59061.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7107104-08:00", + "name": "runtime-counter/alloc-rate", + "value": 29060136.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7107474-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7107841-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.03510913825590504 + }, + { + "timestamp": "2020-11-23T11:24:51.710824-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:51.710866-08:00", + "name": "runtime-counter/time-in-gc", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7109037-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7109468-08:00", + "name": "runtime-counter/gen-1-size", + "value": 3840.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7110173-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7110493-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7110844-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7111253-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 153343.0 + }, + { + "timestamp": "2020-11-23T11:24:51.7111616-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1711.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7138615-08:00", + "name": "runtime-counter/cpu-usage", + "value": 20.0 + }, + { + "timestamp": "2020-11-23T19:24:54.6851122Z", + "name": "benchmarks/working-set", + "value": 86.0 + }, + { + "timestamp": "2020-11-23T19:24:54.6851122Z", + "name": "benchmarks/cpu", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:24:54.6851122Z", + "name": "benchmarks/cpu/raw", + "value": 172.29 + }, + { + "timestamp": "2020-11-23T11:24:52.7138984-08:00", + "name": "runtime-counter/working-set", + "value": 89.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7139159-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7139505-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:52.713964-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7139765-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7139898-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7140071-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7140392-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 51.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7140529-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 55880.0 + }, + { + "timestamp": "2020-11-23T11:24:52.714066-08:00", + "name": "runtime-counter/alloc-rate", + "value": 28355832.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7140805-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7140974-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.035089451652378145 + }, + { + "timestamp": "2020-11-23T11:24:52.7141097-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7141224-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7141352-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7141472-08:00", + "name": "runtime-counter/gen-1-size", + "value": 6384.0 + }, + { + "timestamp": "2020-11-23T11:24:52.714172-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:52.714184-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7141964-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7142089-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 153343.0 + }, + { + "timestamp": "2020-11-23T11:24:52.7142211-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1711.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7400927-08:00", + "name": "runtime-counter/cpu-usage", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T19:24:55.742101Z", + "name": "benchmarks/working-set", + "value": 86.0 + }, + { + "timestamp": "2020-11-23T19:24:55.742101Z", + "name": "benchmarks/cpu", + "value": 20.0 + }, + { + "timestamp": "2020-11-23T19:24:55.742101Z", + "name": "benchmarks/cpu/raw", + "value": 156.7 + }, + { + "timestamp": "2020-11-23T11:24:53.7401391-08:00", + "name": "runtime-counter/working-set", + "value": 89.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7401603-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 34.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7401808-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7401957-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7402099-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7402249-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T11:24:53.740247-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:53.740267-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 3.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7402838-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 58300.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7402986-08:00", + "name": "runtime-counter/alloc-rate", + "value": 29621112.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7403146-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7403337-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.035089451652378145 + }, + { + "timestamp": "2020-11-23T11:24:53.740349-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7403712-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7403871-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7404026-08:00", + "name": "runtime-counter/gen-1-size", + "value": 6384.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7404311-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7404456-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7404607-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7404752-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 153404.0 + }, + { + "timestamp": "2020-11-23T11:24:53.7404897-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1712.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7409295-08:00", + "name": "runtime-counter/cpu-usage", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T19:24:56.7775447Z", + "name": "benchmarks/working-set", + "value": 86.0 + }, + { + "timestamp": "2020-11-23T19:24:56.7775447Z", + "name": "benchmarks/cpu", + "value": 18.0 + }, + { + "timestamp": "2020-11-23T19:24:56.7775447Z", + "name": "benchmarks/cpu/raw", + "value": 141.85 + }, + { + "timestamp": "2020-11-23T11:24:54.7410646-08:00", + "name": "runtime-counter/working-set", + "value": 90.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7411641-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 24.0 + }, + { + "timestamp": "2020-11-23T11:24:54.741196-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7412227-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7412463-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7412738-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7413062-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7413247-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 14.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7414237-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 58760.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7415301-08:00", + "name": "runtime-counter/alloc-rate", + "value": 29598208.0 + }, + { + "timestamp": "2020-11-23T11:24:54.741608-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7416534-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.03507213580494958 + }, + { + "timestamp": "2020-11-23T11:24:54.7416876-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7417308-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7417646-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7417957-08:00", + "name": "runtime-counter/gen-1-size", + "value": 8624.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7418314-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7418442-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7418564-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7418691-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 153404.0 + }, + { + "timestamp": "2020-11-23T11:24:54.7418811-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1712.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8184292-08:00", + "name": "runtime-counter/cpu-usage", + "value": 19.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8185152-08:00", + "name": "runtime-counter/working-set", + "value": 90.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8185405-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 19.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8185784-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8185931-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:55.818617-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8186522-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8187041-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8187463-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 6.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8187633-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 64097.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8187774-08:00", + "name": "runtime-counter/alloc-rate", + "value": 31963032.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8188157-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8188525-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.03505119411844485 + }, + { + "timestamp": "2020-11-23T11:24:55.8188872-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8189118-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8189253-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8189484-08:00", + "name": "runtime-counter/gen-1-size", + "value": 11336.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8189849-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8189988-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8190121-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:55.819025-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 155452.0 + }, + { + "timestamp": "2020-11-23T11:24:55.8190375-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1739.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0772048-08:00", + "name": "runtime-counter/cpu-usage", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T19:24:57.866852Z", + "name": "benchmarks/working-set", + "value": 86.0 + }, + { + "timestamp": "2020-11-23T19:24:57.866852Z", + "name": "benchmarks/cpu", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:24:57.866852Z", + "name": "benchmarks/cpu/raw", + "value": 176.43 + }, + { + "timestamp": "2020-11-23T11:24:57.0772547-08:00", + "name": "runtime-counter/working-set", + "value": 90.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0772757-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 14.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0772929-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0773125-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0773241-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0773366-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 18.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0773561-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0773817-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 92.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0773956-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 53924.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0774082-08:00", + "name": "runtime-counter/alloc-rate", + "value": 27630672.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0774211-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0774349-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.03500883137354247 + }, + { + "timestamp": "2020-11-23T11:24:57.0774464-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0774588-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0775232-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0775375-08:00", + "name": "runtime-counter/gen-1-size", + "value": 16832.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0775603-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0775724-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0775841-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0775958-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 156693.0 + }, + { + "timestamp": "2020-11-23T11:24:57.0776073-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1769.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1151559-08:00", + "name": "runtime-counter/cpu-usage", + "value": 20.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1152505-08:00", + "name": "runtime-counter/working-set", + "value": 90.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1152938-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 37.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1153295-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1153434-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1153558-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1153759-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1153999-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1154187-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1154313-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 43414.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1154427-08:00", + "name": "runtime-counter/alloc-rate", + "value": 22683000.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1154599-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1154721-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.03500883137354247 + }, + { + "timestamp": "2020-11-23T11:24:58.115483-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1154939-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1155044-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1155145-08:00", + "name": "runtime-counter/gen-1-size", + "value": 16832.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1155346-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:58.115545-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1155561-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:58.1155678-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 156693.0 + }, + { + "timestamp": "2020-11-23T11:24:58.11558-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1769.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0309104-08:00", + "name": "runtime-counter/cpu-usage", + "value": 25.0 + }, + { + "timestamp": "2020-11-23T19:25:00.9327372Z", + "name": "benchmarks/working-set", + "value": 87.0 + }, + { + "timestamp": "2020-11-23T19:25:00.9327372Z", + "name": "benchmarks/cpu", + "value": 20.0 + }, + { + "timestamp": "2020-11-23T19:25:00.9327372Z", + "name": "benchmarks/cpu/raw", + "value": 162.58 + }, + { + "timestamp": "2020-11-23T11:24:59.0315515-08:00", + "name": "runtime-counter/working-set", + "value": 90.0 + }, + { + "timestamp": "2020-11-23T11:24:59.031606-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 29.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0316394-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0316744-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0316869-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0317007-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0317498-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0317792-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 6.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0318075-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 56403.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0318198-08:00", + "name": "runtime-counter/alloc-rate", + "value": 27303088.0 + }, + { + "timestamp": "2020-11-23T11:24:59.031834-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0318683-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.03500507485632967 + }, + { + "timestamp": "2020-11-23T11:24:59.0318963-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:59.031965-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0319853-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0319974-08:00", + "name": "runtime-counter/gen-1-size", + "value": 17320.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0320492-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0320726-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:24:59.032085-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0320966-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 156693.0 + }, + { + "timestamp": "2020-11-23T11:24:59.0321083-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1769.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0323842-08:00", + "name": "runtime-counter/cpu-usage", + "value": 19.0 + }, + { + "timestamp": "2020-11-23T19:25:01.9576334Z", + "name": "benchmarks/working-set", + "value": 87.0 + }, + { + "timestamp": "2020-11-23T19:25:01.9576334Z", + "name": "benchmarks/cpu", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T19:25:01.9576334Z", + "name": "benchmarks/cpu/raw", + "value": 129.59 + }, + { + "timestamp": "2020-11-23T11:25:00.0324472-08:00", + "name": "runtime-counter/working-set", + "value": 90.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0324705-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 27.0 + }, + { + "timestamp": "2020-11-23T11:25:00.032499-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0325144-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0325293-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0325453-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0325681-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0325873-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0326057-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 51475.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0327028-08:00", + "name": "runtime-counter/alloc-rate", + "value": 25786256.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0327164-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0327298-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.034998549055127115 + }, + { + "timestamp": "2020-11-23T11:25:00.0327417-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0327539-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0327659-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0327775-08:00", + "name": "runtime-counter/gen-1-size", + "value": 18168.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0328-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:25:00.032812-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0328238-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0328358-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 156693.0 + }, + { + "timestamp": "2020-11-23T11:25:00.0328473-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1769.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8560672-08:00", + "name": "runtime-counter/cpu-usage", + "value": 20.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8561039-08:00", + "name": "runtime-counter/working-set", + "value": 90.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8561207-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 23.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8561362-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8561471-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8561582-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8561694-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 20.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8561861-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8561985-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 4.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8562097-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 38809.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8562202-08:00", + "name": "runtime-counter/alloc-rate", + "value": 19966664.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8562315-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8562432-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.0349818762239262 + }, + { + "timestamp": "2020-11-23T11:25:00.8562534-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8562638-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8562741-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8562839-08:00", + "name": "runtime-counter/gen-1-size", + "value": 20336.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8563052-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8563156-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8563268-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8563372-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 156693.0 + }, + { + "timestamp": "2020-11-23T11:25:00.8563479-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1769.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8587888-08:00", + "name": "runtime-counter/cpu-usage", + "value": 17.0 + }, + { + "timestamp": "2020-11-23T19:25:02.9821936Z", + "name": "benchmarks/working-set", + "value": 87.0 + }, + { + "timestamp": "2020-11-23T19:25:02.9821936Z", + "name": "benchmarks/cpu", + "value": 18.0 + }, + { + "timestamp": "2020-11-23T19:25:02.9821936Z", + "name": "benchmarks/cpu/raw", + "value": 144.88 + }, + { + "timestamp": "2020-11-23T11:25:01.8588297-08:00", + "name": "runtime-counter/working-set", + "value": 90.0 + }, + { + "timestamp": "2020-11-23T11:25:01.858848-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8588648-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8588772-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8589025-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8589166-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8589348-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8589493-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8589621-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 53104.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8589733-08:00", + "name": "runtime-counter/alloc-rate", + "value": 26636048.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8589863-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8589994-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.034973269174666 + }, + { + "timestamp": "2020-11-23T11:25:01.8590115-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8590352-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8590485-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8590657-08:00", + "name": "runtime-counter/gen-1-size", + "value": 21456.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8590886-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8590997-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:25:01.859112-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:25:01.859124-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 156693.0 + }, + { + "timestamp": "2020-11-23T11:25:01.8591355-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1769.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7045318-08:00", + "name": "runtime-counter/cpu-usage", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7045744-08:00", + "name": "runtime-counter/working-set", + "value": 90.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7045975-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 6.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7046303-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7046424-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:02.704654-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7046665-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 20.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7046952-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7047104-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7047287-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 46010.0 + }, + { + "timestamp": "2020-11-23T11:25:02.704743-08:00", + "name": "runtime-counter/alloc-rate", + "value": 22640728.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7047565-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7047698-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.03495631339125425 + }, + { + "timestamp": "2020-11-23T11:25:02.7047823-08:00", + "name": "runtime-counter/exception-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7047949-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:02.704807-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7048227-08:00", + "name": "runtime-counter/gen-1-size", + "value": 23664.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7048473-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7048599-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:25:02.704873-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7048862-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 156693.0 + }, + { + "timestamp": "2020-11-23T11:25:02.7048987-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1769.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7027966-08:00", + "name": "runtime-counter/cpu-usage", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T19:25:04.0013649Z", + "name": "benchmarks/working-set", + "value": 87.0 + }, + { + "timestamp": "2020-11-23T19:25:04.0013649Z", + "name": "benchmarks/cpu", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T19:25:04.0013649Z", + "name": "benchmarks/cpu/raw", + "value": 6.13 + }, + { + "timestamp": "2020-11-23T11:25:03.7029018-08:00", + "name": "runtime-counter/working-set", + "value": 90.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7029341-08:00", + "name": "runtime-counter/gc-heap-size", + "value": 7.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7029518-08:00", + "name": "runtime-counter/gen-0-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7029625-08:00", + "name": "runtime-counter/gen-1-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7029735-08:00", + "name": "runtime-counter/gen-2-gc-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7029836-08:00", + "name": "runtime-counter/threadpool-thread-count", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7029996-08:00", + "name": "runtime-counter/monitor-lock-contention-count", + "value": 46.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7030126-08:00", + "name": "runtime-counter/threadpool-queue-length", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7030237-08:00", + "name": "runtime-counter/threadpool-completed-items-count", + "value": 1230.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7030345-08:00", + "name": "runtime-counter/alloc-rate", + "value": 1010536.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7030492-08:00", + "name": "runtime-counter/active-timer-count", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:03.703061-08:00", + "name": "runtime-counter/gc-fragmentation", + "value": 0.03495631339125425 + }, + { + "timestamp": "2020-11-23T11:25:03.7030712-08:00", + "name": "runtime-counter/exception-count", + "value": 1027.0 + }, + { + "timestamp": "2020-11-23T11:25:03.703082-08:00", + "name": "runtime-counter/time-in-gc", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T11:25:03.703092-08:00", + "name": "runtime-counter/gen-0-size", + "value": 192.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7031022-08:00", + "name": "runtime-counter/gen-1-size", + "value": 23664.0 + }, + { + "timestamp": "2020-11-23T11:25:03.703123-08:00", + "name": "runtime-counter/loh-size", + "value": 134392.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7031338-08:00", + "name": "runtime-counter/", + "value": 1180056.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7031443-08:00", + "name": "runtime-counter/assembly-count", + "value": 97.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7031552-08:00", + "name": "runtime-counter/il-bytes-jitted", + "value": 168507.0 + }, + { + "timestamp": "2020-11-23T11:25:03.7031652-08:00", + "name": "runtime-counter/methods-jitted-count", + "value": 1928.0 + } + ] + ], + "environment": { + "hw": "Unknown", + "env": "Unspecified", + "os": "Windows", + "arch": "X64", + "proc": 8 + } + }, + "load": { + "results": { + "netSdkVersion": "3.1.404", + "benchmarks/build-time": 10732.0, + "benchmarks/published-size": 68225.0, + "benchmarks/start-time": 478.0, + "benchmarks/working-set": 28.0, + "benchmarks/cpu": 19.0, + "benchmarks/cpu/raw": 148.56, + "http/firstrequest": 330.0, + "bombardier/requests": 371323.0, + "bombardier/badresponses": 0.0, + "bombardier/latency/mean": 10323.215906367233, + "bombardier/latency/max": 209999.0, + "bombardier/rps/max": 50385.891950253936, + "bombardier/rps/mean": 24745.892658743815, + "bombardier/raw": { + "spec": { + "numberOfConnections": 256, + "testType": "timed", + "testDurationSeconds": 15, + "method": "GET", + "url": "http://localhost:5000/", + "body": "", + "stream": false, + "timeoutSeconds": 2, + "client": "fasthttp" + }, + "result": { + "bytesRead": 45672729, + "bytesWritten": 23022026, + "timeTakenSeconds": 15.0086199, + "req1xx": 0, + "req2xx": 371323, + "req3xx": 0, + "req4xx": 0, + "req5xx": 0, + "others": 0, + "latency": { + "mean": 10323.215906367233, + "stddev": 2667.774786871292, + "max": 209999, + "percentiles": { + "50": 9001, + "75": 12000, + "90": 16000, + "95": 19996, + "99": 29003 + } + }, + "rps": { + "mean": 24745.892658743815, + "stddev": 7791.080793443214, + "max": 50385.891950253936, + "percentiles": { + "50": 25933.202358, + "75": 30702.046803, + "90": 34191.369467, + "95": 35801.253044, + "99": 38162.850382 + } + } + } + }, + "bombardier/throughput": 2.9021261713399054 + }, + "metadata": [ + { + "name": "benchmarks/cpu", + "description": "CPU Usage (%)", + "format": "n0" + }, + { + "name": "benchmarks/cpu/raw", + "description": "Raw CPU Usage (%)", + "format": "n2" + }, + { + "name": "benchmarks/working-set", + "description": "Working Set (MB)", + "format": "n0" + }, + { + "name": "benchmarks/build-time", + "description": "Build Time (ms)", + "format": "n0" + }, + { + "name": "benchmarks/start-time", + "description": "Start Time (ms)", + "format": "n0" + }, + { + "name": "benchmarks/published-size", + "description": "Published Size (KB)", + "format": "n0" + }, + { + "name": "benchmarks/swap", + "description": "Swap (MB)", + "format": "n0" + }, + { + "name": "netSdkVersion", + "description": ".NET Core SDK Version", + "format": "" + }, + { + "name": "http/firstrequest", + "description": "First Request (ms)", + "format": "n0" + }, + { + "name": "bombardier/requests", + "description": "Requests", + "format": "n0" + }, + { + "name": "bombardier/badresponses", + "description": "Bad responses", + "format": "n0" + }, + { + "name": "bombardier/latency/mean", + "description": "Mean latency (us)", + "format": "n0" + }, + { + "name": "bombardier/latency/max", + "description": "Max latency (us)", + "format": "n0" + }, + { + "name": "bombardier/rps/mean", + "description": "Requests/sec", + "format": "n0" + }, + { + "name": "bombardier/rps/max", + "description": "Requests/sec (max)", + "format": "n0" + }, + { + "name": "bombardier/throughput", + "description": "Read throughput (MB/s)", + "format": "n2" + }, + { + "name": "bombardier/raw", + "description": "Raw results", + "format": "object" + }, + { + "name": "runtime-counter/cpu-usage", + "description": "Max CPU Usage (%)", + "format": "n0" + }, + { + "name": "runtime-counter/cpu-usage/avg", + "description": "Avg CPU Usage (%)", + "format": "n0" + }, + { + "name": "runtime-counter/working-set", + "description": "Max Working Set (MB)", + "format": "n0" + }, + { + "name": "runtime-counter/gc-heap-size", + "description": "Max GC Heap Size (MB)", + "format": "n0" + }, + { + "name": "runtime-counter/gen-0-gc-count", + "description": "Max Number of Gen 0 GCs / min", + "format": "n2" + }, + { + "name": "runtime-counter/gen-1-gc-count", + "description": "Max Number of Gen 1 GCs / min", + "format": "n2" + }, + { + "name": "runtime-counter/gen-2-gc-count", + "description": "Max Number of Gen 2 GCs / min", + "format": "n2" + }, + { + "name": "runtime-counter/time-in-gc", + "description": "Max Time in GC (%)", + "format": "n2" + }, + { + "name": "runtime-counter/gen-0-size", + "description": "Max Gen 0 Size (B)", + "format": "n0" + }, + { + "name": "runtime-counter/gen-1-size", + "description": "Max Gen 1 Size (B)", + "format": "n0" + }, + { + "name": "runtime-counter/gen-2-size", + "description": "Max Gen 2 Size (B)", + "format": "n0" + }, + { + "name": "runtime-counter/loh-size", + "description": "Max LOH Size (B)", + "format": "n0" + }, + { + "name": "runtime-counter/poh-size", + "description": "Max POH Size (B)", + "format": "n0" + }, + { + "name": "runtime-counter/alloc-rate", + "description": "Max Allocation Rate (B/sec)", + "format": "n0" + }, + { + "name": "runtime-counter/gc-fragmentation", + "description": "Max GC Heap Fragmentation", + "format": "n0" + }, + { + "name": "runtime-counter/assembly-count", + "description": "# of Assemblies Loaded", + "format": "n0" + }, + { + "name": "runtime-counter/exception-count", + "description": "Max Exceptions (#/s)", + "format": "n0" + }, + { + "name": "runtime-counter/monitor-lock-contention-count", + "description": "Max Lock Contention (#/s)", + "format": "n0" + }, + { + "name": "runtime-counter/threadpool-thread-count", + "description": "Max ThreadPool Threads Count", + "format": "n0" + }, + { + "name": "runtime-counter/threadpool-queue-length", + "description": "Max ThreadPool Queue Length", + "format": "n0" + }, + { + "name": "runtime-counter/threadpool-completed-items-count", + "description": "Max ThreadPool Items (#/s)", + "format": "n0" + }, + { + "name": "runtime-counter/active-timer-count", + "description": "Max Active Timers", + "format": "n0" + }, + { + "name": "runtime-counter/il-bytes-jitted", + "description": "IL Jitted (B)", + "format": "n0" + }, + { + "name": "runtime-counter/methods-jitted-count", + "description": "Methods Jitted", + "format": "n0" + }, + { + "name": "kestrel-counter/connections-per-second", + "description": "Max Connections per second", + "format": null + }, + { + "name": "kestrel-counter/total-connections", + "description": "Max Connections", + "format": "n0" + }, + { + "name": "kestrel-counter/tls-handshakes-per-second", + "description": "Max TLS Handshakes per second", + "format": "n0" + }, + { + "name": "kestrel-counter/total-tls-handshakes", + "description": "Total TLS Handshakes", + "format": "n0" + }, + { + "name": "kestrel-counter/current-tls-handshakes", + "description": "Max Active TLS Handshakes", + "format": "n0" + }, + { + "name": "kestrel-counter/failed-tls-handshakes", + "description": "Total Dailed TLS Handshakes", + "format": "n0" + }, + { + "name": "kestrel-counter/current-connections", + "description": "Max Active Connections", + "format": "n0" + }, + { + "name": "kestrel-counter/connection-queue-length", + "description": "Max Connection Queue Length", + "format": "n0" + }, + { + "name": "kestrel-counter/request-queue-length", + "description": "Max Request Queue Length", + "format": "n0" + }, + { + "name": "kestrel-counter/current-upgraded-requests", + "description": "Max Active Upgraded Requests (WebSockets)", + "format": "n0" + }, + { + "name": "aspnet-counter/requests-per-second", + "description": "Max Requests per second", + "format": "n0" + }, + { + "name": "aspnet-counter/total-requests", + "description": "Total Requests", + "format": "n0" + }, + { + "name": "aspnet-counter/current-requests", + "description": "Max Active Requests", + "format": "n0" + }, + { + "name": "aspnet-counter/failed-requests", + "description": "Failed Requests", + "format": "n0" + }, + { + "name": "system-net-http-counter/requests-started", + "description": "Total Requests Started", + "format": "n0" + }, + { + "name": "system-net-http-counter/requests-started-rate", + "description": "Max Requests Started per second", + "format": "n0" + }, + { + "name": "system-net-http-counter/requests-aborted", + "description": "Total Requests Aborted", + "format": "n0" + }, + { + "name": "system-net-http-counter/requests-aborted-rate", + "description": "Max Requests Aborted per second", + "format": "n0" + }, + { + "name": "system-net-http-counter/current-requests", + "description": "Max Active Requests", + "format": "n0" + }, + { + "name": "signalr-counter/connections-started", + "description": "Total Connections Started", + "format": "n0" + }, + { + "name": "signalr-counter/connections-stopped", + "description": "Total Connections Stopped", + "format": "n0" + }, + { + "name": "signalr-counter/connections-timed-out", + "description": "Total Connections Timed Out", + "format": "n0" + }, + { + "name": "signalr-counter/current-connections", + "description": "Max Active Connections", + "format": "n0" + }, + { + "name": "signalr-counter/connections-duration", + "description": "Max Average Connection Duration per second (ms)", + "format": "n0" + }, + { + "name": "grpc-server-counter/total-calls", + "description": "Total Calls", + "format": "n0" + }, + { + "name": "grpc-server-counter/current-calls", + "description": "Max Active Calls", + "format": "n0" + }, + { + "name": "grpc-server-counter/calls-failed", + "description": "Total Calls Failed", + "format": "n0" + }, + { + "name": "grpc-server-counter/calls-deadline-exceeded", + "description": "Total Calls Deadline Exceeded", + "format": "n0" + }, + { + "name": "grpc-server-counter/messages-sent", + "description": "Total Messages Sent", + "format": "n0" + }, + { + "name": "grpc-server-counter/messages-received", + "description": "Total Messages Received", + "format": "n0" + }, + { + "name": "grpc-server-counter/calls-unimplemented", + "description": "Total Calls Unimplemented", + "format": "n0" + }, + { + "name": "grpc-client-counter/total-calls", + "description": "Total Calls", + "format": "n0" + }, + { + "name": "grpc-client-counter/current-calls", + "description": "Max Active Calls", + "format": "n0" + }, + { + "name": "grpc-client-counter/calls-failed", + "description": "Total Calls Failed", + "format": "n0" + }, + { + "name": "grpc-client-counter/calls-deadline-exceeded", + "description": "Total Calls Deadline Exceeded", + "format": "n0" + }, + { + "name": "grpc-client-counter/messages-sent", + "description": "Total Messages Sent", + "format": "n0" + }, + { + "name": "grpc-client-counter/messages-received", + "description": "Total Messages Received", + "format": "n0" + }, + { + "name": "npgsql-counter/bytes-written-per-second", + "description": "Total Bytes Written", + "format": "n0" + }, + { + "name": "npgsql-counter/bytes-read-per-second", + "description": "Total Bytes Read", + "format": "n0" + }, + { + "name": "npgsql-counter/commands-per-second", + "description": "Max Command Rate", + "format": "n0" + }, + { + "name": "npgsql-counter/total-commands", + "description": "Total Commands", + "format": "n0" + }, + { + "name": "npgsql-counter/current-commands", + "description": "Max Active Commands per second", + "format": "n0" + }, + { + "name": "npgsql-counter/failed-commands", + "description": "Total Failed Commands", + "format": "n0" + }, + { + "name": "npgsql-counter/prepared-commands-ratio", + "description": "Max Prepared Commands Ratio", + "format": "n0" + }, + { + "name": "npgsql-counter/connection-pools", + "description": "Max Connection Pools", + "format": "n0" + }, + { + "name": "npgsql-counter/idle-connections", + "description": "Max Idle Connections", + "format": "n0" + }, + { + "name": "npgsql-counter/busy-connections", + "description": "Max Busy Connections", + "format": "n0" + }, + { + "name": "npgsql-counter/multiplexing-average-commands-per-batch", + "description": "Max Average commands per multiplexing batch per second", + "format": "n0" + }, + { + "name": "npgsql-counter/multiplexing-average-waits-per-batch", + "description": "Max Average waits per multiplexing batch per second", + "format": "n0" + }, + { + "name": "npgsql-counter/multiplexing-average-write-time-per-batch", + "description": "Max Average write time per multiplexing batch (us) per second", + "format": "n0" + } + ], + "measurements": [ + [ + { + "timestamp": "2020-11-23T19:24:30.7701309Z", + "name": "netSdkVersion", + "value": "3.1.404" + }, + { + "timestamp": "2020-11-23T19:24:41.5041308Z", + "name": "benchmarks/build-time", + "value": 10732 + }, + { + "timestamp": "2020-11-23T19:24:41.5085996Z", + "name": "benchmarks/published-size", + "value": 68225 + }, + { + "timestamp": "2020-11-23T19:24:41.9884939Z", + "name": "benchmarks/start-time", + "value": 478 + }, + { + "timestamp": "2020-11-23T19:24:43.202151Z", + "name": "benchmarks/working-set", + "value": 28.0 + }, + { + "timestamp": "2020-11-23T19:24:43.202151Z", + "name": "benchmarks/cpu", + "value": 1.0 + }, + { + "timestamp": "2020-11-23T19:24:43.202151Z", + "name": "benchmarks/cpu/raw", + "value": 11.95 + }, + { + "timestamp": "2020-11-23T19:24:44.2688018Z", + "name": "benchmarks/working-set", + "value": 28.0 + }, + { + "timestamp": "2020-11-23T19:24:44.2688018Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:44.2688018Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:45.3150342Z", + "name": "benchmarks/working-set", + "value": 28.0 + }, + { + "timestamp": "2020-11-23T19:24:45.3150342Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:45.3150342Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:46.3304773Z", + "name": "benchmarks/working-set", + "value": 28.0 + }, + { + "timestamp": "2020-11-23T19:24:46.3304773Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:46.3304773Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:47.3609101Z", + "name": "benchmarks/working-set", + "value": 28.0 + }, + { + "timestamp": "2020-11-23T19:24:47.3609101Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:47.3609101Z", + "name": "benchmarks/cpu/raw", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T19:24:48.4237448Z", + "name": "benchmarks/working-set", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:24:48.4237448Z", + "name": "benchmarks/cpu", + "value": 7.0 + }, + { + "timestamp": "2020-11-23T19:24:48.4237448Z", + "name": "benchmarks/cpu/raw", + "value": 54.39 + }, + { + "timestamp": "2020-11-23T19:24:50.489334Z", + "name": "benchmarks/working-set", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:24:50.489334Z", + "name": "benchmarks/cpu", + "value": 15.0 + }, + { + "timestamp": "2020-11-23T19:24:50.489334Z", + "name": "benchmarks/cpu/raw", + "value": 118.01 + }, + { + "timestamp": "2020-11-23T19:24:52.5392043Z", + "name": "benchmarks/working-set", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:24:52.5392043Z", + "name": "benchmarks/cpu", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T19:24:52.5392043Z", + "name": "benchmarks/cpu/raw", + "value": 128.82 + }, + { + "timestamp": "2020-11-23T19:24:53.5984318Z", + "name": "benchmarks/working-set", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:24:53.5984318Z", + "name": "benchmarks/cpu", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T19:24:53.5984318Z", + "name": "benchmarks/cpu/raw", + "value": 131.29 + }, + { + "timestamp": "2020-11-23T19:24:54.6377163Z", + "name": "benchmarks/working-set", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:24:54.6377163Z", + "name": "benchmarks/cpu", + "value": 14.0 + }, + { + "timestamp": "2020-11-23T19:24:54.6377163Z", + "name": "benchmarks/cpu/raw", + "value": 112.76 + }, + { + "timestamp": "2020-11-23T19:24:55.6917609Z", + "name": "benchmarks/working-set", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:24:55.6917609Z", + "name": "benchmarks/cpu", + "value": 17.0 + }, + { + "timestamp": "2020-11-23T19:24:55.6917609Z", + "name": "benchmarks/cpu/raw", + "value": 139.34 + }, + { + "timestamp": "2020-11-23T19:24:57.8752954Z", + "name": "benchmarks/working-set", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:24:57.8752954Z", + "name": "benchmarks/cpu", + "value": 13.0 + }, + { + "timestamp": "2020-11-23T19:24:57.8752954Z", + "name": "benchmarks/cpu/raw", + "value": 100.18 + }, + { + "timestamp": "2020-11-23T19:24:58.9462549Z", + "name": "benchmarks/working-set", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:24:58.9462549Z", + "name": "benchmarks/cpu", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T19:24:58.9462549Z", + "name": "benchmarks/cpu/raw", + "value": 126.93 + }, + { + "timestamp": "2020-11-23T19:25:00.0085407Z", + "name": "benchmarks/working-set", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:25:00.0085407Z", + "name": "benchmarks/cpu", + "value": 19.0 + }, + { + "timestamp": "2020-11-23T19:25:00.0085407Z", + "name": "benchmarks/cpu/raw", + "value": 148.56 + }, + { + "timestamp": "2020-11-23T19:25:01.0585596Z", + "name": "benchmarks/working-set", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:25:01.0585596Z", + "name": "benchmarks/cpu", + "value": 17.0 + }, + { + "timestamp": "2020-11-23T19:25:01.0585596Z", + "name": "benchmarks/cpu/raw", + "value": 135.41 + }, + { + "timestamp": "2020-11-23T19:25:02.1074828Z", + "name": "benchmarks/working-set", + "value": 22.0 + }, + { + "timestamp": "2020-11-23T19:25:02.1074828Z", + "name": "benchmarks/cpu", + "value": 16.0 + }, + { + "timestamp": "2020-11-23T19:25:02.1074828Z", + "name": "benchmarks/cpu/raw", + "value": 125.13 + }, + { + "timestamp": "2020-11-23T11:24:42.344501-08:00", + "name": "http/firstrequest", + "value": 330 + }, + { + "timestamp": "2020-11-23T11:25:02.8609718-08:00", + "name": "bombardier/requests", + "value": 371323 + }, + { + "timestamp": "2020-11-23T11:25:02.8610676-08:00", + "name": "bombardier/badresponses", + "value": 0 + }, + { + "timestamp": "2020-11-23T11:25:02.8626874-08:00", + "name": "bombardier/latency/mean", + "value": 10323.215906367233 + }, + { + "timestamp": "2020-11-23T11:25:02.863891-08:00", + "name": "bombardier/latency/max", + "value": 209999.0 + }, + { + "timestamp": "2020-11-23T11:25:02.8640672-08:00", + "name": "bombardier/rps/max", + "value": 50385.891950253936 + }, + { + "timestamp": "2020-11-23T11:25:02.8641561-08:00", + "name": "bombardier/rps/mean", + "value": 24745.892658743815 + }, + { + "timestamp": "2020-11-23T11:25:02.8644928-08:00", + "name": "bombardier/raw", + "value": { + "spec": { + "numberOfConnections": 256, + "testType": "timed", + "testDurationSeconds": 15, + "method": "GET", + "url": "http://localhost:5000/", + "body": "", + "stream": false, + "timeoutSeconds": 2, + "client": "fasthttp" + }, + "result": { + "bytesRead": 45672729, + "bytesWritten": 23022026, + "timeTakenSeconds": 15.0086199, + "req1xx": 0, + "req2xx": 371323, + "req3xx": 0, + "req4xx": 0, + "req5xx": 0, + "others": 0, + "latency": { + "mean": 10323.215906367233, + "stddev": 2667.774786871292, + "max": 209999, + "percentiles": { + "50": 9001, + "75": 12000, + "90": 16000, + "95": 19996, + "99": 29003 + } + }, + "rps": { + "mean": 24745.892658743815, + "stddev": 7791.080793443214, + "max": 50385.891950253936, + "percentiles": { + "50": 25933.202358, + "75": 30702.046803, + "90": 34191.369467, + "95": 35801.253044, + "99": 38162.850382 + } + } + } + } + }, + { + "timestamp": "2020-11-23T11:25:02.8645529-08:00", + "name": "bombardier/throughput", + "value": 2.9021261713399054 + } + ] + ], + "environment": { + "hw": "Unknown", + "env": "Unspecified", + "os": "Windows", + "arch": "X64", + "proc": 8 + } + } + }, + "properties": {} + } +} \ No newline at end of file From 62c030bb150c09206f39d42d76e309007cca643f Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Mon, 23 Nov 2020 14:32:24 -0800 Subject: [PATCH 06/13] Adding unit tests --- samples/scripts/scripts.benchmarks.yml | 2 +- src/Microsoft.Crank.Controller/results.json | 3778 +++++++---------- .../HelloTests.cs | 60 + .../assets/scripts.benchmarks.yml | 10 + 4 files changed, 1685 insertions(+), 2165 deletions(-) create mode 100644 test/Microsoft.Crank.IntegrationTests/assets/scripts.benchmarks.yml diff --git a/samples/scripts/scripts.benchmarks.yml b/samples/scripts/scripts.benchmarks.yml index 616781b01..5b0c7ddaf 100644 --- a/samples/scripts/scripts.benchmarks.yml +++ b/samples/scripts/scripts.benchmarks.yml @@ -1,4 +1,4 @@ -defaultScript: +defaultScripts: - | console.log("this section is loaded by default and before named scripts") diff --git a/src/Microsoft.Crank.Controller/results.json b/src/Microsoft.Crank.Controller/results.json index 9d9cd9f14..3b27ac53e 100644 --- a/src/Microsoft.Crank.Controller/results.json +++ b/src/Microsoft.Crank.Controller/results.json @@ -5,34 +5,34 @@ "application": { "results": { "netSdkVersion": "5.0.100", - "benchmarks/build-time": 9095.0, + "benchmarks/build-time": 3682.0, "benchmarks/published-size": 86753.0, - "benchmarks/start-time": 910.0, - "runtime-counter/cpu-usage": 30.0, - "runtime-counter/cpu-usage/avg": 24.0, - "runtime-counter/working-set": 90.0, - "runtime-counter/gc-heap-size": 37.0, - "runtime-counter/gen-0-gc-count": 1.0, + "benchmarks/start-time": 536.0, + "benchmarks/working-set": 88.0, + "benchmarks/cpu": 42.0, + "benchmarks/cpu/raw": 333.0, + "runtime-counter/cpu-usage": 39.0, + "runtime-counter/cpu-usage/avg": 39.0, + "runtime-counter/working-set": 92.0, + "runtime-counter/gc-heap-size": 33.0, + "runtime-counter/gen-0-gc-count": 2.0, "runtime-counter/gen-1-gc-count": 1.0, "runtime-counter/gen-2-gc-count": 1.0, - "runtime-counter/threadpool-thread-count": 24.0, - "runtime-counter/monitor-lock-contention-count": 46.0, - "runtime-counter/threadpool-queue-length": 92.0, - "runtime-counter/threadpool-completed-items-count": 65402.0, - "runtime-counter/alloc-rate": 32490688.0, + "runtime-counter/threadpool-thread-count": 27.0, + "runtime-counter/monitor-lock-contention-count": 25.0, + "runtime-counter/threadpool-queue-length": 4.0, + "runtime-counter/threadpool-completed-items-count": 170551.0, + "runtime-counter/alloc-rate": 56221968.0, "runtime-counter/active-timer-count": 0.0, "runtime-counter/gc-fragmentation": "NaN", - "runtime-counter/exception-count": 1027.0, - "runtime-counter/time-in-gc": 2.0, + "runtime-counter/exception-count": 1023.0, + "runtime-counter/time-in-gc": 0.0, "runtime-counter/gen-0-size": 192.0, - "runtime-counter/gen-1-size": 3252312.0, - "runtime-counter/loh-size": 134392.0, - "runtime-counter/assembly-count": 97.0, - "runtime-counter/il-bytes-jitted": 168507.0, - "runtime-counter/methods-jitted-count": 1928.0, - "benchmarks/working-set": 87.0, - "benchmarks/cpu": 26.0, - "benchmarks/cpu/raw": 210.13 + "runtime-counter/gen-1-size": 3301432.0, + "runtime-counter/loh-size": 134984.0, + "runtime-counter/assembly-count": 94.0, + "runtime-counter/il-bytes-jitted": 167449.0, + "runtime-counter/methods-jitted-count": 1920.0 }, "metadata": [ { @@ -42,8 +42,8 @@ }, { "name": "benchmarks/cpu/raw", - "description": "Raw CPU Usage (%)", - "format": "n2" + "description": "Cores usage (%)", + "format": "n0" }, { "name": "benchmarks/working-set", @@ -449,4839 +449,4229 @@ "measurements": [ [ { - "timestamp": "2020-11-23T19:24:15.3140295Z", + "timestamp": "2020-11-23T22:18:39.9966538Z", "name": "netSdkVersion", "value": "5.0.100" }, { - "timestamp": "2020-11-23T19:24:24.4106943Z", + "timestamp": "2020-11-23T22:18:43.6789791Z", "name": "benchmarks/build-time", - "value": 9095 + "value": 3682 }, { - "timestamp": "2020-11-23T19:24:24.4149982Z", + "timestamp": "2020-11-23T22:18:43.6807357Z", "name": "benchmarks/published-size", "value": 86753 }, { - "timestamp": "2020-11-23T19:24:25.3268071Z", + "timestamp": "2020-11-23T22:18:44.2181368Z", "name": "benchmarks/start-time", - "value": 910 + "value": 536 + }, + { + "timestamp": "2020-11-23T22:18:45.6116385Z", + "name": "benchmarks/working-set", + "value": 35.0 + }, + { + "timestamp": "2020-11-23T22:18:45.6116385Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T22:18:45.6116385Z", + "name": "benchmarks/cpu/raw", + "value": 3.0 }, { - "timestamp": "2020-11-23T11:24:25.6966746-08:00", + "timestamp": "2020-11-23T14:18:44.8503122-08:00", "name": "runtime-counter/cpu-usage", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:25.6968363-08:00", + "timestamp": "2020-11-23T22:18:46.62559Z", + "name": "benchmarks/working-set", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T22:18:46.62559Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T22:18:46.62559Z", + "name": "benchmarks/cpu/raw", + "value": 2.0 + }, + { + "timestamp": "2020-11-23T14:18:44.8504611-08:00", "name": "runtime-counter/working-set", "value": 36.0 }, { - "timestamp": "2020-11-23T11:24:25.6968986-08:00", + "timestamp": "2020-11-23T14:18:44.8504933-08:00", "name": "runtime-counter/gc-heap-size", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:25.6974933-08:00", + "timestamp": "2020-11-23T14:18:44.8507553-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:25.6975197-08:00", + "timestamp": "2020-11-23T14:18:44.8507677-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:25.6975297-08:00", + "timestamp": "2020-11-23T14:18:44.8507737-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:25.6975467-08:00", + "timestamp": "2020-11-23T14:18:44.8507833-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:25.6975773-08:00", + "timestamp": "2020-11-23T14:18:44.850804-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:25.6976237-08:00", + "timestamp": "2020-11-23T14:18:44.8508616-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:25.6976446-08:00", + "timestamp": "2020-11-23T14:18:44.8508755-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 13.0 + "value": 9.0 }, { - "timestamp": "2020-11-23T11:24:25.6976587-08:00", + "timestamp": "2020-11-23T14:18:44.8508841-08:00", "name": "runtime-counter/alloc-rate", - "value": 1204832.0 + "value": 1097872.0 }, { - "timestamp": "2020-11-23T11:24:25.6977912-08:00", + "timestamp": "2020-11-23T14:18:44.8509664-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:25.6979049-08:00", + "timestamp": "2020-11-23T14:18:44.8510587-08:00", "name": "runtime-counter/gc-fragmentation", "value": "NaN" }, { - "timestamp": "2020-11-23T11:24:25.6979205-08:00", + "timestamp": "2020-11-23T14:18:44.8510681-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:25.6979395-08:00", + "timestamp": "2020-11-23T14:18:44.851076-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:25.6979513-08:00", + "timestamp": "2020-11-23T14:18:44.8510825-08:00", "name": "runtime-counter/gen-0-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:25.6979609-08:00", + "timestamp": "2020-11-23T14:18:44.8510878-08:00", "name": "runtime-counter/gen-1-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:25.6979781-08:00", + "timestamp": "2020-11-23T14:18:44.8510976-08:00", "name": "runtime-counter/loh-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:25.6979876-08:00", + "timestamp": "2020-11-23T14:18:44.8511027-08:00", "name": "runtime-counter/", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:25.6980082-08:00", + "timestamp": "2020-11-23T14:18:44.8511142-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 86.0 }, { - "timestamp": "2020-11-23T11:24:25.6980396-08:00", + "timestamp": "2020-11-23T14:18:44.8511259-08:00", "name": "runtime-counter/il-bytes-jitted", "value": 29587.0 }, { - "timestamp": "2020-11-23T11:24:25.6980528-08:00", + "timestamp": "2020-11-23T14:18:44.851133-08:00", "name": "runtime-counter/methods-jitted-count", "value": 300.0 }, { - "timestamp": "2020-11-23T11:24:26.6928678-08:00", + "timestamp": "2020-11-23T14:18:45.8472904-08:00", "name": "runtime-counter/cpu-usage", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:26.9598472Z", - "name": "benchmarks/working-set", - "value": 36.0 - }, - { - "timestamp": "2020-11-23T19:24:26.9598472Z", - "name": "benchmarks/cpu", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T19:24:26.9598472Z", - "name": "benchmarks/cpu/raw", - "value": 1.56 - }, - { - "timestamp": "2020-11-23T19:24:27.9714661Z", + "timestamp": "2020-11-23T22:18:47.6306654Z", "name": "benchmarks/working-set", "value": 36.0 }, { - "timestamp": "2020-11-23T19:24:27.9714661Z", + "timestamp": "2020-11-23T22:18:47.6306654Z", "name": "benchmarks/cpu", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:27.9714661Z", + "timestamp": "2020-11-23T22:18:47.6306654Z", "name": "benchmarks/cpu/raw", - "value": 1.54 + "value": 2.0 }, { - "timestamp": "2020-11-23T11:24:26.6929343-08:00", + "timestamp": "2020-11-23T14:18:45.8473248-08:00", "name": "runtime-counter/working-set", "value": 36.0 }, { - "timestamp": "2020-11-23T11:24:26.6929528-08:00", + "timestamp": "2020-11-23T14:18:45.8473388-08:00", "name": "runtime-counter/gc-heap-size", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:26.6929693-08:00", + "timestamp": "2020-11-23T14:18:45.847355-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:26.6929947-08:00", + "timestamp": "2020-11-23T14:18:45.8473793-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:26.6930047-08:00", + "timestamp": "2020-11-23T14:18:45.8473874-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:26.6930309-08:00", + "timestamp": "2020-11-23T14:18:45.8474026-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:26.6930462-08:00", + "timestamp": "2020-11-23T14:18:45.8474144-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:26.6930918-08:00", + "timestamp": "2020-11-23T14:18:45.8474565-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:26.6931055-08:00", + "timestamp": "2020-11-23T14:18:45.8474689-08:00", "name": "runtime-counter/threadpool-completed-items-count", "value": 2.0 }, { - "timestamp": "2020-11-23T11:24:26.6931182-08:00", + "timestamp": "2020-11-23T14:18:45.8474793-08:00", "name": "runtime-counter/alloc-rate", "value": 16336.0 }, { - "timestamp": "2020-11-23T11:24:26.693134-08:00", + "timestamp": "2020-11-23T14:18:45.8474987-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:26.6931465-08:00", + "timestamp": "2020-11-23T14:18:45.8475264-08:00", "name": "runtime-counter/gc-fragmentation", "value": "NaN" }, { - "timestamp": "2020-11-23T11:24:26.6931675-08:00", + "timestamp": "2020-11-23T14:18:45.8475376-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:26.6931811-08:00", + "timestamp": "2020-11-23T14:18:45.8475508-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:26.693191-08:00", + "timestamp": "2020-11-23T14:18:45.8475596-08:00", "name": "runtime-counter/gen-0-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:26.6932008-08:00", + "timestamp": "2020-11-23T14:18:45.8475678-08:00", "name": "runtime-counter/gen-1-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:26.6932196-08:00", + "timestamp": "2020-11-23T14:18:45.8475846-08:00", "name": "runtime-counter/loh-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:26.6932292-08:00", + "timestamp": "2020-11-23T14:18:45.8475932-08:00", "name": "runtime-counter/", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:26.6932405-08:00", + "timestamp": "2020-11-23T14:18:45.8476036-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 86.0 }, { - "timestamp": "2020-11-23T11:24:26.6932508-08:00", + "timestamp": "2020-11-23T14:18:45.8476126-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 37326.0 + "value": 37303.0 }, { - "timestamp": "2020-11-23T11:24:26.6932671-08:00", + "timestamp": "2020-11-23T14:18:45.8476212-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 369.0 + "value": 368.0 }, { - "timestamp": "2020-11-23T11:24:27.7073885-08:00", + "timestamp": "2020-11-23T14:18:46.8487275-08:00", "name": "runtime-counter/cpu-usage", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:27.70744-08:00", + "timestamp": "2020-11-23T14:18:46.8487731-08:00", "name": "runtime-counter/working-set", - "value": 37.0 + "value": 36.0 }, { - "timestamp": "2020-11-23T11:24:27.7074592-08:00", + "timestamp": "2020-11-23T14:18:46.8488218-08:00", "name": "runtime-counter/gc-heap-size", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:27.7075682-08:00", + "timestamp": "2020-11-23T14:18:46.8488515-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:27.7075997-08:00", + "timestamp": "2020-11-23T14:18:46.8488631-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:27.7076107-08:00", + "timestamp": "2020-11-23T14:18:46.848872-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:27.7077116-08:00", + "timestamp": "2020-11-23T14:18:46.8489176-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:27.7077412-08:00", + "timestamp": "2020-11-23T14:18:46.8489383-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:27.7077718-08:00", + "timestamp": "2020-11-23T14:18:46.8489557-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:27.7077874-08:00", + "timestamp": "2020-11-23T14:18:46.8489687-08:00", "name": "runtime-counter/threadpool-completed-items-count", "value": 2.0 }, { - "timestamp": "2020-11-23T11:24:27.7078029-08:00", + "timestamp": "2020-11-23T14:18:46.8489805-08:00", "name": "runtime-counter/alloc-rate", "value": 8168.0 }, { - "timestamp": "2020-11-23T11:24:27.7078181-08:00", + "timestamp": "2020-11-23T14:18:46.8489935-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:27.7078342-08:00", + "timestamp": "2020-11-23T14:18:46.8490082-08:00", "name": "runtime-counter/gc-fragmentation", "value": "NaN" }, { - "timestamp": "2020-11-23T11:24:27.7078478-08:00", + "timestamp": "2020-11-23T14:18:46.8490198-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:27.707862-08:00", + "timestamp": "2020-11-23T14:18:46.8490313-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:27.7078758-08:00", + "timestamp": "2020-11-23T14:18:46.849044-08:00", "name": "runtime-counter/gen-0-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:27.7078941-08:00", + "timestamp": "2020-11-23T14:18:46.8490548-08:00", "name": "runtime-counter/gen-1-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:27.7079235-08:00", + "timestamp": "2020-11-23T14:18:46.8490759-08:00", "name": "runtime-counter/loh-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:27.7079378-08:00", + "timestamp": "2020-11-23T14:18:46.8490868-08:00", "name": "runtime-counter/", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:27.7079642-08:00", + "timestamp": "2020-11-23T14:18:46.8491064-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 86.0 }, { - "timestamp": "2020-11-23T11:24:27.7079814-08:00", + "timestamp": "2020-11-23T14:18:46.8491186-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 39717.0 + "value": 39680.0 }, { - "timestamp": "2020-11-23T11:24:27.7079985-08:00", + "timestamp": "2020-11-23T14:18:46.8491293-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 393.0 + "value": 391.0 }, { - "timestamp": "2020-11-23T11:24:28.7037042-08:00", + "timestamp": "2020-11-23T14:18:47.8524566-08:00", "name": "runtime-counter/cpu-usage", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:28.9888287Z", + "timestamp": "2020-11-23T22:18:48.6346363Z", "name": "benchmarks/working-set", "value": 36.0 }, { - "timestamp": "2020-11-23T19:24:28.9888287Z", + "timestamp": "2020-11-23T22:18:48.6346363Z", "name": "benchmarks/cpu", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:28.9888287Z", + "timestamp": "2020-11-23T22:18:48.6346363Z", "name": "benchmarks/cpu/raw", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:30.0016499Z", + "timestamp": "2020-11-23T22:18:49.6514025Z", "name": "benchmarks/working-set", "value": 36.0 }, { - "timestamp": "2020-11-23T19:24:30.0016499Z", + "timestamp": "2020-11-23T22:18:49.6514025Z", "name": "benchmarks/cpu", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:30.0016499Z", + "timestamp": "2020-11-23T22:18:49.6514025Z", "name": "benchmarks/cpu/raw", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7037323-08:00", + "timestamp": "2020-11-23T14:18:47.8525282-08:00", "name": "runtime-counter/working-set", - "value": 37.0 + "value": 36.0 }, { - "timestamp": "2020-11-23T11:24:28.7037571-08:00", + "timestamp": "2020-11-23T14:18:47.8525556-08:00", "name": "runtime-counter/gc-heap-size", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:28.7037719-08:00", + "timestamp": "2020-11-23T14:18:47.8525802-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7037787-08:00", + "timestamp": "2020-11-23T14:18:47.8525915-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7037847-08:00", + "timestamp": "2020-11-23T14:18:47.8526025-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7037912-08:00", + "timestamp": "2020-11-23T14:18:47.8526137-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:28.7038013-08:00", + "timestamp": "2020-11-23T14:18:47.8526301-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7038174-08:00", + "timestamp": "2020-11-23T14:18:47.8526432-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7038249-08:00", + "timestamp": "2020-11-23T14:18:47.8526533-08:00", "name": "runtime-counter/threadpool-completed-items-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:28.7038312-08:00", + "timestamp": "2020-11-23T14:18:47.852663-08:00", "name": "runtime-counter/alloc-rate", - "value": 8168.0 + "value": 16336.0 }, { - "timestamp": "2020-11-23T11:24:28.7038384-08:00", + "timestamp": "2020-11-23T14:18:47.8526723-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7038458-08:00", + "timestamp": "2020-11-23T14:18:47.8526823-08:00", "name": "runtime-counter/gc-fragmentation", "value": "NaN" }, { - "timestamp": "2020-11-23T11:24:28.7038516-08:00", + "timestamp": "2020-11-23T14:18:47.8526904-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7038576-08:00", + "timestamp": "2020-11-23T14:18:47.8526985-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7038632-08:00", + "timestamp": "2020-11-23T14:18:47.8527067-08:00", "name": "runtime-counter/gen-0-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7038687-08:00", + "timestamp": "2020-11-23T14:18:47.8527141-08:00", "name": "runtime-counter/gen-1-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7038802-08:00", + "timestamp": "2020-11-23T14:18:47.8527286-08:00", "name": "runtime-counter/loh-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7038858-08:00", + "timestamp": "2020-11-23T14:18:47.8527358-08:00", "name": "runtime-counter/", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:28.7038918-08:00", + "timestamp": "2020-11-23T14:18:47.8527435-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 86.0 }, { - "timestamp": "2020-11-23T11:24:28.7038975-08:00", + "timestamp": "2020-11-23T14:18:47.8527512-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 42378.0 + "value": 42355.0 }, { - "timestamp": "2020-11-23T11:24:28.7039031-08:00", + "timestamp": "2020-11-23T14:18:47.8527584-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 430.0 + "value": 429.0 }, { - "timestamp": "2020-11-23T11:24:29.7045164-08:00", + "timestamp": "2020-11-23T14:18:48.8575894-08:00", "name": "runtime-counter/cpu-usage", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:31.0254126Z", + "timestamp": "2020-11-23T22:18:50.6774443Z", "name": "benchmarks/working-set", "value": 36.0 }, { - "timestamp": "2020-11-23T19:24:31.0254126Z", + "timestamp": "2020-11-23T22:18:50.6774443Z", "name": "benchmarks/cpu", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:31.0254126Z", + "timestamp": "2020-11-23T22:18:50.6774443Z", "name": "benchmarks/cpu/raw", - "value": 1.53 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7045411-08:00", + "timestamp": "2020-11-23T14:18:48.857635-08:00", "name": "runtime-counter/working-set", - "value": 37.0 + "value": 36.0 }, { - "timestamp": "2020-11-23T11:24:29.7045534-08:00", + "timestamp": "2020-11-23T14:18:48.8576572-08:00", "name": "runtime-counter/gc-heap-size", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:29.7045685-08:00", + "timestamp": "2020-11-23T14:18:48.857678-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7045753-08:00", + "timestamp": "2020-11-23T14:18:48.8576909-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7045818-08:00", + "timestamp": "2020-11-23T14:18:48.8577037-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7045888-08:00", + "timestamp": "2020-11-23T14:18:48.8577164-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:29.7045991-08:00", + "timestamp": "2020-11-23T14:18:48.8577333-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7046103-08:00", + "timestamp": "2020-11-23T14:18:48.8577487-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7046239-08:00", + "timestamp": "2020-11-23T14:18:48.8577741-08:00", "name": "runtime-counter/threadpool-completed-items-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7046392-08:00", + "timestamp": "2020-11-23T14:18:48.8578007-08:00", "name": "runtime-counter/alloc-rate", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7046498-08:00", + "timestamp": "2020-11-23T14:18:48.8578142-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7046603-08:00", + "timestamp": "2020-11-23T14:18:48.8578236-08:00", "name": "runtime-counter/gc-fragmentation", "value": "NaN" }, { - "timestamp": "2020-11-23T11:24:29.7046782-08:00", + "timestamp": "2020-11-23T14:18:48.8578413-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7046894-08:00", + "timestamp": "2020-11-23T14:18:48.8578494-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7046997-08:00", + "timestamp": "2020-11-23T14:18:48.8578574-08:00", "name": "runtime-counter/gen-0-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7047094-08:00", + "timestamp": "2020-11-23T14:18:48.8578649-08:00", "name": "runtime-counter/gen-1-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7047251-08:00", + "timestamp": "2020-11-23T14:18:48.8578792-08:00", "name": "runtime-counter/loh-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7047313-08:00", + "timestamp": "2020-11-23T14:18:48.8578865-08:00", "name": "runtime-counter/", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:29.7047381-08:00", + "timestamp": "2020-11-23T14:18:48.8578942-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 86.0 }, { - "timestamp": "2020-11-23T11:24:29.7047444-08:00", + "timestamp": "2020-11-23T14:18:48.857902-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 42378.0 + "value": 42355.0 }, { - "timestamp": "2020-11-23T11:24:29.7047505-08:00", + "timestamp": "2020-11-23T14:18:48.857909-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 430.0 + "value": 429.0 }, { - "timestamp": "2020-11-23T11:24:30.6986247-08:00", + "timestamp": "2020-11-23T14:18:49.8573011-08:00", "name": "runtime-counter/cpu-usage", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:32.0381939Z", + "timestamp": "2020-11-23T22:18:51.681485Z", "name": "benchmarks/working-set", "value": 36.0 }, { - "timestamp": "2020-11-23T19:24:32.0381939Z", + "timestamp": "2020-11-23T22:18:51.681485Z", "name": "benchmarks/cpu", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:32.0381939Z", + "timestamp": "2020-11-23T22:18:51.681485Z", "name": "benchmarks/cpu/raw", - "value": 1.54 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:30.698691-08:00", + "timestamp": "2020-11-23T14:18:49.8573215-08:00", "name": "runtime-counter/working-set", - "value": 37.0 + "value": 36.0 }, { - "timestamp": "2020-11-23T11:24:30.6987171-08:00", + "timestamp": "2020-11-23T14:18:49.8573326-08:00", "name": "runtime-counter/gc-heap-size", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:30.69874-08:00", + "timestamp": "2020-11-23T14:18:49.8573696-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:30.6987864-08:00", + "timestamp": "2020-11-23T14:18:49.8573904-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:30.6988012-08:00", + "timestamp": "2020-11-23T14:18:49.8573968-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:30.6988165-08:00", + "timestamp": "2020-11-23T14:18:49.8574033-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:30.698836-08:00", + "timestamp": "2020-11-23T14:18:49.8574127-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:30.6988549-08:00", + "timestamp": "2020-11-23T14:18:49.8574218-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:30.698871-08:00", + "timestamp": "2020-11-23T14:18:49.8574287-08:00", "name": "runtime-counter/threadpool-completed-items-count", "value": 2.0 }, { - "timestamp": "2020-11-23T11:24:30.6988866-08:00", + "timestamp": "2020-11-23T14:18:49.8574353-08:00", "name": "runtime-counter/alloc-rate", - "value": 16336.0 + "value": 8168.0 }, { - "timestamp": "2020-11-23T11:24:30.698902-08:00", + "timestamp": "2020-11-23T14:18:49.857442-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:30.6989181-08:00", + "timestamp": "2020-11-23T14:18:49.8574488-08:00", "name": "runtime-counter/gc-fragmentation", "value": "NaN" }, { - "timestamp": "2020-11-23T11:24:30.6989324-08:00", + "timestamp": "2020-11-23T14:18:49.857455-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:30.6989465-08:00", + "timestamp": "2020-11-23T14:18:49.8574607-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:30.6989603-08:00", + "timestamp": "2020-11-23T14:18:49.8574664-08:00", "name": "runtime-counter/gen-0-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:30.6989733-08:00", + "timestamp": "2020-11-23T14:18:49.857472-08:00", "name": "runtime-counter/gen-1-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:30.6990001-08:00", + "timestamp": "2020-11-23T14:18:49.8574827-08:00", "name": "runtime-counter/loh-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:30.699013-08:00", + "timestamp": "2020-11-23T14:18:49.857488-08:00", "name": "runtime-counter/", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:30.6990265-08:00", + "timestamp": "2020-11-23T14:18:49.8574936-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 86.0 }, { - "timestamp": "2020-11-23T11:24:30.6990392-08:00", + "timestamp": "2020-11-23T14:18:49.857499-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 42518.0 + "value": 42495.0 }, { - "timestamp": "2020-11-23T11:24:30.6990526-08:00", + "timestamp": "2020-11-23T14:18:49.8575045-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 432.0 + "value": 431.0 }, { - "timestamp": "2020-11-23T11:24:31.6938535-08:00", + "timestamp": "2020-11-23T14:18:50.8531795-08:00", "name": "runtime-counter/cpu-usage", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:33.0490991Z", + "timestamp": "2020-11-23T22:18:52.7124682Z", "name": "benchmarks/working-set", "value": 36.0 }, { - "timestamp": "2020-11-23T19:24:33.0490991Z", + "timestamp": "2020-11-23T22:18:52.7124682Z", "name": "benchmarks/cpu", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:33.0490991Z", + "timestamp": "2020-11-23T22:18:52.7124682Z", "name": "benchmarks/cpu/raw", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.6938993-08:00", + "timestamp": "2020-11-23T14:18:50.8532007-08:00", "name": "runtime-counter/working-set", "value": 37.0 }, { - "timestamp": "2020-11-23T11:24:31.6939186-08:00", + "timestamp": "2020-11-23T14:18:50.8532161-08:00", "name": "runtime-counter/gc-heap-size", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:31.6939545-08:00", + "timestamp": "2020-11-23T14:18:50.8532255-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.69397-08:00", + "timestamp": "2020-11-23T14:18:50.8532301-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.6939869-08:00", + "timestamp": "2020-11-23T14:18:50.8532343-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.6940043-08:00", + "timestamp": "2020-11-23T14:18:50.8532392-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:31.6940243-08:00", + "timestamp": "2020-11-23T14:18:50.8532472-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.694043-08:00", + "timestamp": "2020-11-23T14:18:50.8532549-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.6940549-08:00", + "timestamp": "2020-11-23T14:18:50.8532605-08:00", "name": "runtime-counter/threadpool-completed-items-count", "value": 2.0 }, { - "timestamp": "2020-11-23T11:24:31.694065-08:00", + "timestamp": "2020-11-23T14:18:50.8532655-08:00", "name": "runtime-counter/alloc-rate", "value": 8168.0 }, { - "timestamp": "2020-11-23T11:24:31.6940756-08:00", + "timestamp": "2020-11-23T14:18:50.8532709-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.6940904-08:00", + "timestamp": "2020-11-23T14:18:50.8532764-08:00", "name": "runtime-counter/gc-fragmentation", "value": "NaN" }, { - "timestamp": "2020-11-23T11:24:31.6941036-08:00", + "timestamp": "2020-11-23T14:18:50.8532808-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.6941172-08:00", + "timestamp": "2020-11-23T14:18:50.8532853-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.6941304-08:00", + "timestamp": "2020-11-23T14:18:50.85329-08:00", "name": "runtime-counter/gen-0-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.6941409-08:00", + "timestamp": "2020-11-23T14:18:50.8532941-08:00", "name": "runtime-counter/gen-1-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.6941581-08:00", + "timestamp": "2020-11-23T14:18:50.8533025-08:00", "name": "runtime-counter/loh-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.6941667-08:00", + "timestamp": "2020-11-23T14:18:50.8533067-08:00", "name": "runtime-counter/", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:31.6941753-08:00", + "timestamp": "2020-11-23T14:18:50.8533114-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 86.0 }, { - "timestamp": "2020-11-23T11:24:31.6941838-08:00", + "timestamp": "2020-11-23T14:18:50.853316-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 43754.0 + "value": 43731.0 }, { - "timestamp": "2020-11-23T11:24:31.6942026-08:00", + "timestamp": "2020-11-23T14:18:50.8533205-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 448.0 + "value": 447.0 }, { - "timestamp": "2020-11-23T11:24:32.7051832-08:00", + "timestamp": "2020-11-23T14:18:51.8571056-08:00", "name": "runtime-counter/cpu-usage", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:34.0631957Z", + "timestamp": "2020-11-23T22:18:53.725847Z", "name": "benchmarks/working-set", "value": 36.0 }, { - "timestamp": "2020-11-23T19:24:34.0631957Z", + "timestamp": "2020-11-23T22:18:53.725847Z", "name": "benchmarks/cpu", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:34.0631957Z", + "timestamp": "2020-11-23T22:18:53.725847Z", "name": "benchmarks/cpu/raw", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7052148-08:00", + "timestamp": "2020-11-23T14:18:51.8571254-08:00", "name": "runtime-counter/working-set", - "value": 37.0 + "value": 36.0 }, { - "timestamp": "2020-11-23T11:24:32.7052318-08:00", + "timestamp": "2020-11-23T14:18:51.8571358-08:00", "name": "runtime-counter/gc-heap-size", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:32.7052485-08:00", + "timestamp": "2020-11-23T14:18:51.8571446-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7052599-08:00", + "timestamp": "2020-11-23T14:18:51.8571493-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7052708-08:00", + "timestamp": "2020-11-23T14:18:51.8571538-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7052827-08:00", + "timestamp": "2020-11-23T14:18:51.8571587-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:32.7052979-08:00", + "timestamp": "2020-11-23T14:18:51.8571664-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7053129-08:00", + "timestamp": "2020-11-23T14:18:51.8571739-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7053251-08:00", + "timestamp": "2020-11-23T14:18:51.8571793-08:00", "name": "runtime-counter/threadpool-completed-items-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:32.7053373-08:00", + "timestamp": "2020-11-23T14:18:51.8571841-08:00", "name": "runtime-counter/alloc-rate", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7053499-08:00", + "timestamp": "2020-11-23T14:18:51.8571893-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7053627-08:00", + "timestamp": "2020-11-23T14:18:51.8571951-08:00", "name": "runtime-counter/gc-fragmentation", "value": "NaN" }, { - "timestamp": "2020-11-23T11:24:32.7053739-08:00", + "timestamp": "2020-11-23T14:18:51.8571997-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.705396-08:00", + "timestamp": "2020-11-23T14:18:51.857209-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7054078-08:00", + "timestamp": "2020-11-23T14:18:51.8572134-08:00", "name": "runtime-counter/gen-0-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7054185-08:00", + "timestamp": "2020-11-23T14:18:51.8572176-08:00", "name": "runtime-counter/gen-1-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7054407-08:00", + "timestamp": "2020-11-23T14:18:51.8572258-08:00", "name": "runtime-counter/loh-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7054519-08:00", + "timestamp": "2020-11-23T14:18:51.8572305-08:00", "name": "runtime-counter/", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:32.7054632-08:00", + "timestamp": "2020-11-23T14:18:51.857235-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 86.0 }, { - "timestamp": "2020-11-23T11:24:32.7054745-08:00", + "timestamp": "2020-11-23T14:18:51.8572393-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 43811.0 + "value": 43788.0 }, { - "timestamp": "2020-11-23T11:24:32.7054859-08:00", + "timestamp": "2020-11-23T14:18:51.8572434-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 449.0 + "value": 448.0 }, { - "timestamp": "2020-11-23T11:24:33.7034603-08:00", + "timestamp": "2020-11-23T14:18:52.8551861-08:00", "name": "runtime-counter/cpu-usage", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:35.0756381Z", + "timestamp": "2020-11-23T22:18:54.7394462Z", "name": "benchmarks/working-set", "value": 36.0 }, { - "timestamp": "2020-11-23T19:24:35.0756381Z", + "timestamp": "2020-11-23T22:18:54.7394462Z", "name": "benchmarks/cpu", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:35.0756381Z", + "timestamp": "2020-11-23T22:18:54.7394462Z", "name": "benchmarks/cpu/raw", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.7035036-08:00", + "timestamp": "2020-11-23T14:18:52.8552042-08:00", "name": "runtime-counter/working-set", "value": 37.0 }, { - "timestamp": "2020-11-23T11:24:33.703527-08:00", + "timestamp": "2020-11-23T14:18:52.8552139-08:00", "name": "runtime-counter/gc-heap-size", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:33.7035459-08:00", + "timestamp": "2020-11-23T14:18:52.855222-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.7035584-08:00", + "timestamp": "2020-11-23T14:18:52.8552265-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.7035699-08:00", + "timestamp": "2020-11-23T14:18:52.855231-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.7035833-08:00", + "timestamp": "2020-11-23T14:18:52.8552358-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:33.7035999-08:00", + "timestamp": "2020-11-23T14:18:52.8552435-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.7036162-08:00", + "timestamp": "2020-11-23T14:18:52.8552511-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.7036318-08:00", + "timestamp": "2020-11-23T14:18:52.8552563-08:00", "name": "runtime-counter/threadpool-completed-items-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:33.7036514-08:00", + "timestamp": "2020-11-23T14:18:52.8552611-08:00", "name": "runtime-counter/alloc-rate", "value": 8168.0 }, { - "timestamp": "2020-11-23T11:24:33.7036656-08:00", + "timestamp": "2020-11-23T14:18:52.8552663-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.7036788-08:00", + "timestamp": "2020-11-23T14:18:52.8552717-08:00", "name": "runtime-counter/gc-fragmentation", "value": "NaN" }, { - "timestamp": "2020-11-23T11:24:33.7036898-08:00", + "timestamp": "2020-11-23T14:18:52.8552763-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.7037012-08:00", + "timestamp": "2020-11-23T14:18:52.8552809-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.7037127-08:00", + "timestamp": "2020-11-23T14:18:52.8552853-08:00", "name": "runtime-counter/gen-0-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.7037242-08:00", + "timestamp": "2020-11-23T14:18:52.8552895-08:00", "name": "runtime-counter/gen-1-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.7037466-08:00", + "timestamp": "2020-11-23T14:18:52.8552982-08:00", "name": "runtime-counter/loh-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.703758-08:00", + "timestamp": "2020-11-23T14:18:52.8553024-08:00", "name": "runtime-counter/", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:33.7037699-08:00", + "timestamp": "2020-11-23T14:18:52.8553069-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 86.0 }, { - "timestamp": "2020-11-23T11:24:33.7037821-08:00", + "timestamp": "2020-11-23T14:18:52.8553115-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 43843.0 + "value": 43820.0 }, { - "timestamp": "2020-11-23T11:24:33.7037938-08:00", + "timestamp": "2020-11-23T14:18:52.855316-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 450.0 + "value": 449.0 }, { - "timestamp": "2020-11-23T11:24:34.7056905-08:00", + "timestamp": "2020-11-23T14:18:53.8521895-08:00", "name": "runtime-counter/cpu-usage", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:36.0853169Z", - "name": "benchmarks/working-set", - "value": 36.0 - }, - { - "timestamp": "2020-11-23T19:24:36.0853169Z", - "name": "benchmarks/cpu", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T19:24:36.0853169Z", - "name": "benchmarks/cpu/raw", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:34.7061852-08:00", + "timestamp": "2020-11-23T14:18:53.8522138-08:00", "name": "runtime-counter/working-set", "value": 37.0 }, { - "timestamp": "2020-11-23T11:24:34.7063553-08:00", + "timestamp": "2020-11-23T14:18:53.8522283-08:00", "name": "runtime-counter/gc-heap-size", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:34.706399-08:00", + "timestamp": "2020-11-23T14:18:53.8522467-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.7067799-08:00", + "timestamp": "2020-11-23T14:18:53.8522547-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.706862-08:00", + "timestamp": "2020-11-23T14:18:53.8522617-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.7068906-08:00", + "timestamp": "2020-11-23T14:18:53.8522694-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:34.7069073-08:00", + "timestamp": "2020-11-23T14:18:53.8522807-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.70692-08:00", + "timestamp": "2020-11-23T14:18:53.8522915-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.7069288-08:00", + "timestamp": "2020-11-23T14:18:53.8522997-08:00", "name": "runtime-counter/threadpool-completed-items-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.7069378-08:00", + "timestamp": "2020-11-23T14:18:53.8523074-08:00", "name": "runtime-counter/alloc-rate", "value": 8168.0 }, { - "timestamp": "2020-11-23T11:24:34.7069505-08:00", + "timestamp": "2020-11-23T14:18:53.8523157-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.7069602-08:00", + "timestamp": "2020-11-23T14:18:53.8523244-08:00", "name": "runtime-counter/gc-fragmentation", "value": "NaN" }, { - "timestamp": "2020-11-23T11:24:34.7069807-08:00", + "timestamp": "2020-11-23T14:18:53.8523323-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.7069902-08:00", + "timestamp": "2020-11-23T14:18:53.8523397-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.7070018-08:00", + "timestamp": "2020-11-23T14:18:53.8523473-08:00", "name": "runtime-counter/gen-0-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.7070126-08:00", + "timestamp": "2020-11-23T14:18:53.8523544-08:00", "name": "runtime-counter/gen-1-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.7070481-08:00", + "timestamp": "2020-11-23T14:18:53.8523681-08:00", "name": "runtime-counter/loh-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.7070614-08:00", + "timestamp": "2020-11-23T14:18:53.8523747-08:00", "name": "runtime-counter/", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:34.7070698-08:00", + "timestamp": "2020-11-23T14:18:53.8523824-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 86.0 }, { - "timestamp": "2020-11-23T11:24:34.7070792-08:00", + "timestamp": "2020-11-23T14:18:53.8523898-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 43843.0 + "value": 43820.0 }, { - "timestamp": "2020-11-23T11:24:34.7071042-08:00", + "timestamp": "2020-11-23T14:18:53.8523971-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 450.0 + "value": 449.0 }, { - "timestamp": "2020-11-23T11:24:35.6989266-08:00", + "timestamp": "2020-11-23T14:18:54.8500457-08:00", "name": "runtime-counter/cpu-usage", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:37.1001939Z", + "timestamp": "2020-11-23T22:18:55.75512Z", "name": "benchmarks/working-set", - "value": 36.0 + "value": 72.0 }, { - "timestamp": "2020-11-23T19:24:37.1001939Z", + "timestamp": "2020-11-23T22:18:55.75512Z", "name": "benchmarks/cpu", - "value": 0.0 + "value": 35.0 }, { - "timestamp": "2020-11-23T19:24:37.1001939Z", + "timestamp": "2020-11-23T22:18:55.75512Z", "name": "benchmarks/cpu/raw", - "value": 0.0 + "value": 278.0 + }, + { + "timestamp": "2020-11-23T22:18:56.7693479Z", + "name": "benchmarks/working-set", + "value": 81.0 + }, + { + "timestamp": "2020-11-23T22:18:56.7693479Z", + "name": "benchmarks/cpu", + "value": 42.0 + }, + { + "timestamp": "2020-11-23T22:18:56.7693479Z", + "name": "benchmarks/cpu/raw", + "value": 333.0 }, { - "timestamp": "2020-11-23T11:24:35.6990371-08:00", + "timestamp": "2020-11-23T14:18:54.8500697-08:00", "name": "runtime-counter/working-set", - "value": 37.0 + "value": 39.0 }, { - "timestamp": "2020-11-23T11:24:35.6991243-08:00", + "timestamp": "2020-11-23T14:18:54.8500805-08:00", "name": "runtime-counter/gc-heap-size", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:35.6991704-08:00", + "timestamp": "2020-11-23T14:18:54.8500887-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:35.6992156-08:00", + "timestamp": "2020-11-23T14:18:54.8500934-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:35.6992363-08:00", + "timestamp": "2020-11-23T14:18:54.8500988-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:35.6992501-08:00", + "timestamp": "2020-11-23T14:18:54.8501035-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 4.0 + "value": 7.0 }, { - "timestamp": "2020-11-23T11:24:35.6992657-08:00", + "timestamp": "2020-11-23T14:18:54.8501107-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:35.6992841-08:00", + "timestamp": "2020-11-23T14:18:54.8501184-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:35.6993927-08:00", + "timestamp": "2020-11-23T14:18:54.850124-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 1.0 + "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:35.6994279-08:00", + "timestamp": "2020-11-23T14:18:54.8501293-08:00", "name": "runtime-counter/alloc-rate", - "value": 8168.0 + "value": 233048.0 }, { - "timestamp": "2020-11-23T11:24:35.6994447-08:00", + "timestamp": "2020-11-23T14:18:54.8501353-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:35.6994584-08:00", + "timestamp": "2020-11-23T14:18:54.8501409-08:00", "name": "runtime-counter/gc-fragmentation", "value": "NaN" }, { - "timestamp": "2020-11-23T11:24:35.6999539-08:00", + "timestamp": "2020-11-23T14:18:54.8501453-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:35.7000515-08:00", + "timestamp": "2020-11-23T14:18:54.8501499-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:35.7000891-08:00", + "timestamp": "2020-11-23T14:18:54.8501592-08:00", "name": "runtime-counter/gen-0-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:35.7001009-08:00", + "timestamp": "2020-11-23T14:18:54.8501636-08:00", "name": "runtime-counter/gen-1-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:35.7001213-08:00", + "timestamp": "2020-11-23T14:18:54.8501722-08:00", "name": "runtime-counter/loh-size", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:35.700207-08:00", + "timestamp": "2020-11-23T14:18:54.8501764-08:00", "name": "runtime-counter/", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:35.7002275-08:00", + "timestamp": "2020-11-23T14:18:54.850181-08:00", "name": "runtime-counter/assembly-count", "value": 88.0 }, { - "timestamp": "2020-11-23T11:24:35.7002391-08:00", + "timestamp": "2020-11-23T14:18:54.8501854-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 44006.0 + "value": 62755.0 }, { - "timestamp": "2020-11-23T11:24:35.7002658-08:00", + "timestamp": "2020-11-23T14:18:54.8501895-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 454.0 + "value": 623.0 }, { - "timestamp": "2020-11-23T11:24:36.7066043-08:00", + "timestamp": "2020-11-23T14:18:55.8504307-08:00", "name": "runtime-counter/cpu-usage", - "value": 0.0 + "value": 39.0 }, { - "timestamp": "2020-11-23T19:24:38.1086551Z", + "timestamp": "2020-11-23T22:18:57.7765608Z", "name": "benchmarks/working-set", - "value": 36.0 + "value": 81.0 }, { - "timestamp": "2020-11-23T19:24:38.1086551Z", + "timestamp": "2020-11-23T22:18:57.7765608Z", "name": "benchmarks/cpu", - "value": 0.0 + "value": 34.0 }, { - "timestamp": "2020-11-23T19:24:38.1086551Z", + "timestamp": "2020-11-23T22:18:57.7765608Z", "name": "benchmarks/cpu/raw", - "value": 0.0 + "value": 273.0 }, { - "timestamp": "2020-11-23T11:24:36.7066615-08:00", + "timestamp": "2020-11-23T14:18:55.8504553-08:00", "name": "runtime-counter/working-set", - "value": 37.0 + "value": 76.0 }, { - "timestamp": "2020-11-23T11:24:36.7066857-08:00", + "timestamp": "2020-11-23T14:18:55.8504675-08:00", "name": "runtime-counter/gc-heap-size", - "value": 1.0 + "value": 19.0 }, { - "timestamp": "2020-11-23T11:24:36.706704-08:00", + "timestamp": "2020-11-23T14:18:55.8504789-08:00", "name": "runtime-counter/gen-0-gc-count", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:36.7067165-08:00", + "timestamp": "2020-11-23T14:18:55.8504872-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:36.7067282-08:00", + "timestamp": "2020-11-23T14:18:55.8505184-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:36.7067412-08:00", + "timestamp": "2020-11-23T14:18:55.8505304-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 4.0 + "value": 27.0 }, { - "timestamp": "2020-11-23T11:24:36.7067571-08:00", + "timestamp": "2020-11-23T14:18:55.850544-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 3.0 }, { - "timestamp": "2020-11-23T11:24:36.7067735-08:00", + "timestamp": "2020-11-23T14:18:55.8505569-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 0.0 + "value": 3.0 }, { - "timestamp": "2020-11-23T11:24:36.7067859-08:00", + "timestamp": "2020-11-23T14:18:55.8505651-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 1.0 + "value": 113850.0 }, { - "timestamp": "2020-11-23T11:24:36.7067985-08:00", + "timestamp": "2020-11-23T14:18:55.8505732-08:00", "name": "runtime-counter/alloc-rate", - "value": 8168.0 + "value": 45473000.0 }, { - "timestamp": "2020-11-23T11:24:36.7068121-08:00", + "timestamp": "2020-11-23T14:18:55.8505823-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:36.7068257-08:00", + "timestamp": "2020-11-23T14:18:55.8505906-08:00", "name": "runtime-counter/gc-fragmentation", - "value": "NaN" + "value": 0.05089676753163245 }, { - "timestamp": "2020-11-23T11:24:36.7068371-08:00", + "timestamp": "2020-11-23T14:18:55.8505983-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:36.7068489-08:00", + "timestamp": "2020-11-23T14:18:55.8506063-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:36.7068602-08:00", + "timestamp": "2020-11-23T14:18:55.850614-08:00", "name": "runtime-counter/gen-0-size", - "value": 0.0 + "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:36.7068717-08:00", + "timestamp": "2020-11-23T14:18:55.8506215-08:00", "name": "runtime-counter/gen-1-size", - "value": 0.0 + "value": 3159552.0 }, { - "timestamp": "2020-11-23T11:24:36.7068947-08:00", + "timestamp": "2020-11-23T14:18:55.8506356-08:00", "name": "runtime-counter/loh-size", - "value": 0.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:36.706906-08:00", + "timestamp": "2020-11-23T14:18:55.8506432-08:00", "name": "runtime-counter/", - "value": 0.0 + "value": 524576.0 }, { - "timestamp": "2020-11-23T11:24:36.7069179-08:00", + "timestamp": "2020-11-23T14:18:55.8506503-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:36.7069293-08:00", + "timestamp": "2020-11-23T14:18:55.8506579-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 44065.0 + "value": 127630.0 }, { - "timestamp": "2020-11-23T11:24:36.7069404-08:00", + "timestamp": "2020-11-23T14:18:55.8506653-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 455.0 + "value": 1394.0 }, { - "timestamp": "2020-11-23T11:24:37.7034647-08:00", + "timestamp": "2020-11-23T14:18:56.8483431-08:00", "name": "runtime-counter/cpu-usage", - "value": 0.0 + "value": 39.0 }, { - "timestamp": "2020-11-23T19:24:39.1223058Z", + "timestamp": "2020-11-23T22:18:58.7955445Z", "name": "benchmarks/working-set", - "value": 36.0 + "value": 81.0 }, { - "timestamp": "2020-11-23T19:24:39.1223058Z", + "timestamp": "2020-11-23T22:18:58.7955445Z", "name": "benchmarks/cpu", - "value": 0.0 + "value": 31.0 }, { - "timestamp": "2020-11-23T19:24:39.1223058Z", + "timestamp": "2020-11-23T22:18:58.7955445Z", "name": "benchmarks/cpu/raw", - "value": 0.0 + "value": 247.0 }, { - "timestamp": "2020-11-23T11:24:37.7035104-08:00", + "timestamp": "2020-11-23T14:18:56.8483684-08:00", "name": "runtime-counter/working-set", - "value": 37.0 + "value": 84.0 }, { - "timestamp": "2020-11-23T11:24:37.7035311-08:00", + "timestamp": "2020-11-23T14:18:56.8483809-08:00", "name": "runtime-counter/gc-heap-size", - "value": 1.0 + "value": 8.0 }, { - "timestamp": "2020-11-23T11:24:37.7035853-08:00", + "timestamp": "2020-11-23T14:18:56.8483925-08:00", "name": "runtime-counter/gen-0-gc-count", - "value": 0.0 + "value": 2.0 }, { - "timestamp": "2020-11-23T11:24:37.7036066-08:00", + "timestamp": "2020-11-23T14:18:56.8483998-08:00", "name": "runtime-counter/gen-1-gc-count", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:37.7036317-08:00", + "timestamp": "2020-11-23T14:18:56.8484069-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:37.7036463-08:00", + "timestamp": "2020-11-23T14:18:56.8484141-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 4.0 + "value": 16.0 }, { - "timestamp": "2020-11-23T11:24:37.7036637-08:00", + "timestamp": "2020-11-23T14:18:56.8484267-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 3.0 }, { - "timestamp": "2020-11-23T11:24:37.7036809-08:00", + "timestamp": "2020-11-23T14:18:56.8484372-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:37.7036944-08:00", + "timestamp": "2020-11-23T14:18:56.8484455-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 0.0 + "value": 167572.0 }, { - "timestamp": "2020-11-23T11:24:37.7037072-08:00", + "timestamp": "2020-11-23T14:18:56.848453-08:00", "name": "runtime-counter/alloc-rate", - "value": 8168.0 + "value": 55365752.0 }, { - "timestamp": "2020-11-23T11:24:37.7037216-08:00", + "timestamp": "2020-11-23T14:18:56.848461-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:37.703736-08:00", + "timestamp": "2020-11-23T14:18:56.8484692-08:00", "name": "runtime-counter/gc-fragmentation", - "value": "NaN" + "value": 0.05493105892179169 }, { - "timestamp": "2020-11-23T11:24:37.7037484-08:00", + "timestamp": "2020-11-23T14:18:56.8484768-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:37.7037612-08:00", + "timestamp": "2020-11-23T14:18:56.8484838-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:37.7037741-08:00", + "timestamp": "2020-11-23T14:18:56.8484901-08:00", "name": "runtime-counter/gen-0-size", - "value": 0.0 + "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:37.7037862-08:00", + "timestamp": "2020-11-23T14:18:56.8484963-08:00", "name": "runtime-counter/gen-1-size", - "value": 0.0 + "value": 60144.0 }, { - "timestamp": "2020-11-23T11:24:37.7038101-08:00", + "timestamp": "2020-11-23T14:18:56.84851-08:00", "name": "runtime-counter/loh-size", - "value": 0.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:37.7038232-08:00", + "timestamp": "2020-11-23T14:18:56.848516-08:00", "name": "runtime-counter/", - "value": 0.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:37.7038353-08:00", + "timestamp": "2020-11-23T14:18:56.8485224-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:37.7038477-08:00", + "timestamp": "2020-11-23T14:18:56.8485294-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 44065.0 + "value": 130252.0 }, { - "timestamp": "2020-11-23T11:24:37.7038725-08:00", + "timestamp": "2020-11-23T14:18:56.8485361-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 455.0 + "value": 1445.0 }, { - "timestamp": "2020-11-23T11:24:38.7010549-08:00", + "timestamp": "2020-11-23T14:18:57.8567626-08:00", "name": "runtime-counter/cpu-usage", - "value": 0.0 + "value": 33.0 }, { - "timestamp": "2020-11-23T19:24:40.1381149Z", + "timestamp": "2020-11-23T22:18:59.8250475Z", "name": "benchmarks/working-set", - "value": 36.0 + "value": 81.0 }, { - "timestamp": "2020-11-23T19:24:40.1381149Z", + "timestamp": "2020-11-23T22:18:59.8250475Z", "name": "benchmarks/cpu", - "value": 0.0 + "value": 32.0 }, { - "timestamp": "2020-11-23T19:24:40.1381149Z", + "timestamp": "2020-11-23T22:18:59.8250475Z", "name": "benchmarks/cpu/raw", - "value": 1.54 + "value": 253.0 }, { - "timestamp": "2020-11-23T11:24:38.7010951-08:00", + "timestamp": "2020-11-23T14:18:57.8567949-08:00", "name": "runtime-counter/working-set", - "value": 37.0 + "value": 84.0 }, { - "timestamp": "2020-11-23T11:24:38.7011137-08:00", + "timestamp": "2020-11-23T14:18:57.8568065-08:00", "name": "runtime-counter/gc-heap-size", - "value": 1.0 + "value": 33.0 }, { - "timestamp": "2020-11-23T11:24:38.7011288-08:00", + "timestamp": "2020-11-23T14:18:57.8568189-08:00", "name": "runtime-counter/gen-0-gc-count", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:38.7011401-08:00", + "timestamp": "2020-11-23T14:18:57.8568259-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:38.7011509-08:00", + "timestamp": "2020-11-23T14:18:57.856833-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:38.7011621-08:00", + "timestamp": "2020-11-23T14:18:57.8568402-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 4.0 + "value": 23.0 }, { - "timestamp": "2020-11-23T11:24:38.7011774-08:00", + "timestamp": "2020-11-23T14:18:57.8568556-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:38.7011917-08:00", + "timestamp": "2020-11-23T14:18:57.8568803-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:38.701203-08:00", + "timestamp": "2020-11-23T14:18:57.8568915-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 0.0 + "value": 170551.0 }, { - "timestamp": "2020-11-23T11:24:38.701214-08:00", + "timestamp": "2020-11-23T14:18:57.8568995-08:00", "name": "runtime-counter/alloc-rate", - "value": 0.0 + "value": 56221968.0 }, { - "timestamp": "2020-11-23T11:24:38.7012269-08:00", + "timestamp": "2020-11-23T14:18:57.8569084-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:38.70124-08:00", + "timestamp": "2020-11-23T14:18:57.8569171-08:00", "name": "runtime-counter/gc-fragmentation", - "value": "NaN" + "value": 0.05491564298942051 }, { - "timestamp": "2020-11-23T11:24:38.7012497-08:00", + "timestamp": "2020-11-23T14:18:57.8569241-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:38.7012603-08:00", + "timestamp": "2020-11-23T14:18:57.8569314-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:38.7012707-08:00", + "timestamp": "2020-11-23T14:18:57.8569386-08:00", "name": "runtime-counter/gen-0-size", - "value": 0.0 + "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:38.7012925-08:00", + "timestamp": "2020-11-23T14:18:57.8569454-08:00", "name": "runtime-counter/gen-1-size", - "value": 0.0 + "value": 61440.0 }, { - "timestamp": "2020-11-23T11:24:38.7013154-08:00", + "timestamp": "2020-11-23T14:18:57.8569597-08:00", "name": "runtime-counter/loh-size", - "value": 0.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:38.701324-08:00", + "timestamp": "2020-11-23T14:18:57.8569664-08:00", "name": "runtime-counter/", - "value": 0.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:38.7013318-08:00", + "timestamp": "2020-11-23T14:18:57.8569735-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:38.7013389-08:00", + "timestamp": "2020-11-23T14:18:57.8569809-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 44065.0 + "value": 130252.0 }, { - "timestamp": "2020-11-23T11:24:38.7013455-08:00", + "timestamp": "2020-11-23T14:18:57.8569881-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 455.0 + "value": 1445.0 }, { - "timestamp": "2020-11-23T11:24:39.6972919-08:00", + "timestamp": "2020-11-23T14:18:58.8611108-08:00", "name": "runtime-counter/cpu-usage", - "value": 0.0 + "value": 32.0 }, { - "timestamp": "2020-11-23T19:24:41.1487023Z", + "timestamp": "2020-11-23T22:19:00.8387411Z", "name": "benchmarks/working-set", - "value": 36.0 + "value": 83.0 }, { - "timestamp": "2020-11-23T19:24:41.1487023Z", + "timestamp": "2020-11-23T22:19:00.8387411Z", "name": "benchmarks/cpu", - "value": 0.0 + "value": 29.0 }, { - "timestamp": "2020-11-23T19:24:41.1487023Z", + "timestamp": "2020-11-23T22:19:00.8387411Z", "name": "benchmarks/cpu/raw", - "value": 1.55 + "value": 231.0 }, { - "timestamp": "2020-11-23T11:24:39.6973442-08:00", + "timestamp": "2020-11-23T14:18:58.8611725-08:00", "name": "runtime-counter/working-set", - "value": 37.0 + "value": 84.0 }, { - "timestamp": "2020-11-23T11:24:39.6973647-08:00", + "timestamp": "2020-11-23T14:18:58.8611903-08:00", "name": "runtime-counter/gc-heap-size", - "value": 1.0 + "value": 9.0 }, { - "timestamp": "2020-11-23T11:24:39.6973812-08:00", + "timestamp": "2020-11-23T14:18:58.8612059-08:00", "name": "runtime-counter/gen-0-gc-count", - "value": 0.0 + "value": 2.0 }, { - "timestamp": "2020-11-23T11:24:39.697393-08:00", + "timestamp": "2020-11-23T14:18:58.8612173-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:39.6974037-08:00", + "timestamp": "2020-11-23T14:18:58.8612275-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:39.6974152-08:00", + "timestamp": "2020-11-23T14:18:58.8612386-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 4.0 + "value": 24.0 }, { - "timestamp": "2020-11-23T11:24:39.6974302-08:00", + "timestamp": "2020-11-23T14:18:58.8612554-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 3.0 }, { - "timestamp": "2020-11-23T11:24:39.6974447-08:00", + "timestamp": "2020-11-23T14:18:58.8612702-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 0.0 + "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:39.697456-08:00", + "timestamp": "2020-11-23T14:18:58.8612823-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 0.0 + "value": 125017.0 }, { - "timestamp": "2020-11-23T11:24:39.6974669-08:00", + "timestamp": "2020-11-23T14:18:58.8612937-08:00", "name": "runtime-counter/alloc-rate", - "value": 8168.0 + "value": 42419928.0 }, { - "timestamp": "2020-11-23T11:24:39.6974759-08:00", + "timestamp": "2020-11-23T14:18:58.8613057-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:39.6974845-08:00", + "timestamp": "2020-11-23T14:18:58.8613179-08:00", "name": "runtime-counter/gc-fragmentation", - "value": "NaN" + "value": 0.05489766866745867 }, { - "timestamp": "2020-11-23T11:24:39.6974914-08:00", + "timestamp": "2020-11-23T14:18:58.8613284-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:39.6974984-08:00", + "timestamp": "2020-11-23T14:18:58.8613384-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:39.6975053-08:00", + "timestamp": "2020-11-23T14:18:58.8613488-08:00", "name": "runtime-counter/gen-0-size", - "value": 0.0 + "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:39.6975121-08:00", + "timestamp": "2020-11-23T14:18:58.8613592-08:00", "name": "runtime-counter/gen-1-size", - "value": 0.0 + "value": 62952.0 }, { - "timestamp": "2020-11-23T11:24:39.6975258-08:00", + "timestamp": "2020-11-23T14:18:58.8613794-08:00", "name": "runtime-counter/loh-size", - "value": 0.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:39.6975326-08:00", + "timestamp": "2020-11-23T14:18:58.8613891-08:00", "name": "runtime-counter/", - "value": 0.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:39.6975395-08:00", + "timestamp": "2020-11-23T14:18:58.8613985-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:39.6975462-08:00", + "timestamp": "2020-11-23T14:18:58.8614088-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 44065.0 + "value": 130252.0 }, { - "timestamp": "2020-11-23T11:24:39.6975531-08:00", + "timestamp": "2020-11-23T14:18:58.8614186-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 455.0 + "value": 1445.0 }, { - "timestamp": "2020-11-23T11:24:40.6932828-08:00", + "timestamp": "2020-11-23T14:18:59.8560429-08:00", "name": "runtime-counter/cpu-usage", - "value": 0.0 + "value": 30.0 }, { - "timestamp": "2020-11-23T19:24:42.1705338Z", + "timestamp": "2020-11-23T22:19:01.8499531Z", "name": "benchmarks/working-set", - "value": 36.0 + "value": 86.0 }, { - "timestamp": "2020-11-23T19:24:42.1705338Z", + "timestamp": "2020-11-23T22:19:01.8499531Z", "name": "benchmarks/cpu", - "value": 0.0 + "value": 29.0 }, { - "timestamp": "2020-11-23T19:24:42.1705338Z", + "timestamp": "2020-11-23T22:19:01.8499531Z", "name": "benchmarks/cpu/raw", - "value": 0.0 + "value": 235.0 }, { - "timestamp": "2020-11-23T11:24:40.6933634-08:00", + "timestamp": "2020-11-23T14:18:59.8560752-08:00", "name": "runtime-counter/working-set", - "value": 37.0 + "value": 84.0 }, { - "timestamp": "2020-11-23T11:24:40.6933859-08:00", + "timestamp": "2020-11-23T14:18:59.8560931-08:00", "name": "runtime-counter/gc-heap-size", - "value": 1.0 + "value": 12.0 }, { - "timestamp": "2020-11-23T11:24:40.6934051-08:00", + "timestamp": "2020-11-23T14:18:59.8561098-08:00", "name": "runtime-counter/gen-0-gc-count", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:40.6934166-08:00", + "timestamp": "2020-11-23T14:18:59.8561222-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:40.6934496-08:00", + "timestamp": "2020-11-23T14:18:59.8561332-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:40.6934622-08:00", + "timestamp": "2020-11-23T14:18:59.8561454-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 4.0 + "value": 16.0 }, { - "timestamp": "2020-11-23T11:24:40.6934806-08:00", + "timestamp": "2020-11-23T14:18:59.8561634-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:40.693498-08:00", + "timestamp": "2020-11-23T14:18:59.8561795-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 0.0 + "value": 2.0 }, { - "timestamp": "2020-11-23T11:24:40.6935116-08:00", + "timestamp": "2020-11-23T14:18:59.8561927-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 2.0 + "value": 103187.0 }, { - "timestamp": "2020-11-23T11:24:40.6935275-08:00", + "timestamp": "2020-11-23T14:18:59.8562052-08:00", "name": "runtime-counter/alloc-rate", - "value": 16336.0 + "value": 36012136.0 }, { - "timestamp": "2020-11-23T11:24:40.6935424-08:00", + "timestamp": "2020-11-23T14:18:59.856218-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:40.6935554-08:00", + "timestamp": "2020-11-23T14:18:59.8562311-08:00", "name": "runtime-counter/gc-fragmentation", - "value": "NaN" + "value": 0.05487742598904875 }, { - "timestamp": "2020-11-23T11:24:40.6935673-08:00", + "timestamp": "2020-11-23T14:18:59.8562429-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:40.693579-08:00", + "timestamp": "2020-11-23T14:18:59.8562548-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:40.6935886-08:00", + "timestamp": "2020-11-23T14:18:59.8562665-08:00", "name": "runtime-counter/gen-0-size", - "value": 0.0 + "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:40.693596-08:00", + "timestamp": "2020-11-23T14:18:59.8562775-08:00", "name": "runtime-counter/gen-1-size", - "value": 0.0 + "value": 64656.0 }, { - "timestamp": "2020-11-23T11:24:40.6936112-08:00", + "timestamp": "2020-11-23T14:18:59.8562999-08:00", "name": "runtime-counter/loh-size", - "value": 0.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:40.6936184-08:00", + "timestamp": "2020-11-23T14:18:59.8563113-08:00", "name": "runtime-counter/", - "value": 0.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:40.6936264-08:00", + "timestamp": "2020-11-23T14:18:59.8563228-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:40.6936338-08:00", + "timestamp": "2020-11-23T14:18:59.8563346-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 44628.0 + "value": 130630.0 }, { - "timestamp": "2020-11-23T11:24:40.6936412-08:00", + "timestamp": "2020-11-23T14:18:59.8563456-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 464.0 + "value": 1452.0 }, { - "timestamp": "2020-11-23T11:24:41.7045169-08:00", + "timestamp": "2020-11-23T14:19:00.856844-08:00", "name": "runtime-counter/cpu-usage", - "value": 0.0 + "value": 29.0 }, { - "timestamp": "2020-11-23T19:24:43.1898881Z", + "timestamp": "2020-11-23T22:19:02.8703945Z", "name": "benchmarks/working-set", - "value": 59.0 + "value": 87.0 }, { - "timestamp": "2020-11-23T19:24:43.1898881Z", + "timestamp": "2020-11-23T22:19:02.8703945Z", "name": "benchmarks/cpu", - "value": 24.0 + "value": 29.0 }, { - "timestamp": "2020-11-23T19:24:43.1898881Z", + "timestamp": "2020-11-23T22:19:02.8703945Z", "name": "benchmarks/cpu/raw", - "value": 193.14 + "value": 228.0 }, { - "timestamp": "2020-11-23T11:24:41.7045693-08:00", + "timestamp": "2020-11-23T14:19:00.856883-08:00", "name": "runtime-counter/working-set", - "value": 37.0 + "value": 86.0 }, { - "timestamp": "2020-11-23T11:24:41.7045963-08:00", + "timestamp": "2020-11-23T14:19:00.8569008-08:00", "name": "runtime-counter/gc-heap-size", - "value": 1.0 + "value": 13.0 }, { - "timestamp": "2020-11-23T11:24:41.7046142-08:00", + "timestamp": "2020-11-23T14:19:00.8569175-08:00", "name": "runtime-counter/gen-0-gc-count", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:41.7046253-08:00", + "timestamp": "2020-11-23T14:19:00.8569296-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:41.7046331-08:00", + "timestamp": "2020-11-23T14:19:00.8569408-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:41.7046418-08:00", + "timestamp": "2020-11-23T14:19:00.8569527-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 4.0 + "value": 16.0 }, { - "timestamp": "2020-11-23T11:24:41.7046539-08:00", + "timestamp": "2020-11-23T14:19:00.8569702-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 25.0 }, { - "timestamp": "2020-11-23T11:24:41.7046656-08:00", + "timestamp": "2020-11-23T14:19:00.8569863-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:41.7046744-08:00", + "timestamp": "2020-11-23T14:19:00.8569993-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 0.0 + "value": 78908.0 }, { - "timestamp": "2020-11-23T11:24:41.7046823-08:00", + "timestamp": "2020-11-23T14:19:00.8570115-08:00", "name": "runtime-counter/alloc-rate", - "value": 0.0 + "value": 32954312.0 }, { - "timestamp": "2020-11-23T11:24:41.7046912-08:00", + "timestamp": "2020-11-23T14:19:00.8570244-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:41.7047002-08:00", + "timestamp": "2020-11-23T14:19:00.8570379-08:00", "name": "runtime-counter/gc-fragmentation", - "value": "NaN" + "value": 0.03227856092603831 }, { - "timestamp": "2020-11-23T11:24:41.7047076-08:00", + "timestamp": "2020-11-23T14:19:00.8570494-08:00", "name": "runtime-counter/exception-count", - "value": 0.0 + "value": 1020.0 }, { - "timestamp": "2020-11-23T11:24:41.7047166-08:00", + "timestamp": "2020-11-23T14:19:00.8570608-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:41.7047277-08:00", + "timestamp": "2020-11-23T14:19:00.8570721-08:00", "name": "runtime-counter/gen-0-size", - "value": 0.0 + "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:41.7047388-08:00", + "timestamp": "2020-11-23T14:19:00.857083-08:00", "name": "runtime-counter/gen-1-size", - "value": 0.0 + "value": 3300056.0 }, { - "timestamp": "2020-11-23T11:24:41.7047639-08:00", + "timestamp": "2020-11-23T14:19:00.8571049-08:00", "name": "runtime-counter/loh-size", - "value": 0.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:41.7047713-08:00", + "timestamp": "2020-11-23T14:19:00.8571157-08:00", "name": "runtime-counter/", - "value": 0.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:41.7047789-08:00", + "timestamp": "2020-11-23T14:19:00.8571269-08:00", "name": "runtime-counter/assembly-count", - "value": 88.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:41.7047862-08:00", + "timestamp": "2020-11-23T14:19:00.8571385-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 44628.0 + "value": 151790.0 }, { - "timestamp": "2020-11-23T11:24:41.7047933-08:00", + "timestamp": "2020-11-23T14:19:00.85715-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 464.0 + "value": 1700.0 }, { - "timestamp": "2020-11-23T11:24:43.0642395-08:00", + "timestamp": "2020-11-23T14:19:01.8556289-08:00", "name": "runtime-counter/cpu-usage", - "value": 8.0 + "value": 29.0 }, { - "timestamp": "2020-11-23T19:24:44.2755475Z", + "timestamp": "2020-11-23T22:19:03.8989548Z", "name": "benchmarks/working-set", - "value": 74.0 + "value": 87.0 }, { - "timestamp": "2020-11-23T19:24:44.2755475Z", + "timestamp": "2020-11-23T22:19:03.8989548Z", "name": "benchmarks/cpu", - "value": 26.0 + "value": 37.0 }, { - "timestamp": "2020-11-23T19:24:44.2755475Z", + "timestamp": "2020-11-23T22:19:03.8989548Z", "name": "benchmarks/cpu/raw", - "value": 210.13 + "value": 293.0 }, { - "timestamp": "2020-11-23T11:24:43.0649084-08:00", + "timestamp": "2020-11-23T14:19:01.8556833-08:00", "name": "runtime-counter/working-set", - "value": 58.0 + "value": 89.0 }, { - "timestamp": "2020-11-23T11:24:43.0650387-08:00", + "timestamp": "2020-11-23T14:19:01.8557034-08:00", "name": "runtime-counter/gc-heap-size", - "value": 17.0 + "value": 11.0 }, { - "timestamp": "2020-11-23T11:24:43.0650575-08:00", + "timestamp": "2020-11-23T14:19:01.855721-08:00", "name": "runtime-counter/gen-0-gc-count", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:43.0650685-08:00", + "timestamp": "2020-11-23T14:19:01.855732-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:43.0653228-08:00", + "timestamp": "2020-11-23T14:19:01.8557412-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:43.0653635-08:00", + "timestamp": "2020-11-23T14:19:01.8557513-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 17.0 + "value": 16.0 }, { - "timestamp": "2020-11-23T11:24:43.06539-08:00", + "timestamp": "2020-11-23T14:19:01.8557726-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 2.0 + "value": 3.0 }, { - "timestamp": "2020-11-23T11:24:43.0661084-08:00", + "timestamp": "2020-11-23T14:19:01.8557887-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 92.0 + "value": 3.0 }, { - "timestamp": "2020-11-23T11:24:43.0661425-08:00", + "timestamp": "2020-11-23T14:19:01.8558017-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 23306.0 + "value": 96367.0 }, { - "timestamp": "2020-11-23T11:24:43.0661567-08:00", + "timestamp": "2020-11-23T14:19:01.855812-08:00", "name": "runtime-counter/alloc-rate", - "value": 16073000.0 + "value": 34047184.0 }, { - "timestamp": "2020-11-23T11:24:43.0661751-08:00", + "timestamp": "2020-11-23T14:19:01.8558242-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:43.066189-08:00", + "timestamp": "2020-11-23T14:19:01.8558363-08:00", "name": "runtime-counter/gc-fragmentation", - "value": "NaN" + "value": 0.03227290867479496 }, { - "timestamp": "2020-11-23T11:24:43.0662008-08:00", + "timestamp": "2020-11-23T14:19:01.8558454-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:43.0662131-08:00", + "timestamp": "2020-11-23T14:19:01.8558556-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:43.0662353-08:00", + "timestamp": "2020-11-23T14:19:01.8558744-08:00", "name": "runtime-counter/gen-0-size", - "value": 0.0 + "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:43.0662467-08:00", + "timestamp": "2020-11-23T14:19:01.8558832-08:00", "name": "runtime-counter/gen-1-size", - "value": 0.0 + "value": 3301432.0 }, { - "timestamp": "2020-11-23T11:24:43.0662708-08:00", + "timestamp": "2020-11-23T14:19:01.8559022-08:00", "name": "runtime-counter/loh-size", - "value": 0.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:43.0662821-08:00", + "timestamp": "2020-11-23T14:19:01.8559118-08:00", "name": "runtime-counter/", - "value": 0.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:43.066294-08:00", + "timestamp": "2020-11-23T14:19:01.855921-08:00", "name": "runtime-counter/assembly-count", - "value": 93.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:43.0663056-08:00", + "timestamp": "2020-11-23T14:19:01.8559307-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 92226.0 + "value": 151790.0 }, { - "timestamp": "2020-11-23T11:24:43.066317-08:00", + "timestamp": "2020-11-23T14:19:01.855941-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1033.0 + "value": 1700.0 }, { - "timestamp": "2020-11-23T11:24:43.9735385-08:00", + "timestamp": "2020-11-23T14:19:02.8579091-08:00", "name": "runtime-counter/cpu-usage", - "value": 30.0 + "value": 27.0 }, { - "timestamp": "2020-11-23T19:24:45.3270379Z", + "timestamp": "2020-11-23T22:19:04.9136939Z", "name": "benchmarks/working-set", - "value": 82.0 + "value": 87.0 }, { - "timestamp": "2020-11-23T19:24:45.3270379Z", + "timestamp": "2020-11-23T22:19:04.9136939Z", "name": "benchmarks/cpu", - "value": 19.0 + "value": 33.0 }, { - "timestamp": "2020-11-23T19:24:45.3270379Z", + "timestamp": "2020-11-23T22:19:04.9136939Z", "name": "benchmarks/cpu/raw", - "value": 153.06 + "value": 265.0 }, { - "timestamp": "2020-11-23T11:24:43.9736034-08:00", + "timestamp": "2020-11-23T14:19:02.8579819-08:00", "name": "runtime-counter/working-set", - "value": 76.0 + "value": 90.0 }, { - "timestamp": "2020-11-23T11:24:43.9736312-08:00", + "timestamp": "2020-11-23T14:19:02.8580434-08:00", "name": "runtime-counter/gc-heap-size", - "value": 10.0 + "value": 13.0 }, { - "timestamp": "2020-11-23T11:24:43.9736493-08:00", + "timestamp": "2020-11-23T14:19:02.8580682-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:43.973663-08:00", + "timestamp": "2020-11-23T14:19:02.8580826-08:00", "name": "runtime-counter/gen-1-gc-count", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:43.9736755-08:00", + "timestamp": "2020-11-23T14:19:02.8580937-08:00", "name": "runtime-counter/gen-2-gc-count", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:43.9736879-08:00", + "timestamp": "2020-11-23T14:19:02.858106-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 24.0 + "value": 16.0 }, { - "timestamp": "2020-11-23T11:24:43.9737079-08:00", + "timestamp": "2020-11-23T14:19:02.8581241-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:43.9737393-08:00", + "timestamp": "2020-11-23T14:19:02.85814-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:43.9737542-08:00", + "timestamp": "2020-11-23T14:19:02.8581533-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 41833.0 + "value": 81046.0 }, { - "timestamp": "2020-11-23T11:24:43.9737664-08:00", + "timestamp": "2020-11-23T14:19:02.8581655-08:00", "name": "runtime-counter/alloc-rate", - "value": 21909208.0 + "value": 31955040.0 }, { - "timestamp": "2020-11-23T11:24:43.9737806-08:00", + "timestamp": "2020-11-23T14:19:02.8581783-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:43.9737939-08:00", + "timestamp": "2020-11-23T14:19:02.8581916-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.01784203264915321 + "value": 0.06266548681098093 }, { - "timestamp": "2020-11-23T11:24:43.9738055-08:00", + "timestamp": "2020-11-23T14:19:02.8582031-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:43.9738188-08:00", + "timestamp": "2020-11-23T14:19:02.8582146-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:43.9738344-08:00", + "timestamp": "2020-11-23T14:19:02.8582261-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:43.9738482-08:00", + "timestamp": "2020-11-23T14:19:02.8582369-08:00", "name": "runtime-counter/gen-1-size", - "value": 3213800.0 + "value": 936.0 }, { - "timestamp": "2020-11-23T11:24:43.9738701-08:00", + "timestamp": "2020-11-23T14:19:02.8582592-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:43.9738804-08:00", + "timestamp": "2020-11-23T14:19:02.8582704-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:43.9738913-08:00", + "timestamp": "2020-11-23T14:19:02.8582818-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:43.9739024-08:00", + "timestamp": "2020-11-23T14:19:02.8582934-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 128392.0 + "value": 151790.0 }, { - "timestamp": "2020-11-23T11:24:43.9739151-08:00", + "timestamp": "2020-11-23T14:19:02.8583048-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1394.0 + "value": 1700.0 }, { - "timestamp": "2020-11-23T11:24:44.7604364-08:00", + "timestamp": "2020-11-23T14:19:03.8579496-08:00", "name": "runtime-counter/cpu-usage", - "value": 23.0 + "value": 38.0 }, { - "timestamp": "2020-11-23T19:24:46.4034087Z", - "name": "benchmarks/working-set", - "value": 82.0 - }, - { - "timestamp": "2020-11-23T19:24:46.4034087Z", - "name": "benchmarks/cpu", - "value": 18.0 - }, - { - "timestamp": "2020-11-23T19:24:46.4034087Z", - "name": "benchmarks/cpu/raw", - "value": 146.62 - }, - { - "timestamp": "2020-11-23T11:24:44.7605117-08:00", + "timestamp": "2020-11-23T14:19:03.8579846-08:00", "name": "runtime-counter/working-set", - "value": 80.0 + "value": 90.0 }, { - "timestamp": "2020-11-23T11:24:44.7605336-08:00", + "timestamp": "2020-11-23T14:19:03.8580011-08:00", "name": "runtime-counter/gc-heap-size", - "value": 32.0 + "value": 13.0 }, { - "timestamp": "2020-11-23T11:24:44.7605514-08:00", + "timestamp": "2020-11-23T14:19:03.8580176-08:00", "name": "runtime-counter/gen-0-gc-count", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:44.7605641-08:00", + "timestamp": "2020-11-23T14:19:03.858029-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:44.7606479-08:00", + "timestamp": "2020-11-23T14:19:03.8580408-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:44.7606699-08:00", + "timestamp": "2020-11-23T14:19:03.8580527-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 16.0 }, { - "timestamp": "2020-11-23T11:24:44.7606914-08:00", + "timestamp": "2020-11-23T14:19:03.8580707-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 6.0 }, { - "timestamp": "2020-11-23T11:24:44.7607314-08:00", + "timestamp": "2020-11-23T14:19:03.8580861-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 3.0 + "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:44.7607572-08:00", + "timestamp": "2020-11-23T14:19:03.8580993-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 43323.0 + "value": 108573.0 }, { - "timestamp": "2020-11-23T11:24:44.7607813-08:00", + "timestamp": "2020-11-23T14:19:03.8581109-08:00", "name": "runtime-counter/alloc-rate", - "value": 22124560.0 + "value": 36029024.0 }, { - "timestamp": "2020-11-23T11:24:44.7608069-08:00", + "timestamp": "2020-11-23T14:19:03.8581241-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:44.7608229-08:00", + "timestamp": "2020-11-23T14:19:03.858137-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.01784203264915321 + "value": 0.06264920062029593 }, { - "timestamp": "2020-11-23T11:24:44.7608456-08:00", + "timestamp": "2020-11-23T14:19:03.8581484-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:44.7608887-08:00", + "timestamp": "2020-11-23T14:19:03.8581602-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:44.7609391-08:00", + "timestamp": "2020-11-23T14:19:03.8581713-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:44.7611783-08:00", + "timestamp": "2020-11-23T14:19:03.8581823-08:00", "name": "runtime-counter/gen-1-size", - "value": 3213800.0 + "value": 2144.0 }, { - "timestamp": "2020-11-23T11:24:44.7612964-08:00", + "timestamp": "2020-11-23T14:19:03.858204-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:44.7613446-08:00", + "timestamp": "2020-11-23T14:19:03.8582146-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:44.7614037-08:00", + "timestamp": "2020-11-23T14:19:03.8582262-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:44.7614644-08:00", + "timestamp": "2020-11-23T14:19:03.8582375-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 131993.0 + "value": 151790.0 }, { - "timestamp": "2020-11-23T11:24:44.7615-08:00", + "timestamp": "2020-11-23T14:19:03.8582481-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1465.0 + "value": 1700.0 }, { - "timestamp": "2020-11-23T11:24:45.8662929-08:00", + "timestamp": "2020-11-23T14:19:04.8488271-08:00", "name": "runtime-counter/cpu-usage", - "value": 19.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8665736-08:00", - "name": "runtime-counter/working-set", - "value": 85.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8666028-08:00", - "name": "runtime-counter/gc-heap-size", - "value": 27.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8666215-08:00", - "name": "runtime-counter/gen-0-gc-count", - "value": 1.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8666342-08:00", - "name": "runtime-counter/gen-1-gc-count", - "value": 1.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8666474-08:00", - "name": "runtime-counter/gen-2-gc-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8666602-08:00", - "name": "runtime-counter/threadpool-thread-count", - "value": 23.0 - }, - { - "timestamp": "2020-11-23T11:24:45.86668-08:00", - "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:45.866698-08:00", - "name": "runtime-counter/threadpool-queue-length", - "value": 4.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8667113-08:00", - "name": "runtime-counter/threadpool-completed-items-count", - "value": 65402.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8667242-08:00", - "name": "runtime-counter/alloc-rate", - "value": 32490688.0 - }, - { - "timestamp": "2020-11-23T11:24:45.866739-08:00", - "name": "runtime-counter/active-timer-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8667642-08:00", - "name": "runtime-counter/gc-fragmentation", - "value": 0.026128920448990837 - }, - { - "timestamp": "2020-11-23T11:24:45.8667765-08:00", - "name": "runtime-counter/exception-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8667891-08:00", - "name": "runtime-counter/time-in-gc", - "value": 1.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8668118-08:00", - "name": "runtime-counter/gen-0-size", - "value": 192.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8668236-08:00", - "name": "runtime-counter/gen-1-size", - "value": 11728.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8668482-08:00", - "name": "runtime-counter/loh-size", - "value": 134392.0 - }, - { - "timestamp": "2020-11-23T11:24:45.866867-08:00", - "name": "runtime-counter/", - "value": 1180056.0 - }, - { - "timestamp": "2020-11-23T11:24:45.8668788-08:00", - "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 32.0 }, { - "timestamp": "2020-11-23T11:24:45.8668914-08:00", - "name": "runtime-counter/il-bytes-jitted", - "value": 132480.0 + "timestamp": "2020-11-23T22:19:05.9276521Z", + "name": "benchmarks/working-set", + "value": 87.0 }, { - "timestamp": "2020-11-23T11:24:45.8669035-08:00", - "name": "runtime-counter/methods-jitted-count", - "value": 1467.0 + "timestamp": "2020-11-23T22:19:05.9276521Z", + "name": "benchmarks/cpu", + "value": 36.0 }, { - "timestamp": "2020-11-23T11:24:46.7184035-08:00", - "name": "runtime-counter/cpu-usage", - "value": 22.0 + "timestamp": "2020-11-23T22:19:05.9276521Z", + "name": "benchmarks/cpu/raw", + "value": 288.0 }, { - "timestamp": "2020-11-23T19:24:47.4193226Z", + "timestamp": "2020-11-23T22:19:06.9407612Z", "name": "benchmarks/working-set", - "value": 84.0 + "value": 87.0 }, { - "timestamp": "2020-11-23T19:24:47.4193226Z", + "timestamp": "2020-11-23T22:19:06.9407612Z", "name": "benchmarks/cpu", - "value": 21.0 + "value": 35.0 }, { - "timestamp": "2020-11-23T19:24:47.4193226Z", + "timestamp": "2020-11-23T22:19:06.9407612Z", "name": "benchmarks/cpu/raw", - "value": 164.57 + "value": 276.0 }, { - "timestamp": "2020-11-23T11:24:46.7184798-08:00", + "timestamp": "2020-11-23T14:19:04.8488657-08:00", "name": "runtime-counter/working-set", - "value": 85.0 + "value": 90.0 }, { - "timestamp": "2020-11-23T11:24:46.7185039-08:00", + "timestamp": "2020-11-23T14:19:04.8488822-08:00", "name": "runtime-counter/gc-heap-size", - "value": 25.0 + "value": 15.0 }, { - "timestamp": "2020-11-23T11:24:46.718531-08:00", + "timestamp": "2020-11-23T14:19:04.8488981-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:46.7185471-08:00", + "timestamp": "2020-11-23T14:19:04.8489094-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:46.7185622-08:00", + "timestamp": "2020-11-23T14:19:04.8489207-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:46.7185813-08:00", + "timestamp": "2020-11-23T14:19:04.8489323-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 23.0 + "value": 16.0 }, { - "timestamp": "2020-11-23T11:24:46.7186191-08:00", + "timestamp": "2020-11-23T14:19:04.8489493-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 1.0 + "value": 2.0 }, { - "timestamp": "2020-11-23T11:24:46.7186577-08:00", + "timestamp": "2020-11-23T14:19:04.8489639-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 7.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:46.7186837-08:00", + "timestamp": "2020-11-23T14:19:04.8489763-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 54731.0 + "value": 107510.0 }, { - "timestamp": "2020-11-23T11:24:46.7187111-08:00", + "timestamp": "2020-11-23T14:19:04.8489883-08:00", "name": "runtime-counter/alloc-rate", - "value": 27081496.0 + "value": 36469872.0 }, { - "timestamp": "2020-11-23T11:24:46.7187429-08:00", + "timestamp": "2020-11-23T14:19:04.8490007-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:46.7187808-08:00", + "timestamp": "2020-11-23T14:19:04.849013-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.026118057171894127 + "value": 0.06262807355013429 }, { - "timestamp": "2020-11-23T11:24:46.7188172-08:00", + "timestamp": "2020-11-23T14:19:04.8490241-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:46.7188565-08:00", + "timestamp": "2020-11-23T14:19:04.8490354-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:46.7188851-08:00", + "timestamp": "2020-11-23T14:19:04.8490463-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:46.7189145-08:00", + "timestamp": "2020-11-23T14:19:04.8490571-08:00", "name": "runtime-counter/gen-1-size", - "value": 13600.0 + "value": 3712.0 }, { - "timestamp": "2020-11-23T11:24:46.7189638-08:00", + "timestamp": "2020-11-23T14:19:04.8490782-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:46.718978-08:00", + "timestamp": "2020-11-23T14:19:04.8490893-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:46.718996-08:00", + "timestamp": "2020-11-23T14:19:04.8491004-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:46.719018-08:00", + "timestamp": "2020-11-23T14:19:04.8491119-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 132480.0 + "value": 152277.0 }, { - "timestamp": "2020-11-23T11:24:46.7190425-08:00", + "timestamp": "2020-11-23T14:19:04.8491224-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1467.0 + "value": 1702.0 }, { - "timestamp": "2020-11-23T11:24:47.7632064-08:00", + "timestamp": "2020-11-23T14:19:05.8481128-08:00", "name": "runtime-counter/cpu-usage", - "value": 15.0 - }, - { - "timestamp": "2020-11-23T19:24:48.4393044Z", - "name": "benchmarks/working-set", - "value": 85.0 - }, - { - "timestamp": "2020-11-23T19:24:48.4393044Z", - "name": "benchmarks/cpu", - "value": 20.0 - }, - { - "timestamp": "2020-11-23T19:24:48.4393044Z", - "name": "benchmarks/cpu/raw", - "value": 163.91 + "value": 35.0 }, { - "timestamp": "2020-11-23T19:24:49.4683621Z", + "timestamp": "2020-11-23T22:19:07.9608651Z", "name": "benchmarks/working-set", - "value": 86.0 + "value": 87.0 }, { - "timestamp": "2020-11-23T19:24:49.4683621Z", + "timestamp": "2020-11-23T22:19:07.9608651Z", "name": "benchmarks/cpu", - "value": 26.0 + "value": 35.0 }, { - "timestamp": "2020-11-23T19:24:49.4683621Z", + "timestamp": "2020-11-23T22:19:07.9608651Z", "name": "benchmarks/cpu/raw", - "value": 204.98 + "value": 283.0 }, { - "timestamp": "2020-11-23T11:24:47.7632461-08:00", + "timestamp": "2020-11-23T14:19:05.8481456-08:00", "name": "runtime-counter/working-set", - "value": 88.0 + "value": 90.0 }, { - "timestamp": "2020-11-23T11:24:47.7632653-08:00", + "timestamp": "2020-11-23T14:19:05.8481634-08:00", "name": "runtime-counter/gc-heap-size", - "value": 14.0 + "value": 18.0 }, { - "timestamp": "2020-11-23T11:24:47.7632826-08:00", + "timestamp": "2020-11-23T14:19:05.8481792-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:47.7632953-08:00", + "timestamp": "2020-11-23T14:19:05.8481907-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:47.7633071-08:00", + "timestamp": "2020-11-23T14:19:05.8482019-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:47.7633198-08:00", + "timestamp": "2020-11-23T14:19:05.8482127-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 23.0 + "value": 16.0 }, { - "timestamp": "2020-11-23T11:24:47.7633387-08:00", + "timestamp": "2020-11-23T14:19:05.8482314-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 31.0 + "value": 7.0 }, { - "timestamp": "2020-11-23T11:24:47.7633571-08:00", + "timestamp": "2020-11-23T14:19:05.8482465-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 2.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:47.7633712-08:00", + "timestamp": "2020-11-23T14:19:05.8482588-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 40706.0 + "value": 115715.0 }, { - "timestamp": "2020-11-23T11:24:47.7633844-08:00", + "timestamp": "2020-11-23T14:19:05.8482709-08:00", "name": "runtime-counter/alloc-rate", - "value": 23774592.0 + "value": 37434928.0 }, { - "timestamp": "2020-11-23T11:24:47.7634-08:00", + "timestamp": "2020-11-23T14:19:05.848284-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:47.7634145-08:00", + "timestamp": "2020-11-23T14:19:05.848297-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.0261101243339254 + "value": 0.06261288380493679 }, { - "timestamp": "2020-11-23T11:24:47.7634271-08:00", + "timestamp": "2020-11-23T14:19:05.8483084-08:00", "name": "runtime-counter/exception-count", - "value": 1020.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:47.7634405-08:00", + "timestamp": "2020-11-23T14:19:05.8483195-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:47.7634527-08:00", + "timestamp": "2020-11-23T14:19:05.8483305-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:47.7634645-08:00", + "timestamp": "2020-11-23T14:19:05.8483413-08:00", "name": "runtime-counter/gen-1-size", - "value": 14968.0 + "value": 4840.0 }, { - "timestamp": "2020-11-23T11:24:47.7634876-08:00", + "timestamp": "2020-11-23T14:19:05.8483623-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:47.7634988-08:00", + "timestamp": "2020-11-23T14:19:05.848373-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:47.7635108-08:00", + "timestamp": "2020-11-23T14:19:05.8483845-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:47.7635237-08:00", + "timestamp": "2020-11-23T14:19:05.8483953-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 140798.0 + "value": 152277.0 }, { - "timestamp": "2020-11-23T11:24:47.7635357-08:00", + "timestamp": "2020-11-23T14:19:05.8484059-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1541.0 + "value": 1702.0 }, { - "timestamp": "2020-11-23T11:24:48.8653984-08:00", + "timestamp": "2020-11-23T14:19:06.860714-08:00", "name": "runtime-counter/cpu-usage", - "value": 24.0 - }, - { - "timestamp": "2020-11-23T19:24:50.5275731Z", - "name": "benchmarks/working-set", - "value": 85.0 - }, - { - "timestamp": "2020-11-23T19:24:50.5275731Z", - "name": "benchmarks/cpu", - "value": 20.0 - }, - { - "timestamp": "2020-11-23T19:24:50.5275731Z", - "name": "benchmarks/cpu/raw", - "value": 156.37 + "value": 35.0 }, { - "timestamp": "2020-11-23T11:24:48.8654571-08:00", + "timestamp": "2020-11-23T14:19:06.8607454-08:00", "name": "runtime-counter/working-set", - "value": 88.0 + "value": 90.0 }, { - "timestamp": "2020-11-23T11:24:48.8654814-08:00", + "timestamp": "2020-11-23T14:19:06.8607597-08:00", "name": "runtime-counter/gc-heap-size", - "value": 13.0 + "value": 19.0 }, { - "timestamp": "2020-11-23T11:24:48.8655042-08:00", + "timestamp": "2020-11-23T14:19:06.8607738-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:48.8655486-08:00", + "timestamp": "2020-11-23T14:19:06.8607839-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:48.8655665-08:00", + "timestamp": "2020-11-23T14:19:06.8607932-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:48.8655838-08:00", + "timestamp": "2020-11-23T14:19:06.8608029-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 16.0 + "value": 22.0 }, { - "timestamp": "2020-11-23T11:24:48.8656192-08:00", + "timestamp": "2020-11-23T14:19:06.8608179-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 3.0 }, { - "timestamp": "2020-11-23T11:24:48.865782-08:00", + "timestamp": "2020-11-23T14:19:06.860831-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 2.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:48.8658184-08:00", + "timestamp": "2020-11-23T14:19:06.8608558-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 63425.0 + "value": 103502.0 }, { - "timestamp": "2020-11-23T11:24:48.8658607-08:00", + "timestamp": "2020-11-23T14:19:06.8608665-08:00", "name": "runtime-counter/alloc-rate", - "value": 32384408.0 + "value": 35612680.0 }, { - "timestamp": "2020-11-23T11:24:48.8658961-08:00", + "timestamp": "2020-11-23T14:19:06.8608775-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:48.8659138-08:00", + "timestamp": "2020-11-23T14:19:06.8608887-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.015193547186816548 + "value": 0.06259167358786134 }, { - "timestamp": "2020-11-23T11:24:48.865938-08:00", + "timestamp": "2020-11-23T14:19:06.8608986-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:48.8660556-08:00", + "timestamp": "2020-11-23T14:19:06.8609083-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:48.8663127-08:00", + "timestamp": "2020-11-23T14:19:06.8609176-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:48.8663381-08:00", + "timestamp": "2020-11-23T14:19:06.8609268-08:00", "name": "runtime-counter/gen-1-size", - "value": 3251096.0 + "value": 6416.0 }, { - "timestamp": "2020-11-23T11:24:48.8663615-08:00", + "timestamp": "2020-11-23T14:19:06.8609465-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:48.8663732-08:00", + "timestamp": "2020-11-23T14:19:06.8609562-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:48.8663845-08:00", + "timestamp": "2020-11-23T14:19:06.8609663-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:48.8663961-08:00", + "timestamp": "2020-11-23T14:19:06.8609761-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 153343.0 + "value": 152277.0 }, { - "timestamp": "2020-11-23T11:24:48.8664084-08:00", + "timestamp": "2020-11-23T14:19:06.8609861-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1711.0 + "value": 1702.0 }, { - "timestamp": "2020-11-23T11:24:49.792581-08:00", + "timestamp": "2020-11-23T14:19:07.8640948-08:00", "name": "runtime-counter/cpu-usage", - "value": 23.0 + "value": 35.0 }, { - "timestamp": "2020-11-23T19:24:51.5372546Z", + "timestamp": "2020-11-23T22:19:08.9733333Z", "name": "benchmarks/working-set", - "value": 85.0 + "value": 87.0 }, { - "timestamp": "2020-11-23T19:24:51.5372546Z", + "timestamp": "2020-11-23T22:19:08.9733333Z", "name": "benchmarks/cpu", - "value": 21.0 + "value": 30.0 }, { - "timestamp": "2020-11-23T19:24:51.5372546Z", + "timestamp": "2020-11-23T22:19:08.9733333Z", "name": "benchmarks/cpu/raw", - "value": 167.13 + "value": 242.0 }, { - "timestamp": "2020-11-23T11:24:49.7926364-08:00", + "timestamp": "2020-11-23T14:19:07.864156-08:00", "name": "runtime-counter/working-set", - "value": 89.0 + "value": 90.0 }, { - "timestamp": "2020-11-23T11:24:49.7931179-08:00", + "timestamp": "2020-11-23T14:19:07.8641754-08:00", "name": "runtime-counter/gc-heap-size", - "value": 18.0 + "value": 20.0 }, { - "timestamp": "2020-11-23T11:24:49.7932195-08:00", + "timestamp": "2020-11-23T14:19:07.8641905-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:49.7937228-08:00", - "name": "runtime-counter/gen-1-gc-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7940717-08:00", - "name": "runtime-counter/gen-2-gc-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7941035-08:00", - "name": "runtime-counter/threadpool-thread-count", - "value": 16.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7941438-08:00", - "name": "runtime-counter/monitor-lock-contention-count", - "value": 1.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7941641-08:00", - "name": "runtime-counter/threadpool-queue-length", - "value": 8.0 - }, - { - "timestamp": "2020-11-23T11:24:49.79419-08:00", - "name": "runtime-counter/threadpool-completed-items-count", - "value": 61632.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7942034-08:00", - "name": "runtime-counter/alloc-rate", - "value": 29364144.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7942179-08:00", - "name": "runtime-counter/active-timer-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7942329-08:00", - "name": "runtime-counter/gc-fragmentation", - "value": 0.015191160604670196 - }, - { - "timestamp": "2020-11-23T11:24:49.794245-08:00", - "name": "runtime-counter/exception-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:49.794258-08:00", - "name": "runtime-counter/time-in-gc", - "value": 2.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7942842-08:00", - "name": "runtime-counter/gen-0-size", - "value": 192.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7942959-08:00", - "name": "runtime-counter/gen-1-size", - "value": 3252312.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7945972-08:00", - "name": "runtime-counter/loh-size", - "value": 134392.0 - }, - { - "timestamp": "2020-11-23T11:24:49.794712-08:00", - "name": "runtime-counter/", - "value": 1180056.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7947555-08:00", - "name": "runtime-counter/assembly-count", - "value": 97.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7947717-08:00", - "name": "runtime-counter/il-bytes-jitted", - "value": 153343.0 - }, - { - "timestamp": "2020-11-23T11:24:49.7947862-08:00", - "name": "runtime-counter/methods-jitted-count", - "value": 1711.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7965702-08:00", - "name": "runtime-counter/cpu-usage", - "value": 20.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7968419-08:00", - "name": "runtime-counter/working-set", - "value": 89.0 - }, - { - "timestamp": "2020-11-23T11:24:50.796884-08:00", - "name": "runtime-counter/gc-heap-size", - "value": 15.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7969022-08:00", - "name": "runtime-counter/gen-0-gc-count", - "value": 1.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7969139-08:00", - "name": "runtime-counter/gen-1-gc-count", - "value": 1.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7976895-08:00", - "name": "runtime-counter/gen-2-gc-count", - "value": 1.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7977191-08:00", - "name": "runtime-counter/threadpool-thread-count", - "value": 22.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7977406-08:00", - "name": "runtime-counter/monitor-lock-contention-count", - "value": 1.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7977582-08:00", - "name": "runtime-counter/threadpool-queue-length", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7977714-08:00", - "name": "runtime-counter/threadpool-completed-items-count", - "value": 62425.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7977838-08:00", - "name": "runtime-counter/alloc-rate", - "value": 30222680.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7977974-08:00", - "name": "runtime-counter/active-timer-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7978109-08:00", - "name": "runtime-counter/gc-fragmentation", - "value": 0.0351266146769234 - }, - { - "timestamp": "2020-11-23T11:24:50.7978218-08:00", - "name": "runtime-counter/exception-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7978347-08:00", - "name": "runtime-counter/time-in-gc", - "value": 2.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7978464-08:00", - "name": "runtime-counter/gen-0-size", - "value": 192.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7978584-08:00", - "name": "runtime-counter/gen-1-size", - "value": 1584.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7978841-08:00", - "name": "runtime-counter/loh-size", - "value": 134392.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7978955-08:00", - "name": "runtime-counter/", - "value": 1180056.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7979077-08:00", - "name": "runtime-counter/assembly-count", - "value": 97.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7979197-08:00", - "name": "runtime-counter/il-bytes-jitted", - "value": 153343.0 - }, - { - "timestamp": "2020-11-23T11:24:50.7979319-08:00", - "name": "runtime-counter/methods-jitted-count", - "value": 1711.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7104222-08:00", - "name": "runtime-counter/cpu-usage", - "value": 24.0 - }, - { - "timestamp": "2020-11-23T19:24:52.5931636Z", - "name": "benchmarks/working-set", - "value": 86.0 - }, - { - "timestamp": "2020-11-23T19:24:52.5931636Z", - "name": "benchmarks/cpu", - "value": 24.0 - }, - { - "timestamp": "2020-11-23T19:24:52.5931636Z", - "name": "benchmarks/cpu/raw", - "value": 189.41 - }, - { - "timestamp": "2020-11-23T19:24:53.6512224Z", - "name": "benchmarks/working-set", - "value": 86.0 - }, - { - "timestamp": "2020-11-23T19:24:53.6512224Z", - "name": "benchmarks/cpu", - "value": 21.0 - }, - { - "timestamp": "2020-11-23T19:24:53.6512224Z", - "name": "benchmarks/cpu/raw", - "value": 171.3 - }, - { - "timestamp": "2020-11-23T11:24:51.7104824-08:00", - "name": "runtime-counter/working-set", - "value": 89.0 - }, - { - "timestamp": "2020-11-23T11:24:51.710505-08:00", - "name": "runtime-counter/gc-heap-size", - "value": 14.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7105249-08:00", - "name": "runtime-counter/gen-0-gc-count", - "value": 1.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7105413-08:00", - "name": "runtime-counter/gen-1-gc-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7105572-08:00", - "name": "runtime-counter/gen-2-gc-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:51.710577-08:00", - "name": "runtime-counter/threadpool-thread-count", - "value": 21.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7106081-08:00", - "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7106422-08:00", - "name": "runtime-counter/threadpool-queue-length", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7106746-08:00", - "name": "runtime-counter/threadpool-completed-items-count", - "value": 59061.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7107104-08:00", - "name": "runtime-counter/alloc-rate", - "value": 29060136.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7107474-08:00", - "name": "runtime-counter/active-timer-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7107841-08:00", - "name": "runtime-counter/gc-fragmentation", - "value": 0.03510913825590504 - }, - { - "timestamp": "2020-11-23T11:24:51.710824-08:00", - "name": "runtime-counter/exception-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:51.710866-08:00", - "name": "runtime-counter/time-in-gc", - "value": 1.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7109037-08:00", - "name": "runtime-counter/gen-0-size", - "value": 192.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7109468-08:00", - "name": "runtime-counter/gen-1-size", - "value": 3840.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7110173-08:00", - "name": "runtime-counter/loh-size", - "value": 134392.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7110493-08:00", - "name": "runtime-counter/", - "value": 1180056.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7110844-08:00", - "name": "runtime-counter/assembly-count", - "value": 97.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7111253-08:00", - "name": "runtime-counter/il-bytes-jitted", - "value": 153343.0 - }, - { - "timestamp": "2020-11-23T11:24:51.7111616-08:00", - "name": "runtime-counter/methods-jitted-count", - "value": 1711.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7138615-08:00", - "name": "runtime-counter/cpu-usage", - "value": 20.0 - }, - { - "timestamp": "2020-11-23T19:24:54.6851122Z", - "name": "benchmarks/working-set", - "value": 86.0 - }, - { - "timestamp": "2020-11-23T19:24:54.6851122Z", - "name": "benchmarks/cpu", - "value": 22.0 - }, - { - "timestamp": "2020-11-23T19:24:54.6851122Z", - "name": "benchmarks/cpu/raw", - "value": 172.29 - }, - { - "timestamp": "2020-11-23T11:24:52.7138984-08:00", - "name": "runtime-counter/working-set", - "value": 89.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7139159-08:00", - "name": "runtime-counter/gc-heap-size", - "value": 4.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7139505-08:00", - "name": "runtime-counter/gen-0-gc-count", - "value": 1.0 - }, - { - "timestamp": "2020-11-23T11:24:52.713964-08:00", - "name": "runtime-counter/gen-1-gc-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7139765-08:00", - "name": "runtime-counter/gen-2-gc-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7139898-08:00", - "name": "runtime-counter/threadpool-thread-count", - "value": 21.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7140071-08:00", - "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7140392-08:00", - "name": "runtime-counter/threadpool-queue-length", - "value": 51.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7140529-08:00", - "name": "runtime-counter/threadpool-completed-items-count", - "value": 55880.0 - }, - { - "timestamp": "2020-11-23T11:24:52.714066-08:00", - "name": "runtime-counter/alloc-rate", - "value": 28355832.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7140805-08:00", - "name": "runtime-counter/active-timer-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7140974-08:00", - "name": "runtime-counter/gc-fragmentation", - "value": 0.035089451652378145 - }, - { - "timestamp": "2020-11-23T11:24:52.7141097-08:00", - "name": "runtime-counter/exception-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7141224-08:00", - "name": "runtime-counter/time-in-gc", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7141352-08:00", - "name": "runtime-counter/gen-0-size", - "value": 192.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7141472-08:00", - "name": "runtime-counter/gen-1-size", - "value": 6384.0 - }, - { - "timestamp": "2020-11-23T11:24:52.714172-08:00", - "name": "runtime-counter/loh-size", - "value": 134392.0 - }, - { - "timestamp": "2020-11-23T11:24:52.714184-08:00", - "name": "runtime-counter/", - "value": 1180056.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7141964-08:00", - "name": "runtime-counter/assembly-count", - "value": 97.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7142089-08:00", - "name": "runtime-counter/il-bytes-jitted", - "value": 153343.0 - }, - { - "timestamp": "2020-11-23T11:24:52.7142211-08:00", - "name": "runtime-counter/methods-jitted-count", - "value": 1711.0 - }, - { - "timestamp": "2020-11-23T11:24:53.7400927-08:00", - "name": "runtime-counter/cpu-usage", - "value": 21.0 - }, - { - "timestamp": "2020-11-23T19:24:55.742101Z", - "name": "benchmarks/working-set", - "value": 86.0 - }, - { - "timestamp": "2020-11-23T19:24:55.742101Z", - "name": "benchmarks/cpu", - "value": 20.0 - }, - { - "timestamp": "2020-11-23T19:24:55.742101Z", - "name": "benchmarks/cpu/raw", - "value": 156.7 - }, - { - "timestamp": "2020-11-23T11:24:53.7401391-08:00", - "name": "runtime-counter/working-set", - "value": 89.0 - }, - { - "timestamp": "2020-11-23T11:24:53.7401603-08:00", - "name": "runtime-counter/gc-heap-size", - "value": 34.0 - }, - { - "timestamp": "2020-11-23T11:24:53.7401808-08:00", - "name": "runtime-counter/gen-0-gc-count", - "value": 0.0 - }, - { - "timestamp": "2020-11-23T11:24:53.7401957-08:00", + "timestamp": "2020-11-23T14:19:07.8642018-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:53.7402099-08:00", + "timestamp": "2020-11-23T14:19:07.8642119-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:53.7402249-08:00", + "timestamp": "2020-11-23T14:19:07.8642236-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 16.0 + "value": 22.0 }, { - "timestamp": "2020-11-23T11:24:53.740247-08:00", + "timestamp": "2020-11-23T14:19:07.8642419-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 1.0 + "value": 3.0 }, { - "timestamp": "2020-11-23T11:24:53.740267-08:00", + "timestamp": "2020-11-23T14:19:07.8642573-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 3.0 + "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:53.7402838-08:00", + "timestamp": "2020-11-23T14:19:07.8642878-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 58300.0 + "value": 104368.0 }, { - "timestamp": "2020-11-23T11:24:53.7402986-08:00", + "timestamp": "2020-11-23T14:19:07.8643199-08:00", "name": "runtime-counter/alloc-rate", - "value": 29621112.0 + "value": 34995888.0 }, { - "timestamp": "2020-11-23T11:24:53.7403146-08:00", + "timestamp": "2020-11-23T14:19:07.8643432-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:53.7403337-08:00", + "timestamp": "2020-11-23T14:19:07.8643562-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.035089451652378145 + "value": 0.06256918708186937 }, { - "timestamp": "2020-11-23T11:24:53.740349-08:00", + "timestamp": "2020-11-23T14:19:07.8643674-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:53.7403712-08:00", + "timestamp": "2020-11-23T14:19:07.8643794-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:53.7403871-08:00", + "timestamp": "2020-11-23T14:19:07.8643906-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:53.7404026-08:00", + "timestamp": "2020-11-23T14:19:07.8644005-08:00", "name": "runtime-counter/gen-1-size", - "value": 6384.0 + "value": 8088.0 }, { - "timestamp": "2020-11-23T11:24:53.7404311-08:00", + "timestamp": "2020-11-23T14:19:07.86442-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:53.7404456-08:00", + "timestamp": "2020-11-23T14:19:07.8644298-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:53.7404607-08:00", + "timestamp": "2020-11-23T14:19:07.86444-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:53.7404752-08:00", + "timestamp": "2020-11-23T14:19:07.8644503-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 153404.0 + "value": 152277.0 }, { - "timestamp": "2020-11-23T11:24:53.7404897-08:00", + "timestamp": "2020-11-23T14:19:07.8644604-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1712.0 + "value": 1702.0 }, { - "timestamp": "2020-11-23T11:24:54.7409295-08:00", + "timestamp": "2020-11-23T14:19:08.8617296-08:00", "name": "runtime-counter/cpu-usage", - "value": 21.0 + "value": 29.0 }, { - "timestamp": "2020-11-23T19:24:56.7775447Z", + "timestamp": "2020-11-23T22:19:09.9846715Z", "name": "benchmarks/working-set", - "value": 86.0 + "value": 87.0 }, { - "timestamp": "2020-11-23T19:24:56.7775447Z", + "timestamp": "2020-11-23T22:19:09.9846715Z", "name": "benchmarks/cpu", - "value": 18.0 + "value": 36.0 }, { - "timestamp": "2020-11-23T19:24:56.7775447Z", + "timestamp": "2020-11-23T22:19:09.9846715Z", "name": "benchmarks/cpu/raw", - "value": 141.85 + "value": 287.0 }, { - "timestamp": "2020-11-23T11:24:54.7410646-08:00", + "timestamp": "2020-11-23T14:19:08.8617843-08:00", "name": "runtime-counter/working-set", "value": 90.0 }, { - "timestamp": "2020-11-23T11:24:54.7411641-08:00", + "timestamp": "2020-11-23T14:19:08.861802-08:00", "name": "runtime-counter/gc-heap-size", - "value": 24.0 + "value": 21.0 }, { - "timestamp": "2020-11-23T11:24:54.741196-08:00", + "timestamp": "2020-11-23T14:19:08.8618167-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:54.7412227-08:00", + "timestamp": "2020-11-23T14:19:08.8618275-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:54.7412463-08:00", + "timestamp": "2020-11-23T14:19:08.861854-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:54.7412738-08:00", + "timestamp": "2020-11-23T14:19:08.8618669-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 21.0 }, { - "timestamp": "2020-11-23T11:24:54.7413062-08:00", + "timestamp": "2020-11-23T14:19:08.8618843-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 2.0 }, { - "timestamp": "2020-11-23T11:24:54.7413247-08:00", + "timestamp": "2020-11-23T14:19:08.8618983-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 14.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:54.7414237-08:00", + "timestamp": "2020-11-23T14:19:08.8619109-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 58760.0 + "value": 98125.0 }, { - "timestamp": "2020-11-23T11:24:54.7415301-08:00", + "timestamp": "2020-11-23T14:19:08.861922-08:00", "name": "runtime-counter/alloc-rate", - "value": 29598208.0 + "value": 34568696.0 }, { - "timestamp": "2020-11-23T11:24:54.741608-08:00", + "timestamp": "2020-11-23T14:19:08.861934-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:54.7416534-08:00", + "timestamp": "2020-11-23T14:19:08.8619461-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.03507213580494958 + "value": 0.06255058606805985 }, { - "timestamp": "2020-11-23T11:24:54.7416876-08:00", + "timestamp": "2020-11-23T14:19:08.8619563-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:54.7417308-08:00", + "timestamp": "2020-11-23T14:19:08.8619663-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:54.7417646-08:00", + "timestamp": "2020-11-23T14:19:08.8619759-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:54.7417957-08:00", + "timestamp": "2020-11-23T14:19:08.8619853-08:00", "name": "runtime-counter/gen-1-size", - "value": 8624.0 + "value": 9472.0 }, { - "timestamp": "2020-11-23T11:24:54.7418314-08:00", + "timestamp": "2020-11-23T14:19:08.862005-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:54.7418442-08:00", + "timestamp": "2020-11-23T14:19:08.8620146-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:54.7418564-08:00", + "timestamp": "2020-11-23T14:19:08.8620244-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:54.7418691-08:00", + "timestamp": "2020-11-23T14:19:08.8620347-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 153404.0 + "value": 152277.0 }, { - "timestamp": "2020-11-23T11:24:54.7418811-08:00", + "timestamp": "2020-11-23T14:19:08.8620442-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1712.0 + "value": 1702.0 }, { - "timestamp": "2020-11-23T11:24:55.8184292-08:00", + "timestamp": "2020-11-23T14:19:09.8582143-08:00", "name": "runtime-counter/cpu-usage", - "value": 19.0 + "value": 36.0 }, { - "timestamp": "2020-11-23T11:24:55.8185152-08:00", + "timestamp": "2020-11-23T14:19:09.8582529-08:00", "name": "runtime-counter/working-set", "value": 90.0 }, { - "timestamp": "2020-11-23T11:24:55.8185405-08:00", + "timestamp": "2020-11-23T14:19:09.8582703-08:00", "name": "runtime-counter/gc-heap-size", - "value": 19.0 + "value": 22.0 }, { - "timestamp": "2020-11-23T11:24:55.8185784-08:00", + "timestamp": "2020-11-23T14:19:09.8582856-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:55.8185931-08:00", + "timestamp": "2020-11-23T14:19:09.8582975-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:55.818617-08:00", + "timestamp": "2020-11-23T14:19:09.8583072-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:55.8186522-08:00", + "timestamp": "2020-11-23T14:19:09.8583174-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 21.0 + "value": 16.0 }, { - "timestamp": "2020-11-23T11:24:55.8187041-08:00", + "timestamp": "2020-11-23T14:19:09.858333-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 3.0 }, { - "timestamp": "2020-11-23T11:24:55.8187463-08:00", + "timestamp": "2020-11-23T14:19:09.8583468-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 6.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:55.8187633-08:00", + "timestamp": "2020-11-23T14:19:09.8583596-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 64097.0 + "value": 110415.0 }, { - "timestamp": "2020-11-23T11:24:55.8187774-08:00", + "timestamp": "2020-11-23T14:19:09.85837-08:00", "name": "runtime-counter/alloc-rate", - "value": 31963032.0 + "value": 36239776.0 }, { - "timestamp": "2020-11-23T11:24:55.8188157-08:00", + "timestamp": "2020-11-23T14:19:09.8583821-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:55.8188525-08:00", + "timestamp": "2020-11-23T14:19:09.8583938-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.03505119411844485 + "value": 0.06253511157535223 }, { - "timestamp": "2020-11-23T11:24:55.8188872-08:00", + "timestamp": "2020-11-23T14:19:09.8584037-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:55.8189118-08:00", + "timestamp": "2020-11-23T14:19:09.8584138-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:55.8189253-08:00", + "timestamp": "2020-11-23T14:19:09.8584234-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:55.8189484-08:00", + "timestamp": "2020-11-23T14:19:09.8584328-08:00", "name": "runtime-counter/gen-1-size", - "value": 11336.0 + "value": 10624.0 }, { - "timestamp": "2020-11-23T11:24:55.8189849-08:00", + "timestamp": "2020-11-23T14:19:09.858451-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:55.8189988-08:00", + "timestamp": "2020-11-23T14:19:09.8584602-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:55.8190121-08:00", + "timestamp": "2020-11-23T14:19:09.8584697-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:55.819025-08:00", + "timestamp": "2020-11-23T14:19:09.8584795-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 155452.0 + "value": 152277.0 }, { - "timestamp": "2020-11-23T11:24:55.8190375-08:00", + "timestamp": "2020-11-23T14:19:09.8584891-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1739.0 + "value": 1702.0 }, { - "timestamp": "2020-11-23T11:24:57.0772048-08:00", + "timestamp": "2020-11-23T14:19:10.8571588-08:00", "name": "runtime-counter/cpu-usage", - "value": 16.0 + "value": 37.0 }, { - "timestamp": "2020-11-23T19:24:57.866852Z", + "timestamp": "2020-11-23T22:19:10.99853Z", "name": "benchmarks/working-set", - "value": 86.0 + "value": 88.0 }, { - "timestamp": "2020-11-23T19:24:57.866852Z", + "timestamp": "2020-11-23T22:19:10.99853Z", "name": "benchmarks/cpu", - "value": 22.0 + "value": 36.0 + }, + { + "timestamp": "2020-11-23T22:19:10.99853Z", + "name": "benchmarks/cpu/raw", + "value": 288.0 + }, + { + "timestamp": "2020-11-23T22:19:12.018571Z", + "name": "benchmarks/working-set", + "value": 88.0 }, { - "timestamp": "2020-11-23T19:24:57.866852Z", + "timestamp": "2020-11-23T22:19:12.018571Z", + "name": "benchmarks/cpu", + "value": 36.0 + }, + { + "timestamp": "2020-11-23T22:19:12.018571Z", "name": "benchmarks/cpu/raw", - "value": 176.43 + "value": 286.0 }, { - "timestamp": "2020-11-23T11:24:57.0772547-08:00", + "timestamp": "2020-11-23T14:19:10.8574337-08:00", "name": "runtime-counter/working-set", - "value": 90.0 + "value": 91.0 }, { - "timestamp": "2020-11-23T11:24:57.0772757-08:00", + "timestamp": "2020-11-23T14:19:10.8574522-08:00", "name": "runtime-counter/gc-heap-size", - "value": 14.0 + "value": 25.0 }, { - "timestamp": "2020-11-23T11:24:57.0772929-08:00", + "timestamp": "2020-11-23T14:19:10.8574675-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:57.0773125-08:00", + "timestamp": "2020-11-23T14:19:10.8574783-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:57.0773241-08:00", + "timestamp": "2020-11-23T14:19:10.8574889-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:57.0773366-08:00", + "timestamp": "2020-11-23T14:19:10.8575002-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 18.0 + "value": 16.0 }, { - "timestamp": "2020-11-23T11:24:57.0773561-08:00", + "timestamp": "2020-11-23T14:19:10.8575181-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 3.0 }, { - "timestamp": "2020-11-23T11:24:57.0773817-08:00", + "timestamp": "2020-11-23T14:19:10.8576356-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 92.0 + "value": 4.0 }, { - "timestamp": "2020-11-23T11:24:57.0773956-08:00", + "timestamp": "2020-11-23T14:19:10.8576564-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 53924.0 + "value": 116323.0 }, { - "timestamp": "2020-11-23T11:24:57.0774082-08:00", + "timestamp": "2020-11-23T14:19:10.857669-08:00", "name": "runtime-counter/alloc-rate", - "value": 27630672.0 + "value": 37995736.0 }, { - "timestamp": "2020-11-23T11:24:57.0774211-08:00", + "timestamp": "2020-11-23T14:19:10.8576818-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:57.0774349-08:00", + "timestamp": "2020-11-23T14:19:10.857694-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.03500883137354247 + "value": 0.06252447730224057 }, { - "timestamp": "2020-11-23T11:24:57.0774464-08:00", + "timestamp": "2020-11-23T14:19:10.857705-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:57.0774588-08:00", + "timestamp": "2020-11-23T14:19:10.8577162-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:57.0775232-08:00", + "timestamp": "2020-11-23T14:19:10.8577266-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:57.0775375-08:00", + "timestamp": "2020-11-23T14:19:10.8577365-08:00", "name": "runtime-counter/gen-1-size", - "value": 16832.0 + "value": 11416.0 }, { - "timestamp": "2020-11-23T11:24:57.0775603-08:00", + "timestamp": "2020-11-23T14:19:10.8577578-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:57.0775724-08:00", + "timestamp": "2020-11-23T14:19:10.857768-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:57.0775841-08:00", + "timestamp": "2020-11-23T14:19:10.8577788-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:57.0775958-08:00", + "timestamp": "2020-11-23T14:19:10.8577895-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 156693.0 + "value": 152277.0 }, { - "timestamp": "2020-11-23T11:24:57.0776073-08:00", + "timestamp": "2020-11-23T14:19:10.8578086-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1769.0 + "value": 1702.0 }, { - "timestamp": "2020-11-23T11:24:58.1151559-08:00", + "timestamp": "2020-11-23T14:19:11.859362-08:00", "name": "runtime-counter/cpu-usage", - "value": 20.0 + "value": 33.0 }, { - "timestamp": "2020-11-23T11:24:58.1152505-08:00", + "timestamp": "2020-11-23T14:19:11.8594144-08:00", "name": "runtime-counter/working-set", - "value": 90.0 + "value": 92.0 }, { - "timestamp": "2020-11-23T11:24:58.1152938-08:00", + "timestamp": "2020-11-23T14:19:11.8594427-08:00", "name": "runtime-counter/gc-heap-size", - "value": 37.0 + "value": 27.0 }, { - "timestamp": "2020-11-23T11:24:58.1153295-08:00", + "timestamp": "2020-11-23T14:19:11.8594611-08:00", "name": "runtime-counter/gen-0-gc-count", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:58.1153434-08:00", + "timestamp": "2020-11-23T14:19:11.8594718-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:58.1153558-08:00", + "timestamp": "2020-11-23T14:19:11.8594821-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:58.1153759-08:00", + "timestamp": "2020-11-23T14:19:11.8594982-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 16.0 + "value": 21.0 }, { - "timestamp": "2020-11-23T11:24:58.1153999-08:00", + "timestamp": "2020-11-23T14:19:11.8595142-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 1.0 + "value": 6.0 }, { - "timestamp": "2020-11-23T11:24:58.1154187-08:00", + "timestamp": "2020-11-23T14:19:11.8595281-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:58.1154313-08:00", + "timestamp": "2020-11-23T14:19:11.8595397-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 43414.0 + "value": 116715.0 }, { - "timestamp": "2020-11-23T11:24:58.1154427-08:00", + "timestamp": "2020-11-23T14:19:11.859564-08:00", "name": "runtime-counter/alloc-rate", - "value": 22683000.0 + "value": 37993688.0 }, { - "timestamp": "2020-11-23T11:24:58.1154599-08:00", + "timestamp": "2020-11-23T14:19:11.8595816-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:58.1154721-08:00", + "timestamp": "2020-11-23T14:19:11.8595982-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.03500883137354247 + "value": 0.06250536618871813 }, { - "timestamp": "2020-11-23T11:24:58.115483-08:00", + "timestamp": "2020-11-23T14:19:11.8596094-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:58.1154939-08:00", + "timestamp": "2020-11-23T14:19:11.8596206-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:58.1155044-08:00", + "timestamp": "2020-11-23T14:19:11.8596317-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:58.1155145-08:00", + "timestamp": "2020-11-23T14:19:11.8596424-08:00", "name": "runtime-counter/gen-1-size", - "value": 16832.0 + "value": 12840.0 }, { - "timestamp": "2020-11-23T11:24:58.1155346-08:00", + "timestamp": "2020-11-23T14:19:11.8596641-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:58.115545-08:00", + "timestamp": "2020-11-23T14:19:11.8596752-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:58.1155561-08:00", + "timestamp": "2020-11-23T14:19:11.8596994-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:58.1155678-08:00", + "timestamp": "2020-11-23T14:19:11.8597288-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 156693.0 + "value": 152277.0 }, { - "timestamp": "2020-11-23T11:24:58.11558-08:00", + "timestamp": "2020-11-23T14:19:11.8598107-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1769.0 + "value": 1702.0 }, { - "timestamp": "2020-11-23T11:24:59.0309104-08:00", + "timestamp": "2020-11-23T14:19:12.8572547-08:00", "name": "runtime-counter/cpu-usage", - "value": 25.0 + "value": 39.0 }, { - "timestamp": "2020-11-23T19:25:00.9327372Z", + "timestamp": "2020-11-23T22:19:13.0320389Z", "name": "benchmarks/working-set", - "value": 87.0 + "value": 88.0 }, { - "timestamp": "2020-11-23T19:25:00.9327372Z", + "timestamp": "2020-11-23T22:19:13.0320389Z", "name": "benchmarks/cpu", - "value": 20.0 + "value": 39.0 + }, + { + "timestamp": "2020-11-23T22:19:13.0320389Z", + "name": "benchmarks/cpu/raw", + "value": 313.0 + }, + { + "timestamp": "2020-11-23T22:19:14.0425869Z", + "name": "benchmarks/working-set", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T22:19:14.0425869Z", + "name": "benchmarks/cpu", + "value": 38.0 }, { - "timestamp": "2020-11-23T19:25:00.9327372Z", + "timestamp": "2020-11-23T22:19:14.0425869Z", "name": "benchmarks/cpu/raw", - "value": 162.58 + "value": 306.0 }, { - "timestamp": "2020-11-23T11:24:59.0315515-08:00", + "timestamp": "2020-11-23T14:19:12.8572912-08:00", "name": "runtime-counter/working-set", - "value": 90.0 + "value": 92.0 }, { - "timestamp": "2020-11-23T11:24:59.031606-08:00", + "timestamp": "2020-11-23T14:19:12.8573074-08:00", "name": "runtime-counter/gc-heap-size", - "value": 29.0 + "value": 28.0 }, { - "timestamp": "2020-11-23T11:24:59.0316394-08:00", + "timestamp": "2020-11-23T14:19:12.8573228-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:24:59.0316744-08:00", + "timestamp": "2020-11-23T14:19:12.8573342-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:59.0316869-08:00", + "timestamp": "2020-11-23T14:19:12.8573442-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:59.0317007-08:00", + "timestamp": "2020-11-23T14:19:12.8573551-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 16.0 }, { - "timestamp": "2020-11-23T11:24:59.0317498-08:00", + "timestamp": "2020-11-23T14:19:12.8573705-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 2.0 }, { - "timestamp": "2020-11-23T11:24:59.0317792-08:00", + "timestamp": "2020-11-23T14:19:12.8573854-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 6.0 + "value": 2.0 }, { - "timestamp": "2020-11-23T11:24:59.0318075-08:00", + "timestamp": "2020-11-23T14:19:12.8573975-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 56403.0 + "value": 113090.0 }, { - "timestamp": "2020-11-23T11:24:59.0318198-08:00", + "timestamp": "2020-11-23T14:19:12.8574085-08:00", "name": "runtime-counter/alloc-rate", - "value": 27303088.0 + "value": 37282832.0 }, { - "timestamp": "2020-11-23T11:24:59.031834-08:00", + "timestamp": "2020-11-23T14:19:12.8574201-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:59.0318683-08:00", + "timestamp": "2020-11-23T14:19:12.8574316-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.03500507485632967 + "value": 0.06249431284584336 }, { - "timestamp": "2020-11-23T11:24:59.0318963-08:00", + "timestamp": "2020-11-23T14:19:12.8574418-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:59.031965-08:00", + "timestamp": "2020-11-23T14:19:12.857452-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:24:59.0319853-08:00", + "timestamp": "2020-11-23T14:19:12.8574623-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:24:59.0319974-08:00", + "timestamp": "2020-11-23T14:19:12.8574716-08:00", "name": "runtime-counter/gen-1-size", - "value": 17320.0 + "value": 13664.0 }, { - "timestamp": "2020-11-23T11:24:59.0320492-08:00", + "timestamp": "2020-11-23T14:19:12.8574904-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:24:59.0320726-08:00", + "timestamp": "2020-11-23T14:19:12.8575002-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:24:59.032085-08:00", + "timestamp": "2020-11-23T14:19:12.8575092-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:24:59.0320966-08:00", + "timestamp": "2020-11-23T14:19:12.8575184-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 156693.0 + "value": 152338.0 }, { - "timestamp": "2020-11-23T11:24:59.0321083-08:00", + "timestamp": "2020-11-23T14:19:12.8575274-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1769.0 + "value": 1703.0 }, { - "timestamp": "2020-11-23T11:25:00.0323842-08:00", + "timestamp": "2020-11-23T14:19:13.8506303-08:00", "name": "runtime-counter/cpu-usage", - "value": 19.0 + "value": 39.0 }, { - "timestamp": "2020-11-23T19:25:01.9576334Z", + "timestamp": "2020-11-23T22:19:15.0640163Z", "name": "benchmarks/working-set", - "value": 87.0 + "value": 88.0 }, { - "timestamp": "2020-11-23T19:25:01.9576334Z", + "timestamp": "2020-11-23T22:19:15.0640163Z", "name": "benchmarks/cpu", - "value": 16.0 + "value": 37.0 }, { - "timestamp": "2020-11-23T19:25:01.9576334Z", + "timestamp": "2020-11-23T22:19:15.0640163Z", "name": "benchmarks/cpu/raw", - "value": 129.59 + "value": 292.0 }, { - "timestamp": "2020-11-23T11:25:00.0324472-08:00", + "timestamp": "2020-11-23T14:19:13.8506777-08:00", "name": "runtime-counter/working-set", - "value": 90.0 + "value": 91.0 }, { - "timestamp": "2020-11-23T11:25:00.0324705-08:00", + "timestamp": "2020-11-23T14:19:13.8506934-08:00", "name": "runtime-counter/gc-heap-size", - "value": 27.0 + "value": 25.0 }, { - "timestamp": "2020-11-23T11:25:00.032499-08:00", + "timestamp": "2020-11-23T14:19:13.8507085-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:25:00.0325144-08:00", + "timestamp": "2020-11-23T14:19:13.8507192-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:00.0325293-08:00", + "timestamp": "2020-11-23T14:19:13.8507287-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:00.0325453-08:00", + "timestamp": "2020-11-23T14:19:13.8507394-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 16.0 }, { - "timestamp": "2020-11-23T11:25:00.0325681-08:00", + "timestamp": "2020-11-23T14:19:13.8507558-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 0.0 + "value": 4.0 }, { - "timestamp": "2020-11-23T11:25:00.0325873-08:00", + "timestamp": "2020-11-23T14:19:13.8507702-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 0.0 + "value": 1.0 }, { - "timestamp": "2020-11-23T11:25:00.0326057-08:00", + "timestamp": "2020-11-23T14:19:13.850782-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 51475.0 + "value": 103542.0 }, { - "timestamp": "2020-11-23T11:25:00.0327028-08:00", + "timestamp": "2020-11-23T14:19:13.8507926-08:00", "name": "runtime-counter/alloc-rate", - "value": 25786256.0 + "value": 34949456.0 }, { - "timestamp": "2020-11-23T11:25:00.0327164-08:00", + "timestamp": "2020-11-23T14:19:13.8508038-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:00.0327298-08:00", + "timestamp": "2020-11-23T14:19:13.8508163-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.034998549055127115 + "value": 0.06247961688322834 }, { - "timestamp": "2020-11-23T11:25:00.0327417-08:00", + "timestamp": "2020-11-23T14:19:13.8508271-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:00.0327539-08:00", + "timestamp": "2020-11-23T14:19:13.8508544-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:00.0327659-08:00", + "timestamp": "2020-11-23T14:19:13.8508652-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:25:00.0327775-08:00", + "timestamp": "2020-11-23T14:19:13.8508746-08:00", "name": "runtime-counter/gen-1-size", - "value": 18168.0 + "value": 14760.0 }, { - "timestamp": "2020-11-23T11:25:00.0328-08:00", + "timestamp": "2020-11-23T14:19:13.8508931-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:25:00.032812-08:00", + "timestamp": "2020-11-23T14:19:13.8509024-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:25:00.0328238-08:00", + "timestamp": "2020-11-23T14:19:13.8509126-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:25:00.0328358-08:00", + "timestamp": "2020-11-23T14:19:13.8509229-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 156693.0 + "value": 152338.0 }, { - "timestamp": "2020-11-23T11:25:00.0328473-08:00", + "timestamp": "2020-11-23T14:19:13.8509327-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1769.0 + "value": 1703.0 }, { - "timestamp": "2020-11-23T11:25:00.8560672-08:00", + "timestamp": "2020-11-23T14:19:14.8564484-08:00", "name": "runtime-counter/cpu-usage", - "value": 20.0 + "value": 35.0 + }, + { + "timestamp": "2020-11-23T22:19:16.0809962Z", + "name": "benchmarks/working-set", + "value": 88.0 + }, + { + "timestamp": "2020-11-23T22:19:16.0809962Z", + "name": "benchmarks/cpu", + "value": 0.0 + }, + { + "timestamp": "2020-11-23T22:19:16.0809962Z", + "name": "benchmarks/cpu/raw", + "value": 3.0 }, { - "timestamp": "2020-11-23T11:25:00.8561039-08:00", + "timestamp": "2020-11-23T14:19:14.8564822-08:00", "name": "runtime-counter/working-set", - "value": 90.0 + "value": 92.0 }, { - "timestamp": "2020-11-23T11:25:00.8561207-08:00", + "timestamp": "2020-11-23T14:19:14.8564989-08:00", "name": "runtime-counter/gc-heap-size", - "value": 23.0 + "value": 26.0 }, { - "timestamp": "2020-11-23T11:25:00.8561362-08:00", + "timestamp": "2020-11-23T14:19:14.856516-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 1.0 }, { - "timestamp": "2020-11-23T11:25:00.8561471-08:00", + "timestamp": "2020-11-23T14:19:14.8565276-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:00.8561582-08:00", + "timestamp": "2020-11-23T14:19:14.8565389-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:00.8561694-08:00", + "timestamp": "2020-11-23T14:19:14.8565512-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 20.0 }, { - "timestamp": "2020-11-23T11:25:00.8561861-08:00", + "timestamp": "2020-11-23T14:19:14.8565692-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 1.0 + "value": 2.0 }, { - "timestamp": "2020-11-23T11:25:00.8561985-08:00", + "timestamp": "2020-11-23T14:19:14.8565862-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 4.0 + "value": 2.0 }, { - "timestamp": "2020-11-23T11:25:00.8562097-08:00", + "timestamp": "2020-11-23T14:19:14.8565991-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 38809.0 + "value": 109555.0 }, { - "timestamp": "2020-11-23T11:25:00.8562202-08:00", + "timestamp": "2020-11-23T14:19:14.8566109-08:00", "name": "runtime-counter/alloc-rate", - "value": 19966664.0 + "value": 35942280.0 }, { - "timestamp": "2020-11-23T11:25:00.8562315-08:00", + "timestamp": "2020-11-23T14:19:14.8566241-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:00.8562432-08:00", + "timestamp": "2020-11-23T14:19:14.856637-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.0349818762239262 + "value": 0.06246010446624066 }, { - "timestamp": "2020-11-23T11:25:00.8562534-08:00", + "timestamp": "2020-11-23T14:19:14.8566481-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:00.8562638-08:00", + "timestamp": "2020-11-23T14:19:14.8566606-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:00.8562741-08:00", + "timestamp": "2020-11-23T14:19:14.8566715-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:25:00.8562839-08:00", + "timestamp": "2020-11-23T14:19:14.8566826-08:00", "name": "runtime-counter/gen-1-size", - "value": 20336.0 + "value": 16216.0 }, { - "timestamp": "2020-11-23T11:25:00.8563052-08:00", + "timestamp": "2020-11-23T14:19:14.8567051-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:25:00.8563156-08:00", + "timestamp": "2020-11-23T14:19:14.8567813-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:25:00.8563268-08:00", + "timestamp": "2020-11-23T14:19:14.8567966-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:25:00.8563372-08:00", + "timestamp": "2020-11-23T14:19:14.8568073-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 156693.0 + "value": 154251.0 }, { - "timestamp": "2020-11-23T11:25:00.8563479-08:00", + "timestamp": "2020-11-23T14:19:14.8568173-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1769.0 + "value": 1728.0 }, { - "timestamp": "2020-11-23T11:25:01.8587888-08:00", + "timestamp": "2020-11-23T14:19:15.8581952-08:00", "name": "runtime-counter/cpu-usage", - "value": 17.0 - }, - { - "timestamp": "2020-11-23T19:25:02.9821936Z", - "name": "benchmarks/working-set", - "value": 87.0 - }, - { - "timestamp": "2020-11-23T19:25:02.9821936Z", - "name": "benchmarks/cpu", - "value": 18.0 - }, - { - "timestamp": "2020-11-23T19:25:02.9821936Z", - "name": "benchmarks/cpu/raw", - "value": 144.88 + "value": 8.0 }, { - "timestamp": "2020-11-23T11:25:01.8588297-08:00", + "timestamp": "2020-11-23T14:19:15.8582122-08:00", "name": "runtime-counter/working-set", - "value": 90.0 + "value": 92.0 }, { - "timestamp": "2020-11-23T11:25:01.858848-08:00", + "timestamp": "2020-11-23T14:19:15.8582221-08:00", "name": "runtime-counter/gc-heap-size", - "value": 16.0 + "value": 32.0 }, { - "timestamp": "2020-11-23T11:25:01.8588648-08:00", + "timestamp": "2020-11-23T14:19:15.8582299-08:00", "name": "runtime-counter/gen-0-gc-count", - "value": 1.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:01.8588772-08:00", + "timestamp": "2020-11-23T14:19:15.8582341-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:01.8589025-08:00", + "timestamp": "2020-11-23T14:19:15.8582382-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:01.8589166-08:00", + "timestamp": "2020-11-23T14:19:15.858243-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 16.0 }, { - "timestamp": "2020-11-23T11:25:01.8589348-08:00", + "timestamp": "2020-11-23T14:19:15.8582534-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 2.0 + "value": 25.0 }, { - "timestamp": "2020-11-23T11:25:01.8589493-08:00", + "timestamp": "2020-11-23T14:19:15.858267-08:00", "name": "runtime-counter/threadpool-queue-length", - "value": 1.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:01.8589621-08:00", + "timestamp": "2020-11-23T14:19:15.8582727-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 53104.0 + "value": 18515.0 }, { - "timestamp": "2020-11-23T11:25:01.8589733-08:00", + "timestamp": "2020-11-23T14:19:15.8582773-08:00", "name": "runtime-counter/alloc-rate", - "value": 26636048.0 + "value": 6513080.0 }, { - "timestamp": "2020-11-23T11:25:01.8589863-08:00", + "timestamp": "2020-11-23T14:19:15.8582842-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:01.8589994-08:00", + "timestamp": "2020-11-23T14:19:15.8582895-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.034973269174666 + "value": 0.06246010446624066 }, { - "timestamp": "2020-11-23T11:25:01.8590115-08:00", + "timestamp": "2020-11-23T14:19:15.8582937-08:00", "name": "runtime-counter/exception-count", - "value": 0.0 + "value": 1023.0 }, { - "timestamp": "2020-11-23T11:25:01.8590352-08:00", + "timestamp": "2020-11-23T14:19:15.8582983-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:01.8590485-08:00", + "timestamp": "2020-11-23T14:19:15.8583026-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:25:01.8590657-08:00", + "timestamp": "2020-11-23T14:19:15.8583068-08:00", "name": "runtime-counter/gen-1-size", - "value": 21456.0 + "value": 16216.0 }, { - "timestamp": "2020-11-23T11:25:01.8590886-08:00", + "timestamp": "2020-11-23T14:19:15.858315-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:25:01.8590997-08:00", + "timestamp": "2020-11-23T14:19:15.858319-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:25:01.859112-08:00", + "timestamp": "2020-11-23T14:19:15.8583233-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:25:01.859124-08:00", + "timestamp": "2020-11-23T14:19:15.8583277-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 156693.0 + "value": 167449.0 }, { - "timestamp": "2020-11-23T11:25:01.8591355-08:00", + "timestamp": "2020-11-23T14:19:15.8583316-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1769.0 + "value": 1920.0 }, { - "timestamp": "2020-11-23T11:25:02.7045318-08:00", + "timestamp": "2020-11-23T14:19:16.848398-08:00", "name": "runtime-counter/cpu-usage", - "value": 22.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:02.7045744-08:00", + "timestamp": "2020-11-23T14:19:16.8484183-08:00", "name": "runtime-counter/working-set", - "value": 90.0 + "value": 92.0 }, { - "timestamp": "2020-11-23T11:25:02.7045975-08:00", + "timestamp": "2020-11-23T14:19:16.8484291-08:00", "name": "runtime-counter/gc-heap-size", - "value": 6.0 + "value": 32.0 }, { - "timestamp": "2020-11-23T11:25:02.7046303-08:00", + "timestamp": "2020-11-23T14:19:16.8484391-08:00", "name": "runtime-counter/gen-0-gc-count", - "value": 1.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:02.7046424-08:00", + "timestamp": "2020-11-23T14:19:16.848445-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:02.704654-08:00", + "timestamp": "2020-11-23T14:19:16.8484506-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:02.7046665-08:00", + "timestamp": "2020-11-23T14:19:16.8484565-08:00", "name": "runtime-counter/threadpool-thread-count", - "value": 20.0 + "value": 16.0 }, { - "timestamp": "2020-11-23T11:25:02.7046952-08:00", + "timestamp": "2020-11-23T14:19:16.8484703-08:00", "name": "runtime-counter/monitor-lock-contention-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:02.7047104-08:00", + "timestamp": "2020-11-23T14:19:16.8484781-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:02.7047287-08:00", + "timestamp": "2020-11-23T14:19:16.848485-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 46010.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:02.704743-08:00", + "timestamp": "2020-11-23T14:19:16.8484909-08:00", "name": "runtime-counter/alloc-rate", - "value": 22640728.0 + "value": 8144.0 }, { - "timestamp": "2020-11-23T11:25:02.7047565-08:00", + "timestamp": "2020-11-23T14:19:16.8484969-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:02.7047698-08:00", + "timestamp": "2020-11-23T14:19:16.8485035-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.03495631339125425 + "value": 0.06246010446624066 }, { - "timestamp": "2020-11-23T11:25:02.7047823-08:00", + "timestamp": "2020-11-23T14:19:16.8485089-08:00", "name": "runtime-counter/exception-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:02.7047949-08:00", + "timestamp": "2020-11-23T14:19:16.8485146-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:02.704807-08:00", + "timestamp": "2020-11-23T14:19:16.8485202-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:25:02.7048227-08:00", + "timestamp": "2020-11-23T14:19:16.8485254-08:00", "name": "runtime-counter/gen-1-size", - "value": 23664.0 + "value": 16216.0 }, { - "timestamp": "2020-11-23T11:25:02.7048473-08:00", + "timestamp": "2020-11-23T14:19:16.8485357-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:25:02.7048599-08:00", + "timestamp": "2020-11-23T14:19:16.8485409-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:25:02.704873-08:00", + "timestamp": "2020-11-23T14:19:16.8485464-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:25:02.7048862-08:00", + "timestamp": "2020-11-23T14:19:16.848552-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 156693.0 + "value": 167449.0 }, { - "timestamp": "2020-11-23T11:25:02.7048987-08:00", + "timestamp": "2020-11-23T14:19:16.8485572-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1769.0 + "value": 1920.0 }, { - "timestamp": "2020-11-23T11:25:03.7027966-08:00", + "timestamp": "2020-11-23T14:19:17.8484721-08:00", "name": "runtime-counter/cpu-usage", - "value": 2.0 - }, - { - "timestamp": "2020-11-23T19:25:04.0013649Z", - "name": "benchmarks/working-set", - "value": 87.0 - }, - { - "timestamp": "2020-11-23T19:25:04.0013649Z", - "name": "benchmarks/cpu", - "value": 1.0 - }, - { - "timestamp": "2020-11-23T19:25:04.0013649Z", - "name": "benchmarks/cpu/raw", - "value": 6.13 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:03.7029018-08:00", + "timestamp": "2020-11-23T14:19:17.8484935-08:00", "name": "runtime-counter/working-set", - "value": 90.0 + "value": 92.0 }, { - "timestamp": "2020-11-23T11:25:03.7029341-08:00", + "timestamp": "2020-11-23T14:19:17.8485047-08:00", "name": "runtime-counter/gc-heap-size", - "value": 7.0 + "value": 32.0 }, { - "timestamp": "2020-11-23T11:25:03.7029518-08:00", + "timestamp": "2020-11-23T14:19:17.8485145-08:00", "name": "runtime-counter/gen-0-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:03.7029625-08:00", + "timestamp": "2020-11-23T14:19:17.8485202-08:00", "name": "runtime-counter/gen-1-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:03.7029735-08:00", + "timestamp": "2020-11-23T14:19:17.8485252-08:00", "name": "runtime-counter/gen-2-gc-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:03.7029836-08:00", + "timestamp": "2020-11-23T14:19:17.8485313-08:00", "name": "runtime-counter/threadpool-thread-count", "value": 16.0 }, { - "timestamp": "2020-11-23T11:25:03.7029996-08:00", + "timestamp": "2020-11-23T14:19:17.8485441-08:00", "name": "runtime-counter/monitor-lock-contention-count", - "value": 46.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:03.7030126-08:00", + "timestamp": "2020-11-23T14:19:17.8485525-08:00", "name": "runtime-counter/threadpool-queue-length", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:03.7030237-08:00", + "timestamp": "2020-11-23T14:19:17.8485591-08:00", "name": "runtime-counter/threadpool-completed-items-count", - "value": 1230.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:03.7030345-08:00", + "timestamp": "2020-11-23T14:19:17.8485653-08:00", "name": "runtime-counter/alloc-rate", - "value": 1010536.0 + "value": 8168.0 }, { - "timestamp": "2020-11-23T11:25:03.7030492-08:00", + "timestamp": "2020-11-23T14:19:17.8485712-08:00", "name": "runtime-counter/active-timer-count", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:03.703061-08:00", + "timestamp": "2020-11-23T14:19:17.848578-08:00", "name": "runtime-counter/gc-fragmentation", - "value": 0.03495631339125425 + "value": 0.06246010446624066 }, { - "timestamp": "2020-11-23T11:25:03.7030712-08:00", + "timestamp": "2020-11-23T14:19:17.8485835-08:00", "name": "runtime-counter/exception-count", - "value": 1027.0 + "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:03.703082-08:00", + "timestamp": "2020-11-23T14:19:17.8485892-08:00", "name": "runtime-counter/time-in-gc", "value": 0.0 }, { - "timestamp": "2020-11-23T11:25:03.703092-08:00", + "timestamp": "2020-11-23T14:19:17.8485946-08:00", "name": "runtime-counter/gen-0-size", "value": 192.0 }, { - "timestamp": "2020-11-23T11:25:03.7031022-08:00", + "timestamp": "2020-11-23T14:19:17.8486-08:00", "name": "runtime-counter/gen-1-size", - "value": 23664.0 + "value": 16216.0 }, { - "timestamp": "2020-11-23T11:25:03.703123-08:00", + "timestamp": "2020-11-23T14:19:17.8486105-08:00", "name": "runtime-counter/loh-size", - "value": 134392.0 + "value": 134984.0 }, { - "timestamp": "2020-11-23T11:25:03.7031338-08:00", + "timestamp": "2020-11-23T14:19:17.8486158-08:00", "name": "runtime-counter/", - "value": 1180056.0 + "value": 1311152.0 }, { - "timestamp": "2020-11-23T11:25:03.7031443-08:00", + "timestamp": "2020-11-23T14:19:17.8486212-08:00", "name": "runtime-counter/assembly-count", - "value": 97.0 + "value": 94.0 }, { - "timestamp": "2020-11-23T11:25:03.7031552-08:00", + "timestamp": "2020-11-23T14:19:17.8486268-08:00", "name": "runtime-counter/il-bytes-jitted", - "value": 168507.0 + "value": 167449.0 }, { - "timestamp": "2020-11-23T11:25:03.7031652-08:00", + "timestamp": "2020-11-23T14:19:17.848632-08:00", "name": "runtime-counter/methods-jitted-count", - "value": 1928.0 + "value": 1920.0 } ] ], @@ -5296,19 +4686,19 @@ "load": { "results": { "netSdkVersion": "3.1.404", - "benchmarks/build-time": 10732.0, + "benchmarks/build-time": 4030.0, "benchmarks/published-size": 68225.0, - "benchmarks/start-time": 478.0, + "benchmarks/start-time": 265.0, "benchmarks/working-set": 28.0, - "benchmarks/cpu": 19.0, - "benchmarks/cpu/raw": 148.56, - "http/firstrequest": 330.0, - "bombardier/requests": 371323.0, + "benchmarks/cpu": 27.0, + "benchmarks/cpu/raw": 219.0, + "http/firstrequest": 187.0, + "bombardier/requests": 476661.0, "bombardier/badresponses": 0.0, - "bombardier/latency/mean": 10323.215906367233, - "bombardier/latency/max": 209999.0, - "bombardier/rps/max": 50385.891950253936, - "bombardier/rps/mean": 24745.892658743815, + "bombardier/latency/mean": 8048.861801154279, + "bombardier/latency/max": 118997.0, + "bombardier/rps/max": 37368.02770497153, + "bombardier/rps/mean": 31769.208308707133, "bombardier/raw": { "spec": { "numberOfConnections": 256, @@ -5322,42 +4712,42 @@ "client": "fasthttp" }, "result": { - "bytesRead": 45672729, - "bytesWritten": 23022026, - "timeTakenSeconds": 15.0086199, + "bytesRead": 58629303, + "bytesWritten": 29552982, + "timeTakenSeconds": 15.0060007, "req1xx": 0, - "req2xx": 371323, + "req2xx": 476661, "req3xx": 0, "req4xx": 0, "req5xx": 0, "others": 0, "latency": { - "mean": 10323.215906367233, - "stddev": 2667.774786871292, - "max": 209999, + "mean": 8048.861801154279, + "stddev": 668.9511937091237, + "max": 118997, "percentiles": { - "50": 9001, - "75": 12000, - "90": 16000, - "95": 19996, - "99": 29003 + "50": 6002, + "75": 11000, + "90": 12000, + "95": 12996, + "99": 14000 } }, "rps": { - "mean": 24745.892658743815, - "stddev": 7791.080793443214, - "max": 50385.891950253936, + "mean": 31769.208308707133, + "stddev": 3146.897790612024, + "max": 37368.02770497153, "percentiles": { - "50": 25933.202358, - "75": 30702.046803, - "90": 34191.369467, - "95": 35801.253044, - "99": 38162.850382 + "50": 32263.327702, + "75": 33749.325013, + "90": 34848.780293, + "95": 35314.488414, + "99": 36207.858368 } } } }, - "bombardier/throughput": 2.9021261713399054 + "bombardier/throughput": 3.726060099404094 }, "metadata": [ { @@ -5367,8 +4757,8 @@ }, { "name": "benchmarks/cpu/raw", - "description": "Raw CPU Usage (%)", - "format": "n2" + "description": "Cores usage (%)", + "format": "n0" }, { "name": "benchmarks/working-set", @@ -5819,302 +5209,362 @@ "measurements": [ [ { - "timestamp": "2020-11-23T19:24:30.7701309Z", + "timestamp": "2020-11-23T22:18:50.3841014Z", "name": "netSdkVersion", "value": "3.1.404" }, { - "timestamp": "2020-11-23T19:24:41.5041308Z", + "timestamp": "2020-11-23T22:18:54.4142479Z", "name": "benchmarks/build-time", - "value": 10732 + "value": 4030 }, { - "timestamp": "2020-11-23T19:24:41.5085996Z", + "timestamp": "2020-11-23T22:18:54.4161666Z", "name": "benchmarks/published-size", "value": 68225 }, { - "timestamp": "2020-11-23T19:24:41.9884939Z", + "timestamp": "2020-11-23T22:18:54.6824745Z", "name": "benchmarks/start-time", - "value": 478 + "value": 265 }, { - "timestamp": "2020-11-23T19:24:43.202151Z", + "timestamp": "2020-11-23T22:18:55.7229434Z", "name": "benchmarks/working-set", "value": 28.0 }, { - "timestamp": "2020-11-23T19:24:43.202151Z", + "timestamp": "2020-11-23T22:18:55.7229434Z", "name": "benchmarks/cpu", - "value": 1.0 + "value": 2.0 }, { - "timestamp": "2020-11-23T19:24:43.202151Z", + "timestamp": "2020-11-23T22:18:55.7229434Z", "name": "benchmarks/cpu/raw", - "value": 11.95 + "value": 12.0 }, { - "timestamp": "2020-11-23T19:24:44.2688018Z", + "timestamp": "2020-11-23T22:18:56.7376728Z", "name": "benchmarks/working-set", "value": 28.0 }, { - "timestamp": "2020-11-23T19:24:44.2688018Z", + "timestamp": "2020-11-23T22:18:56.7376728Z", "name": "benchmarks/cpu", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:44.2688018Z", + "timestamp": "2020-11-23T22:18:56.7376728Z", "name": "benchmarks/cpu/raw", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:45.3150342Z", + "timestamp": "2020-11-23T22:18:57.7446205Z", "name": "benchmarks/working-set", "value": 28.0 }, { - "timestamp": "2020-11-23T19:24:45.3150342Z", + "timestamp": "2020-11-23T22:18:57.7446205Z", "name": "benchmarks/cpu", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:45.3150342Z", + "timestamp": "2020-11-23T22:18:57.7446205Z", "name": "benchmarks/cpu/raw", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:46.3304773Z", + "timestamp": "2020-11-23T22:18:58.7638446Z", "name": "benchmarks/working-set", "value": 28.0 }, { - "timestamp": "2020-11-23T19:24:46.3304773Z", + "timestamp": "2020-11-23T22:18:58.7638446Z", "name": "benchmarks/cpu", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:46.3304773Z", + "timestamp": "2020-11-23T22:18:58.7638446Z", "name": "benchmarks/cpu/raw", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:47.3609101Z", + "timestamp": "2020-11-23T22:18:59.777885Z", "name": "benchmarks/working-set", "value": 28.0 }, { - "timestamp": "2020-11-23T19:24:47.3609101Z", + "timestamp": "2020-11-23T22:18:59.777885Z", "name": "benchmarks/cpu", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:47.3609101Z", + "timestamp": "2020-11-23T22:18:59.777885Z", "name": "benchmarks/cpu/raw", "value": 0.0 }, { - "timestamp": "2020-11-23T19:24:48.4237448Z", + "timestamp": "2020-11-23T22:19:00.8059063Z", "name": "benchmarks/working-set", - "value": 22.0 + "value": 21.0 }, { - "timestamp": "2020-11-23T19:24:48.4237448Z", + "timestamp": "2020-11-23T22:19:00.8059063Z", "name": "benchmarks/cpu", - "value": 7.0 + "value": 11.0 }, { - "timestamp": "2020-11-23T19:24:48.4237448Z", + "timestamp": "2020-11-23T22:19:00.8059063Z", "name": "benchmarks/cpu/raw", - "value": 54.39 + "value": 91.0 }, { - "timestamp": "2020-11-23T19:24:50.489334Z", + "timestamp": "2020-11-23T22:19:01.819884Z", "name": "benchmarks/working-set", - "value": 22.0 + "value": 21.0 + }, + { + "timestamp": "2020-11-23T22:19:01.819884Z", + "name": "benchmarks/cpu", + "value": 23.0 + }, + { + "timestamp": "2020-11-23T22:19:01.819884Z", + "name": "benchmarks/cpu/raw", + "value": 182.0 + }, + { + "timestamp": "2020-11-23T22:19:02.8407629Z", + "name": "benchmarks/working-set", + "value": 21.0 }, { - "timestamp": "2020-11-23T19:24:50.489334Z", + "timestamp": "2020-11-23T22:19:02.8407629Z", "name": "benchmarks/cpu", "value": 15.0 }, { - "timestamp": "2020-11-23T19:24:50.489334Z", + "timestamp": "2020-11-23T22:19:02.8407629Z", "name": "benchmarks/cpu/raw", - "value": 118.01 + "value": 121.0 }, { - "timestamp": "2020-11-23T19:24:52.5392043Z", + "timestamp": "2020-11-23T22:19:03.8528793Z", "name": "benchmarks/working-set", - "value": 22.0 + "value": 21.0 }, { - "timestamp": "2020-11-23T19:24:52.5392043Z", + "timestamp": "2020-11-23T22:19:03.8528793Z", "name": "benchmarks/cpu", - "value": 16.0 + "value": 19.0 }, { - "timestamp": "2020-11-23T19:24:52.5392043Z", + "timestamp": "2020-11-23T22:19:03.8528793Z", "name": "benchmarks/cpu/raw", - "value": 128.82 + "value": 154.0 }, { - "timestamp": "2020-11-23T19:24:53.5984318Z", + "timestamp": "2020-11-23T22:19:04.8646245Z", "name": "benchmarks/working-set", - "value": 22.0 + "value": 21.0 }, { - "timestamp": "2020-11-23T19:24:53.5984318Z", + "timestamp": "2020-11-23T22:19:04.8646245Z", "name": "benchmarks/cpu", - "value": 16.0 + "value": 25.0 }, { - "timestamp": "2020-11-23T19:24:53.5984318Z", + "timestamp": "2020-11-23T22:19:04.8646245Z", "name": "benchmarks/cpu/raw", - "value": 131.29 + "value": 199.0 }, { - "timestamp": "2020-11-23T19:24:54.6377163Z", + "timestamp": "2020-11-23T22:19:05.879553Z", "name": "benchmarks/working-set", - "value": 22.0 + "value": 21.0 }, { - "timestamp": "2020-11-23T19:24:54.6377163Z", + "timestamp": "2020-11-23T22:19:05.879553Z", "name": "benchmarks/cpu", - "value": 14.0 + "value": 24.0 }, { - "timestamp": "2020-11-23T19:24:54.6377163Z", + "timestamp": "2020-11-23T22:19:05.879553Z", "name": "benchmarks/cpu/raw", - "value": 112.76 + "value": 192.0 }, { - "timestamp": "2020-11-23T19:24:55.6917609Z", + "timestamp": "2020-11-23T22:19:06.8921705Z", "name": "benchmarks/working-set", - "value": 22.0 + "value": 21.0 }, { - "timestamp": "2020-11-23T19:24:55.6917609Z", + "timestamp": "2020-11-23T22:19:06.8921705Z", "name": "benchmarks/cpu", - "value": 17.0 + "value": 19.0 }, { - "timestamp": "2020-11-23T19:24:55.6917609Z", + "timestamp": "2020-11-23T22:19:06.8921705Z", "name": "benchmarks/cpu/raw", - "value": 139.34 + "value": 153.0 }, { - "timestamp": "2020-11-23T19:24:57.8752954Z", + "timestamp": "2020-11-23T22:19:07.910592Z", "name": "benchmarks/working-set", - "value": 22.0 + "value": 21.0 }, { - "timestamp": "2020-11-23T19:24:57.8752954Z", + "timestamp": "2020-11-23T22:19:07.910592Z", "name": "benchmarks/cpu", - "value": 13.0 + "value": 20.0 }, { - "timestamp": "2020-11-23T19:24:57.8752954Z", + "timestamp": "2020-11-23T22:19:07.910592Z", "name": "benchmarks/cpu/raw", - "value": 100.18 + "value": 160.0 }, { - "timestamp": "2020-11-23T19:24:58.9462549Z", + "timestamp": "2020-11-23T22:19:08.9257728Z", "name": "benchmarks/working-set", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T22:19:08.9257728Z", + "name": "benchmarks/cpu", "value": 22.0 }, { - "timestamp": "2020-11-23T19:24:58.9462549Z", + "timestamp": "2020-11-23T22:19:08.9257728Z", + "name": "benchmarks/cpu/raw", + "value": 174.0 + }, + { + "timestamp": "2020-11-23T22:19:09.9366564Z", + "name": "benchmarks/working-set", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T22:19:09.9366564Z", "name": "benchmarks/cpu", - "value": 16.0 + "value": 24.0 }, { - "timestamp": "2020-11-23T19:24:58.9462549Z", + "timestamp": "2020-11-23T22:19:09.9366564Z", "name": "benchmarks/cpu/raw", - "value": 126.93 + "value": 193.0 }, { - "timestamp": "2020-11-23T19:25:00.0085407Z", + "timestamp": "2020-11-23T22:19:10.952017Z", "name": "benchmarks/working-set", - "value": 22.0 + "value": 21.0 }, { - "timestamp": "2020-11-23T19:25:00.0085407Z", + "timestamp": "2020-11-23T22:19:10.952017Z", "name": "benchmarks/cpu", - "value": 19.0 + "value": 25.0 }, { - "timestamp": "2020-11-23T19:25:00.0085407Z", + "timestamp": "2020-11-23T22:19:10.952017Z", "name": "benchmarks/cpu/raw", - "value": 148.56 + "value": 202.0 }, { - "timestamp": "2020-11-23T19:25:01.0585596Z", + "timestamp": "2020-11-23T22:19:11.9707881Z", "name": "benchmarks/working-set", - "value": 22.0 + "value": 21.0 }, { - "timestamp": "2020-11-23T19:25:01.0585596Z", + "timestamp": "2020-11-23T22:19:11.9707881Z", "name": "benchmarks/cpu", - "value": 17.0 + "value": 27.0 }, { - "timestamp": "2020-11-23T19:25:01.0585596Z", + "timestamp": "2020-11-23T22:19:11.9707881Z", "name": "benchmarks/cpu/raw", - "value": 135.41 + "value": 219.0 }, { - "timestamp": "2020-11-23T19:25:02.1074828Z", + "timestamp": "2020-11-23T22:19:12.9840953Z", "name": "benchmarks/working-set", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T22:19:12.9840953Z", + "name": "benchmarks/cpu", "value": 22.0 }, { - "timestamp": "2020-11-23T19:25:02.1074828Z", + "timestamp": "2020-11-23T22:19:12.9840953Z", + "name": "benchmarks/cpu/raw", + "value": 179.0 + }, + { + "timestamp": "2020-11-23T22:19:13.9954621Z", + "name": "benchmarks/working-set", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T22:19:13.9954621Z", "name": "benchmarks/cpu", - "value": 16.0 + "value": 18.0 + }, + { + "timestamp": "2020-11-23T22:19:13.9954621Z", + "name": "benchmarks/cpu/raw", + "value": 147.0 + }, + { + "timestamp": "2020-11-23T22:19:15.0154995Z", + "name": "benchmarks/working-set", + "value": 21.0 + }, + { + "timestamp": "2020-11-23T22:19:15.0154995Z", + "name": "benchmarks/cpu", + "value": 25.0 }, { - "timestamp": "2020-11-23T19:25:02.1074828Z", + "timestamp": "2020-11-23T22:19:15.0154995Z", "name": "benchmarks/cpu/raw", - "value": 125.13 + "value": 198.0 }, { - "timestamp": "2020-11-23T11:24:42.344501-08:00", + "timestamp": "2020-11-23T14:18:54.8851973-08:00", "name": "http/firstrequest", - "value": 330 + "value": 187 }, { - "timestamp": "2020-11-23T11:25:02.8609718-08:00", + "timestamp": "2020-11-23T14:19:15.1038203-08:00", "name": "bombardier/requests", - "value": 371323 + "value": 476661 }, { - "timestamp": "2020-11-23T11:25:02.8610676-08:00", + "timestamp": "2020-11-23T14:19:15.1038616-08:00", "name": "bombardier/badresponses", "value": 0 }, { - "timestamp": "2020-11-23T11:25:02.8626874-08:00", + "timestamp": "2020-11-23T14:19:15.104594-08:00", "name": "bombardier/latency/mean", - "value": 10323.215906367233 + "value": 8048.861801154279 }, { - "timestamp": "2020-11-23T11:25:02.863891-08:00", + "timestamp": "2020-11-23T14:19:15.1048735-08:00", "name": "bombardier/latency/max", - "value": 209999.0 + "value": 118997.0 }, { - "timestamp": "2020-11-23T11:25:02.8640672-08:00", + "timestamp": "2020-11-23T14:19:15.1049166-08:00", "name": "bombardier/rps/max", - "value": 50385.891950253936 + "value": 37368.02770497153 }, { - "timestamp": "2020-11-23T11:25:02.8641561-08:00", + "timestamp": "2020-11-23T14:19:15.1049564-08:00", "name": "bombardier/rps/mean", - "value": 24745.892658743815 + "value": 31769.208308707133 }, { - "timestamp": "2020-11-23T11:25:02.8644928-08:00", + "timestamp": "2020-11-23T14:19:15.1050759-08:00", "name": "bombardier/raw", "value": { "spec": { @@ -6129,46 +5579,46 @@ "client": "fasthttp" }, "result": { - "bytesRead": 45672729, - "bytesWritten": 23022026, - "timeTakenSeconds": 15.0086199, + "bytesRead": 58629303, + "bytesWritten": 29552982, + "timeTakenSeconds": 15.0060007, "req1xx": 0, - "req2xx": 371323, + "req2xx": 476661, "req3xx": 0, "req4xx": 0, "req5xx": 0, "others": 0, "latency": { - "mean": 10323.215906367233, - "stddev": 2667.774786871292, - "max": 209999, + "mean": 8048.861801154279, + "stddev": 668.9511937091237, + "max": 118997, "percentiles": { - "50": 9001, - "75": 12000, - "90": 16000, - "95": 19996, - "99": 29003 + "50": 6002, + "75": 11000, + "90": 12000, + "95": 12996, + "99": 14000 } }, "rps": { - "mean": 24745.892658743815, - "stddev": 7791.080793443214, - "max": 50385.891950253936, + "mean": 31769.208308707133, + "stddev": 3146.897790612024, + "max": 37368.02770497153, "percentiles": { - "50": 25933.202358, - "75": 30702.046803, - "90": 34191.369467, - "95": 35801.253044, - "99": 38162.850382 + "50": 32263.327702, + "75": 33749.325013, + "90": 34848.780293, + "95": 35314.488414, + "99": 36207.858368 } } } } }, { - "timestamp": "2020-11-23T11:25:02.8645529-08:00", + "timestamp": "2020-11-23T14:19:15.1051186-08:00", "name": "bombardier/throughput", - "value": 2.9021261713399054 + "value": 3.726060099404094 } ] ], diff --git a/test/Microsoft.Crank.IntegrationTests/HelloTests.cs b/test/Microsoft.Crank.IntegrationTests/HelloTests.cs index 89eb955e5..b1b877502 100644 --- a/test/Microsoft.Crank.IntegrationTests/HelloTests.cs +++ b/test/Microsoft.Crank.IntegrationTests/HelloTests.cs @@ -9,6 +9,7 @@ using Xunit; using Xunit.Abstractions; using Microsoft.Crank.Agent; +using System.Dynamic; namespace Microsoft.Crank.IntegrationTests { @@ -87,6 +88,7 @@ public async Task BenchmarkHello() var agentReadyTcs = new TaskCompletionSource(); var stopAgentCts = new CancellationTokenSource(); + // Start the agent var agent = ProcessUtil.RunAsync( "dotnet", "exec crank-agent.dll", @@ -135,5 +137,63 @@ public async Task BenchmarkHello() Assert.Contains("Requests/sec", result.StandardOutput); Assert.Contains(".NET Core SDK Version", result.StandardOutput); } + + [Fact] + public async Task ExecutesScripts() + { + var agentReadyTcs = new TaskCompletionSource(); + var stopAgentCts = new CancellationTokenSource(); + + // Start the agent + var agent = ProcessUtil.RunAsync( + "dotnet", + "exec crank-agent.dll", + workingDirectory: _crankAgentDirectory, + captureOutput: true, + throwOnError: false, + timeout: TimeSpan.FromMinutes(5), + cancellationToken: stopAgentCts.Token, + outputDataReceived: t => + { + _output.WriteLine($"[AGT] {t}"); + + if (t.Contains("Agent ready")) + { + agentReadyTcs.SetResult(true); + } + } + ); + + // Wait either for the message of the agent to stop + await Task.WhenAny(agentReadyTcs.Task, agent); + + _output.WriteLine($"Starting controller"); + + var result = await ProcessUtil.RunAsync( + "dotnet", + $"exec {Path.Combine(_crankDirectory, "crank.dll")} --config ./assets/hello.benchmarks.yml --scenario hello --profile local --config ./assets/scripts.benchmarks.yml --script add_current_time --output results.json", + workingDirectory: _crankTestsDirectory, + captureOutput: true, + timeout: TimeSpan.FromMinutes(5), + throwOnError: false, + outputDataReceived: t => { _output.WriteLine($"[CTL] {t}"); } + ); + + Assert.Equal(0, result.ExitCode); + + stopAgentCts.Cancel(); + + var cancel = new CancellationTokenSource(); + + // Give 5 seconds to the agent to stop + await Task.WhenAny(agent, Task.Delay(TimeSpan.FromSeconds(5), cancel.Token)); + + cancel.Cancel(); + + var results = System.Text.Json.JsonDocument.Parse(File.ReadAllText(Path.Combine(_crankTestsDirectory, "results.json"))); + + Assert.Contains("a default script", result.StandardOutput); + Assert.NotEmpty(results.RootElement.GetProperty("jobResults").GetProperty("properties").GetProperty("time").GetString()); + } } } diff --git a/test/Microsoft.Crank.IntegrationTests/assets/scripts.benchmarks.yml b/test/Microsoft.Crank.IntegrationTests/assets/scripts.benchmarks.yml new file mode 100644 index 000000000..2a3b01e98 --- /dev/null +++ b/test/Microsoft.Crank.IntegrationTests/assets/scripts.benchmarks.yml @@ -0,0 +1,10 @@ +defaultScripts: + - | + console.log("a default script") + +scripts: + + # records the current date and time as a custom property + add_current_time: | + benchmarks.properties["time"] = new Date().toISOString(); + From f75579324f4143b095e5a3383ae3fbe2a2a4e2dd Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Mon, 23 Nov 2020 14:35:12 -0800 Subject: [PATCH 07/13] Adding counter tests --- .../HelloTests.cs | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/test/Microsoft.Crank.IntegrationTests/HelloTests.cs b/test/Microsoft.Crank.IntegrationTests/HelloTests.cs index b1b877502..94c5f0e09 100644 --- a/test/Microsoft.Crank.IntegrationTests/HelloTests.cs +++ b/test/Microsoft.Crank.IntegrationTests/HelloTests.cs @@ -195,5 +195,62 @@ public async Task ExecutesScripts() Assert.Contains("a default script", result.StandardOutput); Assert.NotEmpty(results.RootElement.GetProperty("jobResults").GetProperty("properties").GetProperty("time").GetString()); } + + [Fact] + public async Task DotnetCounters() + { + var agentReadyTcs = new TaskCompletionSource(); + var stopAgentCts = new CancellationTokenSource(); + + // Start the agent + var agent = ProcessUtil.RunAsync( + "dotnet", + "exec crank-agent.dll", + workingDirectory: _crankAgentDirectory, + captureOutput: true, + throwOnError: false, + timeout: TimeSpan.FromMinutes(5), + cancellationToken: stopAgentCts.Token, + outputDataReceived: t => + { + _output.WriteLine($"[AGT] {t}"); + + if (t.Contains("Agent ready")) + { + agentReadyTcs.SetResult(true); + } + } + ); + + // Wait either for the message of the agent to stop + await Task.WhenAny(agentReadyTcs.Task, agent); + + _output.WriteLine($"Starting controller"); + + var result = await ProcessUtil.RunAsync( + "dotnet", + $"exec {Path.Combine(_crankDirectory, "crank.dll")} --config ./assets/hello.benchmarks.yml --scenario hello --profile local --application.options.counterProviders System.Runtime", + workingDirectory: _crankTestsDirectory, + captureOutput: true, + timeout: TimeSpan.FromMinutes(5), + throwOnError: false, + outputDataReceived: t => { _output.WriteLine($"[CTL] {t}"); } + ); + + Assert.Equal(0, result.ExitCode); + + stopAgentCts.Cancel(); + + var cancel = new CancellationTokenSource(); + + // Give 5 seconds to the agent to stop + await Task.WhenAny(agent, Task.Delay(TimeSpan.FromSeconds(5), cancel.Token)); + + cancel.Cancel(); + + var results = System.Text.Json.JsonDocument.Parse(File.ReadAllText(Path.Combine(_crankTestsDirectory, "results.json"))); + + Assert.Contains("Lock Contention", result.StandardOutput); + } } } From af0bd2e428f94d767395e27369126c1a688e4828 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Mon, 23 Nov 2020 14:43:17 -0800 Subject: [PATCH 08/13] Updating toc --- docs/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/README.md b/docs/README.md index 8b361c07d..ffae971a2 100644 --- a/docs/README.md +++ b/docs/README.md @@ -15,6 +15,8 @@ |-------|------------| |**[Storing results](storing_results.md)** | Storing results locally or in a SQL Server database. |**[Using different .NET versions](dotnet_versions.md)** | Benchmarking with different .NET versions. +|**[Collecting event counters](event_counters.md)** | Collecting predefined and custom event counters. +|**[Post-processing results](post_processing.md)** | Adding custom results and running scripts. ## Reference documentation From dffc001e09270be399f76294c3058c66791da9c3 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Mon, 23 Nov 2020 14:43:55 -0800 Subject: [PATCH 09/13] Removing old code --- src/Microsoft.Crank.Agent/Startup.cs | 104 --------------------------- 1 file changed, 104 deletions(-) diff --git a/src/Microsoft.Crank.Agent/Startup.cs b/src/Microsoft.Crank.Agent/Startup.cs index 780b7af86..9df289c2f 100644 --- a/src/Microsoft.Crank.Agent/Startup.cs +++ b/src/Microsoft.Crank.Agent/Startup.cs @@ -3737,110 +3737,6 @@ private static string GetCGroupController(Job job) return $"benchmarks-{Process.GetCurrentProcess().Id}-{job.Id}"; } - // private static readonly Dictionary MetadataProviderPrefixes = new Dictionary() - // { - // ["System.Runtime"] = "runtime-counter", - // ["Microsoft-AspNetCore-Server-Kestrel"] = "kestrel-counter", - // ["Microsoft.AspNetCore.Hosting"] = "aspnet-counter", - // ["Microsoft.AspNetCore.Http.Connections"] = "signalr-counter", - // ["Grpc.AspNetCore.Server"] = "grpc-server-counter", - // ["Grpc.Net.client"] = "grpc-client-counter", - // ["Npgsql"] = "npgsql-counter" - // }; - - // private static readonly Dictionary MetadataProviders = new Dictionary - // { - // ["System.Runtime"] = new MeasurementMetadata[] - // { - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/cpu-usage", LongDescription = "Amount of time the process has utilized the CPU (ms)", ShortDescription = "CPU Usage (%)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/working-set", LongDescription = "Amount of working set used by the process (MB)", ShortDescription = "Working Set (MB)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gc-heap-size", LongDescription = "Total heap size reported by the GC (MB)", ShortDescription = "GC Heap Size (MB)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-0-gc-count", LongDescription = "Number of Gen 0 GCs / min", ShortDescription = "Gen 0 GC (#/min)", Format = "n02", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-1-gc-count", LongDescription = "Number of Gen 1 GCs / min", ShortDescription = "Gen 1 GC (#/min)", Format = "n02", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-2-gc-count", LongDescription = "Number of Gen 2 GCs / min", ShortDescription = "Gen 2 GC (#/min)", Format = "n02", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/time-in-gc", LongDescription = "% time in GC since the last GC", ShortDescription = "Time in GC (%)", Format = "n02", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-0-size", LongDescription = "Gen 0 Heap Size", ShortDescription = "Gen 0 Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-1-size", LongDescription = "Gen 1 Heap Size", ShortDescription = "Gen 1 Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gen-2-size", LongDescription = "Gen 2 Heap Size", ShortDescription = "Gen 2 Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/loh-size", LongDescription = "LOH (Large Object Heap) Size", ShortDescription = "LOH Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/poh-size", LongDescription = "POH (Pinned Object Heap) Size", ShortDescription = "POH Size (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/alloc-rate", LongDescription = "Allocation Rate", ShortDescription = "Allocation Rate (B/sec)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/gc-fragmentation", LongDescription = "GC Heap Fragmentation", ShortDescription = "GC Fragmentation", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/assembly-count", LongDescription = "Number of Assemblies Loaded", ShortDescription = "# of Assemblies Loaded", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/exception-count", LongDescription = "Number of Exceptions / sec", ShortDescription = "Exceptions (#/s)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/threadpool-thread-count", LongDescription = "Number of ThreadPool Threads", ShortDescription = "ThreadPool Threads Count", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/monitor-lock-contention-count", LongDescription = "Monitor Lock Contention Count", ShortDescription = "Lock Contention (#/s)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/threadpool-queue-length", LongDescription = "ThreadPool Work Items Queue Length", ShortDescription = "ThreadPool Queue Length", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/threadpool-completed-items-count", LongDescription = "ThreadPool Completed Work Items Count", ShortDescription = "ThreadPool Items (#/s)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/active-timer-count", LongDescription = "Active Timers Count", ShortDescription = "Active Timers", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/il-bytes-jitted", LongDescription = "Total IL bytes jitted", ShortDescription = "IL Jitted (B)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "System.Runtime", Name = "runtime-counter/methods-jitted-count", LongDescription = "Number of methods jitted", ShortDescription = "Methods Jitted", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // }, - // ["Microsoft-AspNetCore-Server-Kestrel"] = new MeasurementMetadata[] - // { - // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/connections-per-second", LongDescription = "Connection Rate", ShortDescription = "Connections/s (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/total-connections", LongDescription = "Total Connections", ShortDescription = "Connections", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/tls-handshakes-per-second", LongDescription = "TLS Handshake Rate", ShortDescription = "TLS Handshakes/sec (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/total-tls-handshakes", LongDescription = "Total TLS Handshakes", ShortDescription = "TLS Handshakes", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/current-tls-handshakes", LongDescription = "Current TLS Handshakes", ShortDescription = "TLS Handshakes (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/failed-tls-handshakes", LongDescription = "Failed TLS Handshakes", ShortDescription = "Failed TLS Handshakes (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/current-connections", LongDescription = "Current Connections", ShortDescription = "Concurrent Connections (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/connection-queue-length", LongDescription = "Connection Queue Length", ShortDescription = "Connection Queue Length (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/request-queue-length", LongDescription = "Request Queue Length", ShortDescription = "Request Queue Length (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Kestrel", Name = "kestrel-counter/current-upgraded-requests", LongDescription = "Current Upgraded Requests (WebSockets)", ShortDescription = "Upgraded Requests (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // }, - // ["Microsoft.AspNetCore.Hosting"] = new MeasurementMetadata[] - // { - // new MeasurementMetadata { Source = "ASP.NET Core", Name = "aspnet-counter/requests-per-second", LongDescription = "Maximum Requests Per Second", ShortDescription = "Requests/sec (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "ASP.NET Core", Name = "aspnet-counter/total-requests", LongDescription = "Total Requests", ShortDescription = "Requests", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "ASP.NET Core", Name = "aspnet-counter/current-requests", LongDescription = "Maximum Current Requests", ShortDescription = "Concurrent Requests (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "ASP.NET Core", Name = "aspnet-counter/failed-requests", LongDescription = "Failed Requests", ShortDescription = "Failed Requests", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // }, - // ["Microsoft.AspNetCore.Http.Connections"] = new MeasurementMetadata[] - // { - // new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/connections-started", LongDescription = "Total Connections Started", ShortDescription = "Connections Started", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/connections-stopped", LongDescription = "Total Connections Stopped", ShortDescription = "Connections Stopped", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/connections-timed-out", LongDescription = "Total Connections Timed Out", ShortDescription = "Timed Out Connections", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/current-connections", LongDescription = "Maximum of Current Connections", ShortDescription = "Concurrent Connections (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "SignalR", Name = "signalr-counter/connections-duration", LongDescription = "Average Connection Duration (ms)", ShortDescription = "Connection Duration (avg, ms)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // }, - // ["Grpc.AspNetCore.Server"] = new MeasurementMetadata[] - // { - // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/total-calls", LongDescription = "Total Calls", ShortDescription = "Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/current-calls", LongDescription = "Current Calls", ShortDescription = "Concurrent Calls (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/calls-failed", LongDescription = "Total Calls Failed", ShortDescription = "Failed Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/calls-deadline-exceeded", LongDescription = "Total Calls Deadline Exceeded", ShortDescription = "Deadline Exceeded Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/messages-sent", LongDescription = "Total Messages Sent", ShortDescription = "Messages Sent", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/messages-received", LongDescription = "Total Messages Received", ShortDescription = "Messages Received", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "gRPC Server", Name = "grpc-server-counter/calls-unimplemented", LongDescription = "Total Calls Unimplemented", ShortDescription = "Unimplemented Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // }, - // ["Grpc.Net.Client"] = new MeasurementMetadata[] - // { - // new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/total-calls", LongDescription = "Total Calls", ShortDescription = "Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/current-calls", LongDescription = "Current Calls", ShortDescription = "Concurrent Calls (max)", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/calls-failed", LongDescription = "Total Calls Failed", ShortDescription = "Failed Calls", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/calls-deadline-exceeded", LongDescription = "Total Calls Deadline Exceeded", ShortDescription = "Total Calls Deadline Exceeded", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/messages-sent", LongDescription = "Total Messages Sent", ShortDescription = "Messages Sent", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "gRPC Client", Name = "grpc-client-counter/messages-received", LongDescription = "Total Messages Received", ShortDescription = "Messages Received", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // }, - // ["Npgsql"] = new MeasurementMetadata[] - // { - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/bytes-written-per-second", LongDescription = "Bytes Written", ShortDescription = "Bytes Written", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/bytes-read-per-second", LongDescription = "Bytes Read", ShortDescription = "Bytes Read", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/commands-per-second", LongDescription = "Command Rate", ShortDescription = "Command Rate", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/total-commands", LongDescription = "Total Commands", ShortDescription = "Total Commands", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/current-commands", LongDescription = "Current Commands", ShortDescription = "Current Commands", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/failed-commands", LongDescription = "Failed Commands", ShortDescription = "Failed Commands", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/prepared-commands-ratio", LongDescription = "Prepared Commands Ratio", ShortDescription = "Prepared Commands Ratio", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/connection-pools", LongDescription = "Connection Pools", ShortDescription = "Connection Pools", Format = "n0", Aggregate = Operation.Max, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/idle-connections", LongDescription = "Idle Connections", ShortDescription = "Idle Connections", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/busy-connections", LongDescription = "Busy Connections", ShortDescription = "Busy Connections", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/multiplexing-average-commands-per-batch", LongDescription = "Average commands per multiplexing batch", ShortDescription = "Commands per multiplexing batch", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/multiplexing-average-waits-per-batch", LongDescription = "Average waits per multiplexing batch", ShortDescription = "Waits per multiplexing batch", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - // new MeasurementMetadata { Source = "Npgsql", Name = "npgsql-counter/multiplexing-average-write-time-per-batch", LongDescription = "Average write time per multiplexing batch (us)", ShortDescription = "Time per multiplexing batch (us)", Format = "n0", Aggregate = Operation.Avg, Reduce = Operation.Max }, - // } - // }; - private static void StartCounters(Job job) { eventPipeTerminated = false; From 7f7af0f484ae7a0ab56227f2b33b59e99ae0cb2c Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Mon, 23 Nov 2020 14:49:54 -0800 Subject: [PATCH 10/13] Update readme --- src/Microsoft.Crank.Controller/Program.cs | 2 +- src/Microsoft.Crank.Controller/README.md | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.Crank.Controller/Program.cs b/src/Microsoft.Crank.Controller/Program.cs index dc6258a64..4bff3061e 100644 --- a/src/Microsoft.Crank.Controller/Program.cs +++ b/src/Microsoft.Crank.Controller/Program.cs @@ -141,7 +141,7 @@ public static int Main(string[] args) _scenarioOption = app.Option("-s|--scenario", "Scenario to execute", CommandOptionType.SingleValue); _jobOption = app.Option("-j|--job", "Name of job to define", CommandOptionType.MultipleValue); _profileOption = app.Option("--profile", "Profile name", CommandOptionType.MultipleValue); - _scriptOption = app.Option("--script", "Script name", CommandOptionType.MultipleValue); + _scriptOption = app.Option("--script", "Execute a named script available in the configuration files. Can be used multiple times.", CommandOptionType.MultipleValue); _outputOption = app.Option("-o|--output", "Output filename", CommandOptionType.SingleValue); _compareOption = app.Option("--compare", "An optional filename to compare the results to. Can be used multiple times.", CommandOptionType.MultipleValue); _variableOption = app.Option("--variable", "Variable", CommandOptionType.MultipleValue); diff --git a/src/Microsoft.Crank.Controller/README.md b/src/Microsoft.Crank.Controller/README.md index 197ddcb35..10fcaa06a 100644 --- a/src/Microsoft.Crank.Controller/README.md +++ b/src/Microsoft.Crank.Controller/README.md @@ -35,6 +35,7 @@ Options: --chart Renders a chart for multi-value results. --chart-type [bar (default) | hex] Type of chart to render. Values are 'bar' (default) or 'hex' --chart-scale [off (default)| auto] Scale for chart. Values are 'off' (default) or 'auto'. When scale is off, the min value starts at 0. + --script [name] Execute a named script available in the configuration files. Can be used multiple times. These options are specific to a Job service named [JOB] @@ -113,7 +114,7 @@ Options: --application.endpoints http://asp-perf-lin:5001 --application.sdkversion 5.0.100-alpha1-015721 --application.dotnetTrace true - --application.collectCounters true + --application.options.counterProviders System.Runtime --load.endpoints http://asp-perf-win:5001 --load.source.localFolder ..\..\..\..\PipeliningClient\ From bcbd1a19ab9b77e11e0ed5b3f0e351ef8c1edb53 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Mon, 23 Nov 2020 14:56:21 -0800 Subject: [PATCH 11/13] Fixing test --- test/Microsoft.Crank.IntegrationTests/HelloTests.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/test/Microsoft.Crank.IntegrationTests/HelloTests.cs b/test/Microsoft.Crank.IntegrationTests/HelloTests.cs index 94c5f0e09..25d969643 100644 --- a/test/Microsoft.Crank.IntegrationTests/HelloTests.cs +++ b/test/Microsoft.Crank.IntegrationTests/HelloTests.cs @@ -248,8 +248,6 @@ public async Task DotnetCounters() cancel.Cancel(); - var results = System.Text.Json.JsonDocument.Parse(File.ReadAllText(Path.Combine(_crankTestsDirectory, "results.json"))); - Assert.Contains("Lock Contention", result.StandardOutput); } } From 33f49e242d4d0fa04d47c688cdac6ebee76b340c Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Mon, 23 Nov 2020 15:53:43 -0800 Subject: [PATCH 12/13] Restoring previous option --- src/Microsoft.Crank.Controller/Program.cs | 14 +++++++++++++- src/Microsoft.Crank.Controller/README.md | 3 ++- src/Microsoft.Crank.Models/Job.cs | 6 +++++- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/src/Microsoft.Crank.Controller/Program.cs b/src/Microsoft.Crank.Controller/Program.cs index 4bff3061e..a8bf0bd2d 100644 --- a/src/Microsoft.Crank.Controller/Program.cs +++ b/src/Microsoft.Crank.Controller/Program.cs @@ -1400,8 +1400,20 @@ IEnumerable scripts job.Value.Arguments = DefaultBenchmarkDotNetArguments + " " + job.Value.Arguments; } + if (job.Value.CollectCounters) + { + Log.Write($"WARNING: '{job.Key}.collectCounters' has been deprecated, in the future please use '{job.Key}.options.collectCounters'."); + job.Value.Options.CollectCounters = true; + } + + // if CollectCounters is set and no provider are defined, use System.Runtime as the default provider + if (job.Value.Options.CollectCounters == true && !job.Value.Options.CounterProviders.Any()) + { + job.Value.Options.CounterProviders.Add("System.Runtime"); + } + // Copy the dotnet counters from the list of providers - if (job.Value.Options.CounterProviders.Any()) + if (job.Value.Options.CollectCounters != false && job.Value.Options.CounterProviders.Any()) { foreach (var provider in job.Value.Options.CounterProviders) { diff --git a/src/Microsoft.Crank.Controller/README.md b/src/Microsoft.Crank.Controller/README.md index 10fcaa06a..88dc260e3 100644 --- a/src/Microsoft.Crank.Controller/README.md +++ b/src/Microsoft.Crank.Controller/README.md @@ -75,7 +75,8 @@ Options: --[JOB].dotnetTrace Whether to collect a diagnostics trace using dotnet-trace. An optional profile name or list of dotnet-trace providers can be passed. e.g., true --[JOB].dotnetTraceProviders A comma-separated list of trace providers. By default the profile 'cpu-sampling' is used. See https://github.com/dotnet/diagnostics/blob/master/documentation/dotnet-trace-instructions.md for details. e.g., "Microsoft-DotNETCore-SampleProfiler, gc-verbose, JIT+Contention". --[JOB].options.traceOutput The name of the trace file. Can be a file prefix (app will add *.DATE*.zip) , or a specific name and no DATE* will be added e.g., c:\traces\mytrace ---[JOB].options.counterProviders The name of a performance counter provider from which to collect. e.g., System.Runtime, Microsoft-AspNetCore-Server-Kestrel, Microsoft.AspNetCore.Hosting, Microsoft.AspNetCore.Http.Connections, Grpc.AspNetCore.Server, Grpc.Net.client, Npgsql + --[JOB].options.collectCounters Whether to collect dotnet counters. If set and 'counterProviders' is not, System.Runtime will be used by default. + --[JOB].options.counterProviders The name of a performance counter provider from which to collect. e.g., System.Runtime, Microsoft-AspNetCore-Server-Kestrel, Microsoft.AspNetCore.Hosting, Microsoft.AspNetCore.Http.Connections, Grpc.AspNetCore.Server, Grpc.Net.client, Npgsql --[JOB].collectStartup Whether to include the startup phase in the traces, i.e after the application is launched and before it is marked as ready. For a web application it means before it is ready to accept requests. --[JOB].collect Whether to collect native traces. Uses PerfView on Windows and Perf/PerfCollect on Linux. --[JOB].collectArguments Native traces arguments, e.g., "BufferSizeMB=1024;CircularMB=1024;clrEvents=JITSymbols;kernelEvents=process+thread+ImageLoad+Profile" diff --git a/src/Microsoft.Crank.Models/Job.cs b/src/Microsoft.Crank.Models/Job.cs index f219fae65..b7d40aaf4 100644 --- a/src/Microsoft.Crank.Models/Job.cs +++ b/src/Microsoft.Crank.Models/Job.cs @@ -103,7 +103,10 @@ public class Job // Other collection options public bool CollectStartup { get; set; } - + + // For backward compatibility. Use Options.CollectCounters instead + public bool CollectCounters { get; set; } + /// /// The list of performance counter providers to be collected. Defaults to System.Runtime. /// @@ -206,6 +209,7 @@ public class Options public List BuildArchives { get; set; } = new List(); public List OutputArchives { get; set; } = new List(); public bool BenchmarkDotNet { get; set; } + public bool? CollectCounters { get; set; } public List CounterProviders { get; set; } = new List(); } } From fc893edbe7466a951ddff5ede982a1c9863b9d57 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Mon, 23 Nov 2020 15:55:18 -0800 Subject: [PATCH 13/13] Simplifying example --- src/Microsoft.Crank.Controller/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Microsoft.Crank.Controller/README.md b/src/Microsoft.Crank.Controller/README.md index 88dc260e3..1fd2e84af 100644 --- a/src/Microsoft.Crank.Controller/README.md +++ b/src/Microsoft.Crank.Controller/README.md @@ -115,7 +115,7 @@ Options: --application.endpoints http://asp-perf-lin:5001 --application.sdkversion 5.0.100-alpha1-015721 --application.dotnetTrace true - --application.options.counterProviders System.Runtime + --application.options.collectCounters true --load.endpoints http://asp-perf-win:5001 --load.source.localFolder ..\..\..\..\PipeliningClient\