| 12 Nov 2025 |
Winter | @ma27 am i blind, or does both n-e-j and l-e-j default workers to 1, despite otherwise being said in the readme? https://git.lix.systems/lix-project/lix/src/commit/3ad1af8a9883986eb95744e088eab15c752c339c/subprojects/nix-eval-jobs/src/eval-args.hh#L33 | 19:59:16 |
Winter | i cannot find a singular place that nrWorkers is set | 19:59:26 |
ma27 | looking at the code, I'm pretty sure that subprojects/nix-eval-jobs/src/eval-args.cc on main does | 20:00:31 |
ma27 | (only speaking for lix here, but n-e-j does probably the same, that's no change from us iirc) | 20:00:45 |
Winter | i don't see this at all? | 20:01:33 |
Winter | i only see a handler for going from passed arg -> int | 20:01:40 |
ma27 | blargh good evening I misread the question | 20:02:20 |
ma27 | apologies | 20:02:26 |
ma27 | one sec | 20:02:27 |
Winter | :-) | 20:02:36 |
Winter | yeah setting --workers [n>1] makes this speed along | 20:03:09 |
Winter | and i actually see 4 workers being spawned | 20:03:19 |
Winter | and my memory+cpu being hammered | 20:03:29 |
Winter | 😉 | 20:03:34 |
ma27 | but, what are you referring to in the readme? afaiu it doesn't say something else (or rather, nothing on the default), no? | 20:06:53 |
Winter | By default, nix-eval-jobs spawns as many worker processes as there are hardware threads in the system and limits the memory usage for each worker to 4GB.
| 20:07:22 |
Winter | By default, nix-eval-jobs spawns as many worker processes as there are hardware threads in the system and limits the memory usage for each worker to 4GB.
| 20:07:30 |
ma27 | ah right. | 20:08:51 |
ma27 | yeah no you're right. | 20:09:17 |
ma27 | feel free to file a cl :) | 20:09:21 |
Winter | do we want to simply remove that note from the readme, or change nrWorkers to actually default to nproc? | 20:12:19 |
ma27 | my personal preference would be to keep the behavior as-is and just fix the docs. | 20:15:45 |
Winter | gotcha | 20:45:11 |
Winter | learning that n-e-j doesn | 20:45:15 |
Winter | ...'t die on sigpipe and groaning | 20:45:23 |
raitobezarius (DECT: 7248) | i think there's a bunch of CL improvements from aloisw on n-e-j | 21:56:52 |
| 13 Nov 2025 |
aloisw | SIGPIPE is not in it though. Also it seems like the entirety of Lix just ignores it completely. I think the best way forward would not be to special-case it in nix-eval-jobs, but to treat as an interrupt like SIGTERM and SIGHUP. | 05:59:10 |
Winter | i believe i only looked at nix but it appears that they’re not explicitly ignoring it at least, instead just saying to use the OS’ default signal handler for it? | 06:15:06 |
Winter | and yeah, agreed | 06:15:10 |
Winter | guess i could write a patch for that pretty easily | 06:15:40 |