PackageCompiler sysimage scope versus startup latency for low-traffic Julia workload
0 reputation · 04 May 2022, 22:12 UTC
PackageCompiler.create_sysimage is documented for bundling selected packages and code to reduce JIT warm-up for Julia applications. For a low-traffic workload, the goal is to assess whether a custom sysimage reduces cold-start cost versus increasing artifact size and memory footprint.
Sysimage size grows with included packages and can increase deployment artifact size and resident memory. Precompilation behavior is version-sensitive across Julia 1.x releases, affecting reproducibility of builds across environments. Sysimage build time can be substantial relative to infrequent deployments.
There is no documented automatic incremental update for sysimages when upstream packages change, leaving manual rebuild timing as an unresolved decision. The tradeoff between startup latency improvement and resource cost needs diagnosis under version assumptions.
What package inclusion scope reliably reduces time-to-first-plot without disproportionate sysimage growth for Julia 1.6+?
Which signals indicate a sysimage should be rebuilt after upstream package changes?
What documented limits exist for incremental updates of a PackageCompiler sysimage?