gorgeous-winter-99296
03/11/2025, 3:17 PMwide-midnight-78598
03/11/2025, 3:19 PMfierce-truck-19259
03/11/2025, 3:51 PMfierce-truck-19259
03/11/2025, 3:52 PMwitty-crayon-22786
03/11/2025, 4:05 PMpantsd
, b) JVM poolingwitty-crayon-22786
03/11/2025, 4:06 PMwitty-crayon-22786
03/11/2025, 4:07 PMpantsd
side, both the client and server are rust. On the JVM pooling side, the client is rust and the server is the JVMwitty-crayon-22786
03/11/2025, 4:12 PMfierce-truck-19259
03/11/2025, 4:18 PMI would be very surprised if buck or bazel had stopped pooling JVMs, since JIT warmup time is still critical. Would be interested to see what they are doing instead.In practice they have JVM-warm machines doing JVM-work. But I'm fairly sure the build system does not pool that work itself
expect that if you disable nailgun for the JVM without a replacement pooling strategy, it would have very unfortunate performance impactsI'm not sure if it is actually that much of an issue in practice, we already disable it in CI because it does not produce consistent output either. Locally yes there's a case for the startup time, but I don't think it's that excessive anymore and also there are few-to-no decent alternatives
fierce-truck-19259
03/11/2025, 4:20 PMwitty-crayon-22786
03/11/2025, 4:23 PMwitty-crayon-22786
03/11/2025, 4:24 PMwide-midnight-78598
03/11/2025, 4:28 PMgorgeous-winter-99296
03/11/2025, 4:29 PMwide-midnight-78598
03/11/2025, 4:29 PMwide-midnight-78598
03/11/2025, 4:29 PMwitty-crayon-22786
03/11/2025, 4:30 PMwide-midnight-78598
03/11/2025, 4:32 PMwitty-crayon-22786
03/11/2025, 4:32 PMgorgeous-winter-99296
03/11/2025, 4:33 PMfierce-truck-19259
03/11/2025, 4:33 PMfierce-truck-19259
03/11/2025, 4:33 PMwide-midnight-78598
03/11/2025, 4:33 PMThe pants repo has JVM backends enabledThis was after a diff to remove everything JVM related to cut startup from 25+ seconds to 6
witty-crayon-22786
03/11/2025, 4:35 PMwitty-crayon-22786
03/11/2025, 4:36 PMwitty-crayon-22786
03/11/2025, 4:37 PMwitty-crayon-22786
03/11/2025, 4:38 PMgorgeous-winter-99296
03/11/2025, 4:38 PMwitty-crayon-22786
03/11/2025, 4:39 PMfierce-truck-19259
03/11/2025, 4:39 PMgorgeous-winter-99296
03/11/2025, 4:40 PMDisabled what?
Nailgun
witty-crayon-22786
03/11/2025, 4:40 PMwitty-crayon-22786
03/11/2025, 4:41 PMwitty-crayon-22786
03/11/2025, 4:42 PMprocess_execution_local_enable_nailgun
?witty-crayon-22786
03/11/2025, 4:56 PMwitty-crayon-22786
03/11/2025, 4:56 PMgorgeous-winter-99296
03/11/2025, 4:57 PMwitty-crayon-22786
03/11/2025, 4:58 PMfierce-truck-19259
03/11/2025, 5:06 PMwould be very surprised if buck or bazel had stopped pooling JVMDouble checked to make sure I remembered correctly, and yes neither bazel or buck2 pool jvm processes. Bazel does now have an experimental feature of multiplex workers which can help with what I mentioned about them using warm workers https://bazel.build/remote/multiplex
witty-crayon-22786
03/11/2025, 5:07 PMwitty-crayon-22786
03/11/2025, 5:07 PMwitty-crayon-22786
03/11/2025, 5:08 PMpants --watch check
without it, right?witty-crayon-22786
03/11/2025, 5:10 PMfierce-truck-19259
03/11/2025, 5:13 PMwitty-crayon-22786
03/11/2025, 5:14 PMfierce-truck-19259
03/11/2025, 5:33 PMbuck2 doesn't have working JVM rules, afaict?Sorry missed that, yes but maybe not OSS yet
fast-nail-55400
03/11/2025, 5:45 PMwitty-crayon-22786
03/11/2025, 5:46 PMfast-nail-55400
03/11/2025, 5:49 PMfast-nail-55400
03/11/2025, 5:49 PMgorgeous-winter-99296
03/11/2025, 7:04 PM2024-11-19 10:42:13 UTC 10:42:13.71 [INFO] Initializing Nailgun pool for 24 processes...
2024-11-19 10:42:19 UTC 10:42:19.92 [INFO] Scheduler initialized.
So I set up a PR disabling it, and when compared to the previous commit multiple steps did indeed get faster, mostly in the range of 3-6 seconds. Reviewing more commits in that time range, it's just noise...witty-crayon-22786
03/11/2025, 7:05 PMgorgeous-winter-99296
03/11/2025, 7:07 PMfierce-truck-19259
03/14/2025, 6:03 PMfierce-truck-19259
03/14/2025, 6:07 PMReleasing a non-working feature but not documenting that fact ... good job Meta!Yeah buck2 is pretty much the essence of open sourcing things that are not ready to open source yet
fierce-truck-19259
03/14/2025, 6:13 PMfierce-truck-19259
03/14/2025, 6:51 PMBut pooling is critical for local latency: just try usingYeah I don't oppose that there's something needed to deal with that, just that Nailgun isn't it anymorewithout it, right?pants --watch check
fierce-truck-19259
03/14/2025, 7:05 PMThere is an annoying (and afaik unnamed?) phenomenon, where when a log message says that something is starting, but there is no corresponding message saying that it is finishing, it causes no end of confusion.I like "log fog" for that, and it's everywhere and sometimes the other way around, only logging when finishing can spur equal levels of confusion