7 Jul 2025 |
Arian | `nix build --profile /nix/var/nix/profiles/system` is what you want | 21:15:58 |
Charles | *cough* | 21:15:59 |
emily | should at least be like --out-profile or something | 21:16:05 |
Arian | Well it makes it atomic which is nice | 21:16:08 |
| Katalin 🔪 changed their display name from Katalin ⚧︎ to Katalin 🔪. | 23:28:07 |
8 Jul 2025 |
| crqr joined the room. | 11:13:03 |
| crqr set a profile picture. | 11:13:43 |
| superuser53 joined the room. | 16:37:25 |
Grimmauld (any/all) | Uh, is it known nix-eval-jobs is WAY WAY faster on 2.91 than 2.92 ? | 21:31:24 |
Grimmauld (any/all) | like, not even close | 21:31:42 |
9 Jul 2025 |
raitobezarius | In reply to @grimmauld:grapevine.grimmauld.de Uh, is it known nix-eval-jobs is WAY WAY faster on 2.91 than 2.92 ? It is | 01:54:42 |
raitobezarius | Performance regressions are inevitable when you transform a multi threaded codebase to an async codebase while keeping certain parts synchronous | 01:55:50 |
raitobezarius | Because you have to run threads that just keeps polling or do inefficient things | 01:56:05 |
raitobezarius | We do try to keep the perf regressions acceptable so last time I checked, the eval impact between these versions across Nixpkgs releases was <5% | 01:56:37 |
raitobezarius | (but of course, certain workloads may exhibit special behaviors) | 01:56:50 |
raitobezarius | HEAD restores a bunch of performance on other things, e.g. missed NAR queries to cache for example | 01:57:14 |
Grimmauld (any/all) | the diff between 2.91 and 2.92 felt more like 5x than 5% | 08:11:45 |
Charlotte 🦝 (it/its) | also i noticed that the memory limit is not working | 08:13:22 |
Charlotte 🦝 (it/its) | in nix-eval-jobs | 08:13:28 |
Charlotte 🦝 (it/its) | my guess is that it keeps going until it can’t allocate anymore and only then it will gc? | 08:13:47 |
Charlotte 🦝 (it/its) | because runing 4 instances of it with a memory limit of 4GiB shouldn’t exhaust all my memory on a system with 64GiB of RAM | 08:14:44 |
raitobezarius | In reply to @grimmauld:grapevine.grimmauld.de the diff between 2.91 and 2.92 felt more like 5x than 5% Can you provide a reproducer? | 09:58:15 |
Grimmauld (any/all) |
- Setting this to
lix_2_91 or lix_2.92 respectively
- setting the path to nixpkgs
nix develop
cargo run --release
| 10:00:48 |
Grimmauld (any/all) | thats what i did yesterday, but its basically just some rust parsing around the json output so nix-eval-jobs --workers 6 /path/to/nixpkgs --system x86_64-linux should repro too (didn't test, but everything else would surprise me considering the rust parsing it was unchanged) | 10:02:15 |
aloisw | In reply to @lotte:chir.rs because runing 4 instances of it with a memory limit of 4GiB shouldn’t exhaust all my memory on a system with 64GiB of RAM The memory limit is only checked after each evaluation, so it can definitely happen. | 10:51:51 |
raitobezarius | In reply to @grimmauld:grapevine.grimmauld.de thats what i did yesterday, but its basically just some rust parsing around the json output so nix-eval-jobs --workers 6 /path/to/nixpkgs --system x86_64-linux should repro too (didn't test, but everything else would surprise me considering the rust parsing it was unchanged) If you are running full blown nixpkgs evaluations, it's very plausible that you perceive that things are 5x times longer, but did you compare in relative percentage? | 10:59:58 |
raitobezarius | I can do it once I have time, but I think that nixpkgs evaluations are such a macro task that it's bound to exhibit multiple seconds to minutes (depends on your system performance) difference across versions | 11:00:22 |
Grimmauld (any/all) | i cancled the run on 2.92 after ~10min when it had only 9k packages evaluated. 2.92 was finished (all 160k packages) after ~12min | 11:00:51 |
Grimmauld (any/all) | * i cancled the run on 2.92 after ~10min when it had only 9k packages evaluated. 2.91 was finished (all 160k packages) after ~12min | 11:00:56 |
raitobezarius | I see | 11:01:14 |