public static ChartData BuildChartDataForArrayCreation( IBenchmark benchmark, int repetitionsCount) { var classesTimes = new List <ExperimentResult>(); var structuresTimes = new List <ExperimentResult>(); foreach (var size in Constants.FieldCounts) { var classArray = new ClassArrayCreationTask(size); var structArray = new StructArrayCreationTask(size); var classTime = benchmark.MeasureDurationInMs(classArray, repetitionsCount); var structTime = benchmark.MeasureDurationInMs(structArray, repetitionsCount); classesTimes.Add(new ExperimentResult(size, classTime)); structuresTimes.Add(new ExperimentResult(size, structTime)); } return(new ChartData { Title = "Create array", ClassPoints = classesTimes, StructPoints = structuresTimes, }); }
public CompariableMethods(int size, bool isMethodCaller) { if (isMethodCaller) { Classes = new MethodCallWithClassArgumentTask(size); Structures = new MethodCallWithStructArgumentTask(size); } else { Classes = new ClassArrayCreationTask(size); Structures = new StructArrayCreationTask(size); } }