Ejemplo n.º 1
0
            public MonitoringUpdateResults Update()
            {
                MonitoringUpdateResults results = new MonitoringUpdateResults();

                results.unitMetrics = new string[3][];
                PcuCounterData counterData = cpu.ReadPcuCounterData();

                // abuse the form code because there's only one unit and uh, there's vertical space
                results.overallMetrics = new string[] { "Thermal", string.Format("{0:F2}%", counterData.ctr0 / PcuFrequency) };
                results.unitMetrics[0] = new string[] { "Current", string.Format("{0:F2}%", counterData.ctr1 / PcuFrequency) };
                results.unitMetrics[1] = new string[] { "OS", string.Format("{0:F2}%", counterData.ctr2 / PcuFrequency) };
                results.unitMetrics[2] = new string[] { "Power", string.Format("{0:F2}%", counterData.ctr3 / PcuFrequency) };
                return(results);
            }
Ejemplo n.º 2
0
            public MonitoringUpdateResults Update()
            {
                MonitoringUpdateResults results = new MonitoringUpdateResults();

                results.unitMetrics = new string[3][];
                PcuCounterData counterData = cpu.ReadPcuCounterData();

                // abuse the form code because there's only one unit and uh, there's vertical space
                results.overallMetrics = new string[] { "Voltage Transition", string.Format("{0:F2}%", counterData.ctr0 / PcuFrequency) };
                results.unitMetrics[0] = new string[] { "Freq Transition", string.Format("{0:F2}%", counterData.ctr1 / PcuFrequency) };
                results.unitMetrics[1] = new string[] { "C State Transition", string.Format("{0:F2}%", counterData.ctr2 / PcuFrequency) };
                results.unitMetrics[2] = new string[] { "Memory Phase Shedding", string.Format("{0:F2}%", counterData.ctr3 / PcuFrequency) };
                return(results);
            }
Ejemplo n.º 3
0
            public MonitoringUpdateResults Update()
            {
                MonitoringUpdateResults results = new MonitoringUpdateResults();

                results.unitMetrics = new string[1][];
                PcuCounterData counterData = cpu.ReadPcuCounterData();

                float increaseLatency = counterData.ctr0 / counterData.ctr1;
                float decreaseLatency = counterData.ctr2 / counterData.ctr3;

                // abuse the form code because there's only one unit and uh, there's vertical space
                results.overallMetrics = new string[] { "Voltage Increase",
                                                        FormatLargeNumber(counterData.ctr0),
                                                        FormatLargeNumber(counterData.ctr1),
                                                        string.Format("{0:F1} clk", increaseLatency),
                                                        string.Format("{0:F2} ms", increaseLatency * (1000 / (float)PcuFrequency)) };
                results.unitMetrics[0] = new string[] { "Voltage Decrease",
                                                        FormatLargeNumber(counterData.ctr2),
                                                        FormatLargeNumber(counterData.ctr3),
                                                        string.Format("{0:F1} clk", decreaseLatency),
                                                        string.Format("{0:F2} ms", increaseLatency * (1000 / (float)PcuFrequency)) };
                return(results);
            }