!RbXGJhHMsnQcNIDFWN:nixos.org

Nix Haskell

611 Members
For discussions and questions about Haskell with Nix, cabal2nix and haskellPackages in nixpkgs | Current Docs: https://nixos.org/manual/nixpkgs/unstable/#haskell | Current PR: https://github.com/nixos/nixpkgs/pulls?q=is%3Apr+is%3Aopen+head%3Ahaskell-updates | Maintainer Docs: https://github.com/NixOS/nixpkgs/blob/haskell-updates/pkgs/development/haskell-modules/HACKING.md | More Nix: #community:nixos.org | More Haskell: #haskell-space:matrix.org | Merger Schedule: https://cloud.maralorn.de/apps/calendar/p/H6migHmKX7xHoTFa/dayGridMonth/now | Join #haskell.nix:libera.chat for question about the alternative haskell.nix infrastructure123 Servers

Load older messages


SenderMessageTime
8 Oct 2024
@mangoiv.:matrix.orgMangoIV
In reply to @eldritchcookie:matrix.org
what would be the benefits? i guess if performance is critical you could use SIMD via LLVM but unless you have a custom modification to GHC itself that seems like too much effort
I mean if you have a service that does a lot of arithmetic and the LLVM backend actually gives you considerable speed up then it might be very well worth a consideration.
14:45:10
@mangoiv.:matrix.orgMangoIVAlso mind that all the c libraries you’re binding are compiled without vector instructions. 14:46:08
@mangoiv.:matrix.orgMangoIVThat can sometimes give you a nx speed up 14:46:50
@mangoiv.:matrix.orgMangoIVI just realised since I’m using a dep that implements an embarassingly parallelizable algorithm and the library actually wants to compile to AVX2 instructions but of course it doesn’t 14:50:41
@alexfmpe:matrix.orgalexfmpe
In reply to @mangoiv.:matrix.org
Something that just came to mind due to other things: Does anybody who use Nixpkgs + Haskell at work do something crazy like compile the entire dependency tree with certain modifications like specific platform specific instructions or the LLVM backend?
Sort of? Using reflex-platform's package set means you get -fexpose-all-unfoldings everywhere plus a custom Text on JS plus a (not yet upstreamed) patch for GHC's garbage collection
14:54:11
@alexfmpe:matrix.orgalexfmpeI think miso also has a fancy String but not sure whether they replace Text with it14:54:35
@alexfmpe:matrix.orgalexfmpe* I think miso also has a fancy string on JS but not sure whether they replace Text with it14:54:46
@mangoiv.:matrix.orgMangoIVInteresting. Though probably not as far reaching as I’d imagine. Also instane wrt exposing all unfoldings, what kinda machine are these package sets built on?! 😂14:55:42
@mangoiv.:matrix.orgMangoIV\infty Gb of ram 14:56:02
@alexfmpe:matrix.orgalexfmpeHmm yeah you kinda want reflex-frp's binary cache to avoid recompiling the world14:56:44
@alexfmpe:matrix.orgalexfmpeAt least until more stuff gets upstreamed14:57:00
@mangoiv.:matrix.orgMangoIVI mean you probably never want to upstream the fexpose all unfoldings stuff 14:57:40
@alexfmpe:matrix.orgalexfmpeI'm not sure how much RAM requirement there is, but ghcjs linking tends to already require 16GB 14:57:55
@mangoiv.:matrix.orgMangoIVI use it myself on some deps and it really makes things go much slower. 14:58:03
@alexfmpe:matrix.orgalexfmpe
In reply to @mangoiv.:matrix.org
I mean you probably never want to upstream the fexpose all unfoldings stuff
Correct, but shouldn't need to recompile ghc for that
14:58:22
@mangoiv.:matrix.orgMangoIVI mean recompiling GHC once or twice, who cares 🙃😅14:58:53
@mangoiv.:matrix.orgMangoIVAlthough 16 GB of ram for linking GHCJS is absolutely nutz14:59:10
@alexfmpe:matrix.orgalexfmpeRecompiling per bump of nixpkgs-obtained-ghc14:59:36
@alexfmpe:matrix.orgalexfmpeIf you bump nixpkgs and there's a minor version update or some flag changed here we go again 15:00:00
@alexfmpe:matrix.orgalexfmpeIn practice everyone just gets this stuff from reflex binary cache anyway15:00:20
@mangoiv.:matrix.orgMangoIVHave you tried if ca changes speed? 15:00:34
@alexfmpe:matrix.orgalexfmpeca?15:00:51
@mangoiv.:matrix.orgMangoIVca-derivations 15:00:58
@alexfmpe:matrix.orgalexfmpeAh CA derivs15:00:59
@alexfmpe:matrix.orgalexfmpeProbably does15:01:14
@alexfmpe:matrix.orgalexfmpeI dunno if it's been tried15:01:32
@mangoiv.:matrix.orgMangoIVInb4 it’s slower:O15:01:34
@mangoiv.:matrix.orgMangoIV * 15:01:39
@alexfmpe:matrix.orgalexfmpeCurrent priority is getting on new js backend15:01:44
@mangoiv.:matrix.orgMangoIV
In reply to @alexfmpe:matrix.org
I dunno if it's been tried
Would be interested
15:01:48

Show newer messages


Back to Room ListRoom Version: 6