private static long GetWallMicroseconds(this PerformanceDetails d, Func <string, bool> nodeFilter)
        {
            long totalMicroseconds = 0;

            foreach (var frame in d.Frames)
            {
                foreach (var node in frame.Nodes.Where(n => nodeFilter(n.Name)))
                {
                    totalMicroseconds += node.WallMicroseconds;
                }
            }

            return(totalMicroseconds);
        }
Esempio n. 2
0
        //----< get Receiver and Sender running >----------------------------

        public void displayPerformanceDetails(PerformanceDetails performanceDetails)
        {
            TextBlock item = new TextBlock();

            rcvmsgs.Items.Clear();
            StringBuilder displayMessage = new StringBuilder();

            displayMessage.AppendLine("Reader Latency = " + performanceDetails.readerLatency + " seconds");
            displayMessage.AppendLine("Writer Latency = " + performanceDetails.writerLatency + " seconds");
            displayMessage.AppendLine("Server Throughput = " + performanceDetails.serverThroughput + " requests/second");
            item.Text     = displayMessage.ToString();
            item.FontSize = 16;
            rcvmsgs.Items.Insert(0, item);
        }
 public static long GetDecodeWallTicks(this PerformanceDetails d) =>
 d.GetWallMicroseconds(n => n == "primitive_decoder") * TimeSpan.TicksPerSecond / 1000000;
 public static long GetTotalWallTicks(this PerformanceDetails d) =>
 d.GetWallMicroseconds(n => true) * TimeSpan.TicksPerSecond / 1000000;