Beispiel #1
0
        private void WritePartitionSchedulingTimeSpan(string partitionId, SchedulingTimeSpan schedulingTimeSpan)
        {
            this.WriteBeforePartitionSchedulingTimeSpan();

            this.WritePartitionSchedulingTimeSpanId(partitionId);
            this.WriteResponseTime(schedulingTimeSpan.ResponseTime);
            this.WriteRunTime(schedulingTimeSpan.RunTime);
            this.WriteWaitTime(schedulingTimeSpan.WaitTime);
            this.WriteTurnaroundTime(schedulingTimeSpan.TurnaroundTime);
            this.WriteNumberOfPreemptions(schedulingTimeSpan.NumPreemptions);

            this.WriteAfterPartitionSchedulingTimeSpan();
        }
Beispiel #2
0
        private void WriteSchedulingMetrics(ClientSideMetrics clientSideMetrics)
        {
            this.WriteBeforeSchedulingMetrics();

            foreach (Tuple <string, SchedulingTimeSpan> partitionSchedulingTimeSpan in clientSideMetrics.PartitionSchedulingTimeSpans.OrderBy(x => x.Item2.ResponseTime))
            {
                string             partitionId        = partitionSchedulingTimeSpan.Item1;
                SchedulingTimeSpan schedulingTimeSpan = partitionSchedulingTimeSpan.Item2;

                this.WritePartitionSchedulingTimeSpan(partitionId, schedulingTimeSpan);
            }

            this.WriteAfterSchedulingMetrics();
        }
 /// <summary>
 /// Gets the average run time for a list of SchedulingMetrics.
 /// </summary>
 /// <param name="schedulingTimeSpans">Metrics to get average run times from.</param>
 /// <returns>The average run time for a list of SchedulingMetrics.</returns>
 public static TimeSpan GetAverageRunTime(IEnumerable <SchedulingTimeSpan> schedulingTimeSpans)
 {
     return(SchedulingTimeSpan.GetAverageTime(schedulingTimeSpans, schedulingMetric => schedulingMetric.RunTime.Ticks));
 }