Various performance baselines for typescript-eslint.
You'll need hyperfine installed locally, such as with brew install hyperfine or winget install hyperfine.
See sharkdp/hyperfine#installation.
npm install
npm generate
npm measureThe caseEntries values in src/data.ts can be modified to test:
files: roughly how many generated files should be lintedlayout: what rough shape of imports those files exhibit:"even": a single root-levelindex.tsimporting from roughly an even triangle shape of files"references": a single root-leveltsconfig.jsonwith project references to a few projects"wide": one root-levelindex.tsimporting from all files in the project
singleRun: whether to enable single-run inference as a performance boosttypes: whether to useparserOptions.projectorparserOptions.projectServicefor typed linting
Right now, parserOptions.project outperforms parserOptions.projectService.
This is a performance issue and we are investigating it as a critical bug for v8.
โโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโ
โ files โ project (even) โ project (references) โ service (even) โ service (references) โ
โผโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโค
โ 128 โ '1.149 s ยฑ 0.030 s' โ '1.135 s ยฑ 0.008 s' โ '1.178 s ยฑ 0.010 s' โ '1.736 s ยฑ 0.012 s' โ
โ 512 โ '1.636 s ยฑ 0.009 s' โ '1.656 s ยฑ 0.004 s' โ '1.895 s ยฑ 0.007 s' โ '2.613 s ยฑ 0.020 s' โ
โ 1024 โ '2.353 s ยฑ 0.013 s' โ '2.399 s ยฑ 0.016 s' โ '3.130 s ยฑ 0.017 s' โ '4.034 s ยฑ 0.061 s' โ
โดโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโ
Josh Goldberg โจ ๐ป ๐ ๐ ๐ค ๐ ๐ง ๐ ๐ง |