19 Jul 2025 |
Patrick Steele | without modification to the cabal file, i.e. no -prof | 21:08:05 |
20 Jul 2025 |
Profpatsch | gonna switch to 9.14 and never update again | 13:11:26 |
maralorn | In reply to @profpatsch:augsburg.one gonna switch to 9.14 and never update again I feel like I am missing context. 🤣 | 22:09:55 |
21 Jul 2025 |
Profpatsch | LTS | 00:09:46 |
magic_rb | im benchmarking a thing i wrote and im making a nix package out of a cabal file using cabal2nix , however if i change the source cabal file and remove -fllvm , -O2 , or -fexpose-all-unfoldings the performance measurements dont seem to change even though im positive they should. Is nixpkgs overwriting my flags somehow? | 09:41:41 |
magic_rb | im now trying the same bench but build outside of nixpkgs | 09:45:07 |
maralorn | magic_rb: None of those should be overriden, I think. | 10:02:32 |
magic_rb | hm | 10:02:39 |
magic_rb | okay | 10:02:41 |
magic_rb | than my thing is weird, il running the benches on an interactively compiled version | 10:02:59 |
magic_rb | yeah same result | 10:03:15 |
maralorn | Maybe the even appear somewhere in the build log, e.g. in the configureFlags, although I am not sure about that. | 10:03:23 |
magic_rb | hm, i could swear it made a difference when i was developing this thing, idk why the performance difference vanished, now it doesnt really matter what flags i use | 10:03:47 |
magic_rb | fun, my thesis is gonna be "well, these did something when i was writing this, now they seemingly dont anymore. IDFK why, future work" | 10:05:12 |
maralorn | Did you maybe apply expose-all-unfoldings to dependencies as well? That might make a difference. | 10:07:42 |
magic_rb | not that im aware of | 10:08:10 |
magic_rb | ghc-options: -Wall -threaded -O2 -fllvm -Wno-unrecognised-pragmas -fspecialise-aggressively -fexpose-all-unfoldings
on my library and executables | 10:08:23 |
magic_rb | but not in cabal.project | 10:08:29 |
magic_rb | and when i was profiling this back then, most of the slowness was in my code because of my custom monad transformer | 10:09:04 |
magic_rb | im gonna remove the inline pragmas, those didnt seem to be enough last time i tried, which is why i enabled -fexpose-all-unfoldings | 10:10:29 |
magic_rb | but ill try to removing them again and see if some difference shows up | 10:10:42 |
magic_rb | okay, same result, im completely confused and have no clue what is going on | 10:19:40 |
maralorn | I mean, is it a different ghc version than when you added those flags? | 10:20:28 |
magic_rb | i think i found it | 10:21:36 |
magic_rb | there was a problem between the keyboard and my chair | 10:21:50 |
magic_rb | the monkey forgot to use a variable he declared | 10:21:57 |
Alex | In reply to @magic_rb:matrix.redalder.org im benchmarking a thing i wrote and im making a nix package out of a cabal file using cabal2nix , however if i change the source cabal file and remove -fllvm , -O2 , or -fexpose-all-unfoldings the performance measurements dont seem to change even though im positive they should. Is nixpkgs overwriting my flags somehow? If you're using a profiling build, beware of automatic cost centres (IIRC enabled by default in cabal). | 10:37:54 |
magic_rb | In reply to @alex:tunstall.xyz If you're using a profiling build, beware of automatic cost centres (IIRC enabled by default in cabal). Nope, i know about those | 10:49:29 |
22 Jul 2025 |
maralorn | Does anyone here grok/has used the useIntermediates stuff? I have one question: Can it reuse the intermediates of a previous build even when that build had other dependency hashes on the nix side? The argument was that cabal-install does not always have to recompile your project when you modify your nix shell. And the reusing is probably happening based on some cabal level hashing? | 15:02:25 |
sterni (he/him) | Well development shell is out anyways since that's Setup.hs which cabal-install won't be able to reuse in any shape or form I think | 18:57:16 |