예제 #1
0
            public static void RunTest(List <int> list, int target)
            {
                var timings = new Action[]
                {
#if INCLUDE_SLOW_PERFORMANCE_TESTS && !UNITY_EDITOR
                    () => { TestUtility.Time($"DefaultReturningContains ({list.Count})", () => { Contains.DefaultReturningContains(list, target); }); },
                    () => { TestUtility.Time($"DefaultNonReturningContains ({list.Count})", () => { Contains.DefaultNonReturningContains(list, target); }); },
                    () => { TestUtility.Time($"BurstNonReturningContains ({list.Count})", () => { Contains.BurstNonReturningContains(list, target); }); },
                    () => { TestUtility.Time($"SIMDNonReturningContains ({list.Count})", () => { Contains.SIMDNonReturningContains(list, target); }); },
#endif
                    () => { TestUtility.Time($"BurstReturningContains ({list.Count})", () => { Contains.BurstReturningContains(list, target); }); },
                    () => { TestUtility.Time($"SIMDReturningContains ({list.Count})", () => { Contains.SIMDReturningContains(list, target); }); },
                    () => { TestUtility.Time($"SIMDParallelReturningContains ({list.Count})", () => { Contains.SIMDParallelReturningContains(list, target); }); },
                    () => { TestUtility.Time($"SIMDParallelUnrolledReturningContains ({list.Count})", () => { Contains.SIMDParallelUnrolledReturningContains(list, target); }); },
                };

#if RANDOM_SHUFFLE_TESTS
                TestUtility.RandomShuffle(timings);
#endif
                foreach (var timing in timings)
                {
                    timing();
                }

                Debug.Log($"{new StackFrame(1).GetMethod().Name} finished");
            }