Example #1
0
        public static void CheckMemoryUse(BenchmarkRunner <ImageJob, JobProfiler> runner, int runMultiplier)
        {
            runner.ParallelRuns     = runMultiplier;
            runner.ParallelThreads  = parallelThreads;
            runner.SequentialRuns   = runMultiplier * 8;
            runner.ThrowawayThreads = parallelThreads;
            runner.ThrowawayRuns    = runMultiplier * 2;


            Console.Write("Running {0} warmup (t={1}), {2} parallel (t={3}), {4} sequential\n", runner.ThrowawayRuns * runner.ThrowawayThreads, runner.ThrowawayThreads,
                          runner.ParallelRuns * runner.ParallelThreads, runner.ParallelThreads,
                          runner.SequentialRuns);
            var results = runner.Benchmark();

            Console.Write("Private bytes before: {0:F2}MB warm: {1:F2}MB after {2:F2}MB\n", results.PrivateBytesBefore / 1000000.0, results.PrivateBytesWarm / 1000000.0, results.PrivateBytesAfter / 1000000.0);
            Console.Write("Managed bytes before: {0:F2}MB warm: {1:F2}MB after {2:F2}MB\n", results.ManagedBytesBefore / 1000000.0, results.ManagedBytesWarm / 1000000.0, results.ManagedBytesAfter / 1000000.0);
        }