Skip to content
This repository was archived by the owner on Jan 23, 2023. It is now read-only.

Commit 376814d

Browse files
Merge pull request #14061 from JosephTremoulet/BenchmarkReadme
Update BenchmarksGames README.txt
2 parents 52be8c1 + 3bb67e9 commit 376814d

File tree

1 file changed

+17
-17
lines changed
  • tests/src/JIT/Performance/CodeQuality/BenchmarksGame

1 file changed

+17
-17
lines changed

tests/src/JIT/Performance/CodeQuality/BenchmarksGame/README.TXT

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,13 @@ The benchmarks in these sub-directories are based on
55

66
See the adjoining LICENSE.TXT file for license terms.
77

8-
Our intention with these tests is to provide interesting test cases
9-
for jit developers to use in daily development practice -- not to
10-
produce variants that give the maximum possible performance.
8+
Our intention with these tests is twofold:
9+
1 - To track .NET Core's performance on these benchmarks in the
10+
same benchmarking system used for other internal .NET Core
11+
performance benchmarks.
12+
2 - To make these available for daily JIT (and runtime) development,
13+
as a factor in assessing the performance impact of compiler
14+
(and runtime) changes.
1115

1216
The benchmarks have been modified to fit into the CoreCLR test and
1317
performance test framework, as follows:
@@ -19,19 +23,15 @@ performance test framework, as follows:
1923
xunit-performance iteration is approximately 1 second on modern x64
2024
hardware
2125
- reducing verbosity when run as a benchmark
22-
- reformatting (via the codeformatter tool)
26+
- calling different APIs in a few places to allow compiling against
27+
netstandard1.4
28+
- reformatting
29+
- in the case of pidigits, implementing on top of .NET's BigInteger
30+
type rather than p/invokes to the native GMP library
2331

2432
These benchmarks are just a subset of the benchmarks available in C# from
25-
the Benchmarks Game site. We've selected variants that do not rely on
26-
multiple threads to ensure relative benchmark stability across a
27-
variety of machines.
28-
29-
We've excluded two benchmarks that are inherently multitheaded:
30-
chamenosredux and threadring. We may revisit this as we improve our
31-
ability to harness threading tests in a stable way.
32-
33-
We've also excluded benchmarks that read in large input files:
34-
knucleotide, regexdna, revcomp.
35-
36-
37-
33+
the Benchmarks Game site. The highest-scoring C# .NET Core variant of each
34+
benchmark is included, and in the (common) case of benchmarks where the
35+
best-scoring variant uses multiple threads, we've also selected variants
36+
that do not rely on multiple threads, to ensure relative benchmark stability
37+
across a variety of machines.

0 commit comments

Comments
 (0)