Exemplo n.º 1
0
        private void UpdateSpread(GpuLogger.Benchmark benchmark)
        {
            if (benchmark.CurrentStatistic == null)
            {
                return;
            }
            GpuLogger.Benchmark.GpuStat        statistic      = benchmark.CurrentStatistic;
            GpuLogger.Benchmark.OrderedHashLog orderedHashLog = benchmark.OrderedHashLogs ?? new GpuLogger.Benchmark.OrderedHashLog();

            dgvSpread.Rows.Clear();
            dgvSpread.Rows.Add("Average hashrate", GuiHelper.GetRightMagnitude(statistic.HarmonicAverageHashRate, "H"));
            dgvSpread.Rows.Add("Standard deviation", GuiHelper.GetRightMagnitude(statistic.StandardDeviation, "H"));
            if (statistic.AbsoluteDeviations != null)
            {
                dgvSpread.Rows.Add("MAD", GuiHelper.GetRightMagnitude(statistic.AbsoluteDeviations[0][0], "H"));
            }
            dgvSpread.Rows.Add("Interquartile range", GuiHelper.GetRightMagnitude(statistic.InterquartileRange, "H"));
            dgvSpread.Rows.Add("Highest hashrate", GuiHelper.GetRightMagnitude(statistic.HighestHashRate, "H"));
            if (statistic.Percentiles != null)
            {
                dgvSpread.Rows.Add("Real +2σ", GuiHelper.GetRightMagnitude(statistic.Percentiles["+2σ"], "H"));
                dgvSpread.Rows.Add("Real +1σ", GuiHelper.GetRightMagnitude(statistic.Percentiles["+1σ"], "H"));
                dgvSpread.Rows.Add("Real 0σ (median)", GuiHelper.GetRightMagnitude(statistic.Percentiles["0σ"], "H"));
                dgvSpread.Rows.Add("Real -1σ", GuiHelper.GetRightMagnitude(statistic.Percentiles["-1σ"], "H"));
                dgvSpread.Rows.Add("Real -2σ", GuiHelper.GetRightMagnitude(statistic.Percentiles["-2σ"], "H"));

                chartSpread.Series["BoxPlotSeries"].Points.Clear();
                chartSpread.Series["BoxPlotSeries"].Points.Add(GetBoxPlotValues(statistic, orderedHashLog));
            }
            dgvSpread.Rows.Add("Lowest hashrate", GuiHelper.GetRightMagnitude(statistic.LowestHashRate, "H"));
        }
Exemplo n.º 2
0
        public BenchmarkOverview(GpuLogger.Benchmark benchmark, GpuLogger.GpuInfo gpuInfo)
        {
            InitializeComponent();

            // Over 9000 means max value
            BenchmarkDetails benchmarkDetails = new BenchmarkDetails(gpuInfo, 9001)
            {
                Dock = DockStyle.Fill
            };

            benchmarkDetails.UpdateStats(benchmark);
            tabDetails.Controls.Add(benchmarkDetails);

            HashChart hashChart = new HashChart(9001)
            {
                Dock = DockStyle.Fill
            };

            hashChart.UpdateCharts(benchmark.HashLogs, benchmark.AvailableTimeStamps);
            tabHashCharts.Controls.Add(hashChart);

            SensorChart sensorChart = new SensorChart(9001)
            {
                Dock = DockStyle.Fill
            };

            sensorChart.UpdateCharts(benchmark.SensorLog, benchmark.AvailableTimeStamps, benchmark.MinerSetup.OperatingSystem);
            tabSensorCharts.Controls.Add(sensorChart);
        }
Exemplo n.º 3
0
 public void UpdateStats(GpuLogger.Benchmark benchmark)
 {
     if (benchmark == null)
     {
         return;
     }
     UpdateSpread(benchmark);
     UpdateLogs(benchmark);
     UpdateTextBoxes(benchmark);
 }
Exemplo n.º 4
0
        private void UpdateLogs(GpuLogger.Benchmark benchmark)
        {
            foreach (object control in splitHashesAndSensors.Panel1.Controls)
            {
                HashLogView hashLogView = control as HashLogView;
                if (hashLogView != null)
                {
                    hashLogView.UpdateLogs(benchmark.HashLogs);
                }
            }

            foreach (object control in splitHashesAndSensors.Panel2.Controls)
            {
                SensorLogView sensorLogView = control as SensorLogView;
                if (sensorLogView != null)
                {
                    sensorLogView.UpdateLogs(benchmark.SensorLog);
                }
            }
        }
Exemplo n.º 5
0
        private void UpdateTextBoxes(GpuLogger.Benchmark benchmark)
        {
            if (!txtGpuName.Focused)
            {
                txtGpuName.Text = GpuInfo.Name;
            }
            if (!txtMinerId.Focused)
            {
                txtMinerId.Text = GpuInfo.MinerMap.ToString(CultureInfo.InvariantCulture);
            }
            if (!txtBusId.Focused)
            {
                txtBusId.Text = GpuInfo.Bus.ToString(CultureInfo.InvariantCulture);
            }
            if (!txtNvapiId.Focused)
            {
                txtNvapiId.Text = GpuInfo.NvapiId.ToString(CultureInfo.InvariantCulture);
            }
            if (!txtNvmlId.Focused)
            {
                txtNvmlId.Text = GpuInfo.NvmlId.ToString(CultureInfo.InvariantCulture);
            }
            if (!txtComputeCapability.Focused)
            {
                txtComputeCapability.Text =
                    GpuInfo.ComputeCapability.ToString(CultureInfo.InvariantCulture);
            }

            if (benchmark.CurrentStatistic != null)
            {
                if (!txtFounds.Focused)
                {
                    txtFounds.Text = benchmark.CurrentStatistic.Founds.ToString(CultureInfo.InvariantCulture);
                }
                if (!txtHashCount.Focused)
                {
                    txtHashCount.Text = GuiHelper.GetRightMagnitude(benchmark.CurrentStatistic.TotalHashCount);
                }
                if (!txtAverageTemperature.Focused)
                {
                    txtAverageTemperature.Text = String.Format("{0:0.##}{1}", benchmark.CurrentStatistic.AverageTemperature, "°C");
                }
                if (!txtAveragePing.Focused)
                {
                    txtAveragePing.Text = String.Format("{0:0.##} {1}", benchmark.CurrentStatistic.AverageShareAnswerPing, "ms");
                }
            }

            if (!txtAlgorithm.Focused)
            {
                txtAlgorithm.Text = benchmark.Algorithm;
            }
            if (!txtMinerName.Focused)
            {
                txtMinerName.Text = benchmark.MinerSetup.ToString();
            }
            if (!txtUrl.Focused)
            {
                txtUrl.Text = benchmark.MinerSetup.MiningUrl;
            }
            if (!txtIntensity.Focused)
            {
                txtIntensity.Text = String.Format("{0:0.####}", benchmark.MinerSetup.Intensity);
            }
            if (!txtPerformanceState.Focused)
            {
                txtPerformanceState.Text = benchmark.MinerSetup.PerformanceState;
            }
            if (!txtBiosVersion.Focused)
            {
                txtBiosVersion.Text = benchmark.MinerSetup.BiosVersion;
            }
            if (!txtDriverVersion.Focused)
            {
                txtDriverVersion.Text = benchmark.MinerSetup.DriverVersion;
            }
            if (!txtOperatingSystem.Focused)
            {
                txtOperatingSystem.Text = benchmark.MinerSetup.OperatingSystem;
            }
        }