Beispiel #1
0
        private static float ExecutePerformanceTest(PerformanceTestCallback callback)
        {
            var values       = new[] { -100300.43245325f, -1, -float.Epsilon, 0, float.Epsilon, 1, 90952.343542f };
            var mod          = values.Length;
            var permutations = (int)Math.Pow(mod, 8);

            var cc = new CodeClock();

            cc.Start();
            for (int n = 0; n < permutations; n++)
            {
                callback.Invoke(
                    new PointF(values[(n) % mod], values[(n / mod / mod / mod / mod / mod / mod / mod) % mod]),
                    new PointF(values[(n / mod / mod) % mod], values[(n / mod / mod / mod / mod / mod) % mod]),
                    new PointF(values[(n / mod / mod / mod / mod) % mod], values[(n / mod / mod / mod) % mod]),
                    new PointF(values[(n / mod / mod / mod / mod / mod / mod) % mod], values[(n / mod) % mod])
                    );
            }
            cc.Stop();
            return(cc.Seconds * 1000000 / permutations);
        }
Beispiel #2
0
		private static float ExecutePerformanceTest(PerformanceTestCallback callback)
		{
			var values = new[] {-100300.43245325f, -1, -float.Epsilon, 0, float.Epsilon, 1, 90952.343542f};
			var mod = values.Length;
			var permutations = (int) Math.Pow(mod, 8);

			var cc = new CodeClock();
			cc.Start();
			for (int n = 0; n < permutations; n++)
			{
				callback.Invoke(
					new PointF(values[(n)%mod], values[(n/mod/mod/mod/mod/mod/mod/mod)%mod]),
					new PointF(values[(n/mod/mod)%mod], values[(n/mod/mod/mod/mod/mod)%mod]),
					new PointF(values[(n/mod/mod/mod/mod)%mod], values[(n/mod/mod/mod)%mod]),
					new PointF(values[(n/mod/mod/mod/mod/mod/mod)%mod], values[(n/mod)%mod])
					);
			}
			cc.Stop();
			return cc.Seconds*1000000/permutations;
		}