private void RunInitializationTest(List <ITestResultsProvider> resultsProviders) { foreach (ITestResultsProvider resultsProvider in resultsProviders) { TestExecutor executor = new TestExecutor(new Test(0, "Initialize", TestType.Initialization, TestKind.Initialize), resultsProvider, 1, false, false, true); PerformanceResults results = executor.Initialize(); WriteIntoLog(resultsProvider, results); } }
private string GenerateModificatorsReport(PerformanceResults results) { StringBuilder builder = new StringBuilder(); foreach (TestModificator modificator in results.Modificators.Keys) { builder.Append(modificator); builder.Append(" "); builder.Append(results.Modificators[modificator] ? "ON" : "OFF"); if (results.Modificators.Keys.Last() != modificator) { builder.Append(" , "); } } return(builder.ToString()); }
private void btnRun_Click(object sender, EventArgs e) { if (cboxTool.SelectedIndex < 0) { MessageBox.Show("Please select the item in the list of data access tools"); return; } int?executionNumber = GetExecutionNumber(); if (executionNumber == null || executionNumber < 1) { MessageBox.Show("Please input the positive integer number as the execution number"); return; } ITestResultsProvider resultsProvider = new ResultsProviderFactory().CreateProvider(cboxTool.SelectedIndex, checkTracking.Checked); if (resultsProvider == null) { MessageBox.Show("Unknown item in the data access tool list"); return; } Test selectedTest = null; switch (tabControl.SelectedIndex) { case 0: selectedTest = (Test)cboxTestSelect.SelectedItem; break; case 1: selectedTest = (Test)cboxTestModify.SelectedItem; break; } TestExecutor executor = new TestExecutor(selectedTest, resultsProvider, executionNumber.Value, checkTracking.Checked, checkContextCaching.Checked); PerformanceResults results = executor.Execute(); WriteIntoLog(resultsProvider, results); }
private void BenchmarkCompare() { System.IO.FileStream fsOriginal = System.IO.File.OpenRead(this.textOriginalFile.Text); System.IO.FileStream fsModified = System.IO.File.OpenRead(this.textModifiedFile.Text); ICompareService comparer = CreateComparer(TransportProtocolEnum.Http); comparer.SetClientCredentials("lnpair", "lnpair", "wsdev"); comparer.SetTimeouts(1, 1, 10, 10); comparer.DataSent += new EventHandler <DataSentArgs>(comparer_CompareProgress); PerformanceResults result = comparer.BenchmarkCompare(fsOriginal, fsModified); this.labelOriginalConversionTime.Text = result.OriginalConversionTime.TotalMilliseconds + " ms"; this.labelModifiedConversionTime.Text = result.ModifiedConversionTime.TotalMilliseconds + " ms"; this.labelOriginalPreTime.Text = result.OriginalPreProcessingTime.TotalMilliseconds + " ms"; this.labelModifiedPreTime.Text = result.ModifiedPreProcessingTime.TotalMilliseconds + " ms"; this.labelComparisonTime.Text = result.ComparisonTime.TotalMilliseconds + " ms"; this.labelResultsTime.Text = result.ResultsProcessingTime.TotalMilliseconds + " ms"; this.labelTotal.Text = result.TotalExecutionTime.TotalMilliseconds + " ms"; }
void Start() { menuInput = gameObject.GetComponent <MenuInput>(); performanceResults = gameObject.GetComponent <PerformanceResults>(); StartCoroutine(comeInFromSides()); }
public IEnumerable <PerformanceResults> Run(IEnumerable <SerializationConfig> configs = null) { if (configs == null) { configs = Enum.GetValues(typeof(SerializationConfig)).Cast <SerializationConfig>(); } foreach (SerializationConfig serializationConfig in configs) { for (double ratio = 0; ratio <= 1.00001; ratio += 0.02) { var performanceResult = new PerformanceResults { SerializingConfig = serializationConfig, BinaryDataRatio = ratio }; var testClass = new TestClass(performanceResult.NumberOfArrayElements, performanceResult.BinaryDataRatio); byte[] serializedBytes = null; string serializedString = null; Stopwatch stopwatch = Stopwatch.StartNew(); for (int i = 0; i < performanceResult.Iterations; i++) { switch (serializationConfig) { case SerializationConfig.Json: serializedString = JsonConvert.SerializeObject(testClass); break; case SerializationConfig.Jcob: serializedBytes = JcobConvert.SerializeObject(testClass); break; case SerializationConfig.Protobuf: serializedBytes = testClass.ProtoSerialize(); break; default: throw new ArgumentOutOfRangeException(); } } performanceResult.SerializationMs = stopwatch.ElapsedMilliseconds; if (serializedString != null) { serializedBytes = Encoding.UTF8.GetBytes(serializedString); } performanceResult.Size = serializedBytes?.Length ?? -1; if (serializedBytes == null) { throw new FormatException(); } File.WriteAllBytes("SerializedTestClass.txt", serializedBytes); stopwatch.Restart(); TestClass deserializedClass = null; for (int i = 0; i < performanceResult.Iterations; i++) { switch (serializationConfig) { case SerializationConfig.Json: deserializedClass = JsonConvert.DeserializeObject <TestClass>(serializedString); break; case SerializationConfig.Jcob: deserializedClass = JcobConvert.DeserializeObject <TestClass>(serializedBytes); break; case SerializationConfig.Protobuf: deserializedClass = serializedBytes.ProtoDeserialize <TestClass>(); break; default: throw new ArgumentOutOfRangeException(); } } performanceResult.DeserializationMs = stopwatch.ElapsedMilliseconds; if (deserializedClass == null) { throw new FormatException(); } yield return(performanceResult); if (serializationConfig != SerializationConfig.Jcob) { break; } } } }
private void WriteIntoLog(ITestResultsProvider resultsProvider, PerformanceResults results) { gridViewResults.Rows.Insert(0, gridViewResults.Rows.Count + 1, resultsProvider.GetName() + ": " + results.Test.Name, GenerateModificatorsReport(results), results.AvgTimeCost.ToString(), results.TotalTimeCost.ToString()); }