nodejs / nodejs/node

Backport Windows PGO + ThinLTO from main to v24 LTO builds for builds (x64 and Arm64)

Offen
#65,452 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

feature request
Vorherrschende Sprache
JavaScript
Sterne
122k
Forks
37.3k
Ø Merge
4 T. 2 Std.
Gemergte PRs (30 T.)
283

Beschreibung

What is the problem this feature will solve?

Improve performance of Windows builds by 15% by backporting the perf improvements brought through PGO and ThinLTO enablement, from v26 to v24 LTS releases.

See issue #61964 for work description for the v26 changes.
Separate perf suite results are here
ThinLTO: https://github.com/JaneaSystems/node-thin-lto-perf
PGO: https://github.com/JaneaSystems/node-pgo-perf

What is the feature you are proposing to solve the problem?

Backport the relevant PRs (and related config changes the the build):

  • [nodejs/node] Enable PGO for Windows builds (x64 and Arm64) (I #61964)
  • [nodejs/node] build,win: enable PGO and LTO for Windows builds (PR #62761)
  • [nodejs/node] build,win: build,win: replace LTCG with Thin LTO for releases (PR #63114)
  • [nodejs/node] build,win: fix VS2022 arm64 PGO build (PR #63413)
  • [nodejs/node] build,win: add PGO workload scripts (PR #63696)
What alternatives have you considered?

none

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit Issue #61964 und den aufgeführten PRs #62761, #63114, #63413 und #63696, um die Änderungen an Windows PGO und ThinLTO zu verstehen. Die Arbeit ist abgeschlossen, wenn die relevante Konfiguration auf v24 zurückportiert wurde und Windows-LTO-Builds sowohl für x64 als auch für Arm64 erfolgreich sind.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Bereich
build-system, performance
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Aktiv
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.