From f5f1566bffa9c9409781c16377b345a5a0b03063 Mon Sep 17 00:00:00 2001 From: Patrick Quist Date: Tue, 28 Oct 2025 09:44:51 +0100 Subject: [PATCH] Add timing for executable package storage (#8218) --- lib/base-compiler.ts | 3 +++ lib/packager.ts | 4 ++-- static/widgets/timing-info-widget.ts | 4 ++++ types/compilation/compilation.interfaces.ts | 1 + 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/base-compiler.ts b/lib/base-compiler.ts index 1195b7d65..605db4a7c 100644 --- a/lib/base-compiler.ts +++ b/lib/base-compiler.ts @@ -2030,7 +2030,10 @@ export class BaseCompiler { buildResult.preparedLdPaths = this.getSharedLibraryPathsAsLdLibraryPathsForExecution(key, dirPath); buildResult.defaultExecOptions = this.getDefaultExecOptions(); + const packageStoreStart = process.hrtime.bigint(); await this.storePackageWithExecutable(executablePackageHash, dirPath, buildResult); + const packageStoreEnd = process.hrtime.bigint(); + buildResult.packageStoreTime = utils.deltaTimeNanoToMili(packageStoreStart, packageStoreEnd); if (!buildResult.dirPath) { buildResult.dirPath = dirPath; diff --git a/lib/packager.ts b/lib/packager.ts index e5572e5b8..388a0e17e 100644 --- a/lib/packager.ts +++ b/lib/packager.ts @@ -43,8 +43,8 @@ export class Packager { await compress({ source: cwd, destination, - level: 6, - memLevel: 6, + level: 3, + memLevel: 9, options: { dereference: true, }, diff --git a/static/widgets/timing-info-widget.ts b/static/widgets/timing-info-widget.ts index 2afc9068a..3b787568b 100644 --- a/static/widgets/timing-info-widget.ts +++ b/static/widgets/timing-info-widget.ts @@ -63,6 +63,10 @@ function addBuildResultToTimings(data: Data, buildResult: any) { } else if (buildResult.execTime) { pushTimingInfo(data, 'Compilation', buildResult.execTime); } + + if (buildResult.packageStoreTime) { + pushTimingInfo(data, 'Package build for cache', buildResult.packageStoreTime); + } } } diff --git a/types/compilation/compilation.interfaces.ts b/types/compilation/compilation.interfaces.ts index c6419f4c8..e31322c7f 100644 --- a/types/compilation/compilation.interfaces.ts +++ b/types/compilation/compilation.interfaces.ts @@ -225,6 +225,7 @@ export type CompilationResult = { retreivedFromCache?: boolean; retreivedFromCacheTime?: number; packageDownloadAndUnzipTime?: number; + packageStoreTime?: number; execTime?: number; processExecutionResultTime?: number; objdumpTime?: number;