Skip to content

Compilation time significantly slower in 3.7.1-RC vs 3.5.2, essentially the "check time" part. #34920

Closed
@Ikaer

Description

@Ikaer

TypeScript Version: 3.7.1-RC

Search Terms: Compilation time Check time 3.7.1-RC

Code

// takes 25-30 minutes
node --max-old-space-size=8092 "C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.7\tsc.js"
// takes 2-3 minutes
node --max-old-space-size=8092 "C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.5\tsc.js"

Expected behavior: Compilation should take a reasonable amount of time

Actual behavior: Compilation is 10 times slower than 3.5.2 version.

Related Issues: maybe related: #24435

Hi, we give a try at typescript 3.7.1-RC today (upgrading from 3.5.2) and we are facing a significant increase of build time.

I've launched the compilation with extendedDiagnostics flag and this is the "check time" which is a lot slower.

In 3.7.1-rc:

Files: 532
Lines: 402274
Nodes: 1927658
Identifiers: 684045
Symbols: 1844544
Types: 528324
Memory used: 1857090K
Assignability cache size: 337352
Identity cache size: 10477
Subtype cache size: 88675
I/O Read time: 0.15s
Parse time: 3.89s
Program time: 4.72s
Bind time: 2.84s
Check time: 1480.74s
transformTime time: 9.18s
commentTime time: 0.28s
I/O Write time: 0.41s
printTime time: 22.17s
Emit time: 22.25s
Total time: 1510.55s

In 3.5.2:

Files: 532
Lines: 400795
Nodes: 2122066
Identifiers: 672829
Symbols: 1707809
Types: 518149
Memory used: 1781530K
Assignability cache size: 333702
Identity cache size: 1968
Subtype cache size: 88497
I/O Read time: 0.14s
Parse time: 3.51s
Program time: 4.22s
Bind time: 2.50s
Check time: 85.37s
transformTime time: 11.09s
commentTime time: 0.13s
I/O Write time: 0.56s
printTime time: 33.09s
Emit time: 33.16s
Total time: 125.24s

Do you have any clue of what is going on ? I've saw nothing in breaking change that could cause that.

Thanks in advance.

the tsconfig.json used:

{
  "compileOnSave": true,
  "compilerOptions": {
    "incremental": false,
    "outDir": "./dist/js",
    "noImplicitAny": false,
    "allowJs": false,
    "checkJs": false,
    "noEmitOnError": true,
    "removeComments": true,
    "sourceMap": false,
    "target": "es5",
    "lib": [
      "dom",
      "es5",
      "scripthost",
      "es2015.promise",
      "es2015.collection",
      "es2015.core",
      "es2015.generator",
      "es2015.iterable",
      "es2015.proxy",
      "es2015.reflect",
      "es2015.symbol",
      "es2015.symbol.wellknown"
    ],
    "rootDir": "./src/js",
    "noResolve": true,
    "module": "amd",
    "moduleResolution": "node",
    "experimentalDecorators": false,
    "jsx": "react"
  },
  "include": [
    "./src/**/*.js",
    "./src/**/*.ts",
    "./src/**/*.tsx",
    "./Scripts/typings/**/*.ts"
  ],
  "exclude": [
    "./Scripts/excludedtypings/**/*.ts",
    "node_modules",
    "node_modules/@types",
    "wwwroot"
  ]
}

Metadata

Metadata

Assignees

Labels

Domain: PerformanceReports of unusually slow behaviorNeeds InvestigationThis issue needs a team member to investigate its status.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions