Example #1
0
 private static void Relaxation(PrepInfo info)
 {
     Process.GetCurrentProcess().ProcessorAffinity = info.affinity;
     Process.GetCurrentProcess().PriorityClass     = info.processPriority;
     Thread.CurrentThread.Priority = info.threadPriority;
     prepared = false;
 }
Example #2
0
        /// <summary>Create stable environment to achieve consistent results</summary>
        private static PrepInfo Preparation()
        {
            if (prepared)
            {
                throw new Exception("Cannot run two performance testers at once");
            }
            prepared = true;

            var info = new PrepInfo {
                affinity        = Process.GetCurrentProcess().ProcessorAffinity,
                processPriority = Process.GetCurrentProcess().PriorityClass,
                threadPriority  = Thread.CurrentThread.Priority
            };

            Process.GetCurrentProcess().ProcessorAffinity = new IntPtr(2);
            Process.GetCurrentProcess().PriorityClass     = ProcessPriorityClass.High;
            Thread.CurrentThread.Priority = ThreadPriority.Highest;

            return(info);
        }