Logs: liberachat/#haskell
| 2026-04-20 11:52:41 | socksbuny5 | is now known as socksbuny |
| 2026-04-20 11:53:04 | <Freakie> | merijn more or less |
| 2026-04-20 11:53:10 | → | CiaoSen joins (~Jura@p549cbfb1.dip0.t-ipconnect.de) |
| 2026-04-20 11:53:16 | <merijn> | I'd suspect they just show as pinned memory? |
| 2026-04-20 11:53:20 | × | buhman quits (sid411355@user/buhman) (Ping timeout: 252 seconds) |
| 2026-04-20 11:53:20 | × | astra quits (sid289983@user/amish) (Ping timeout: 252 seconds) |
| 2026-04-20 11:53:30 | <Freakie> | I have some input cases where the garbage collection time wasn't lowered as much as they should when I switched to compacting them |
| 2026-04-20 11:53:39 | <Freakie> | the profiling just shows it as live NFDATA |
| 2026-04-20 11:53:45 | × | edm quits (sid147314@id-147314.hampstead.irccloud.com) (Ping timeout: 272 seconds) |
| 2026-04-20 11:53:45 | × | gaze__ quits (sid387101@id-387101.helmsley.irccloud.com) (Ping timeout: 248 seconds) |
| 2026-04-20 11:53:46 | × | edwardk quits (sid47016@haskell/developer/edwardk) (Ping timeout: 248 seconds) |
| 2026-04-20 11:53:53 | <Freakie> | which makes it hard to tell if I have avoidable overhead or no |
| 2026-04-20 11:54:06 | <merijn> | Freakie: How sure are you that your assumption that they should significantly reduce GC time? :) |
| 2026-04-20 11:54:10 | × | carter quits (sid14827@id-14827.helmsley.irccloud.com) (Ping timeout: 256 seconds) |
| 2026-04-20 11:54:21 | <Freakie> | well |
| 2026-04-20 11:54:23 | × | hiredman quits (~hiredman@frontier1.downey.family) (Ping timeout: 272 seconds) |
| 2026-04-20 11:54:26 | × | idnar quits (sid12240@debian/mithrandi) (Ping timeout: 252 seconds) |
| 2026-04-20 11:54:26 | × | lbseale quits (~quassel@user/ep1ctetus) (Ping timeout: 252 seconds) |
| 2026-04-20 11:54:30 | <gentauro> | probie: with `Data.List` you can do -> `findIndices (isPrefixOf "PATTERN_GOES_HERE") (tails "STRING_LOOKING_IN")` and you get a nice list of ints |
| 2026-04-20 11:54:44 | <Freakie> | let's say I have 4 to 8 gb gigabytes worth of accumulators in each of my algorithms |
| 2026-04-20 11:54:59 | × | haasn quits (sid579015@id-579015.hampstead.irccloud.com) (Ping timeout: 252 seconds) |
| 2026-04-20 11:55:17 | <Freakie> | without compacting on that input size my program willl terminate in 30 minutes where about 28 of that is garbage collection |
| 2026-04-20 11:55:23 | <Freakie> | with compacting the gc time is reduced by about half |
| 2026-04-20 11:55:29 | × | mud quits (~mud@user/kadoban) (Ping timeout: 268 seconds) |
| 2026-04-20 11:55:39 | × | degraafk quits (sid71464@id-71464.lymington.irccloud.com) (Ping timeout: 272 seconds) |
| 2026-04-20 11:55:41 | → | edwardk joins (sid47016@haskell/developer/edwardk) |
| 2026-04-20 11:55:47 | → | lbseale joins (~quassel@user/ep1ctetus) |
| 2026-04-20 11:55:53 | × | aristid quits (sid1599@id-1599.uxbridge.irccloud.com) (Ping timeout: 248 seconds) |
| 2026-04-20 11:55:57 | <merijn> | Freakie: Threaded runtime or non-threaded? Any GC options you're passing or just default? |
| 2026-04-20 11:55:58 | <Freakie> | but it still feels like GC is dominating more than it should when I look at the profiling since the graph is overwhelmingly just the compacted |
| 2026-04-20 11:56:06 | × | luke quits (~luke@user/luke) (Ping timeout: 268 seconds) |
| 2026-04-20 11:56:18 | <Freakie> | just -O2 I believe and non-threaded |
| 2026-04-20 11:56:23 | <Freakie> | well that's not GC |
| 2026-04-20 11:56:26 | × | taktoa[c] quits (sid282096@id-282096.tinside.irccloud.com) (Ping timeout: 256 seconds) |
| 2026-04-20 11:56:34 | <Freakie> | so I guess none on these particular runs |
| 2026-04-20 11:56:38 | × | dy quits (sid3438@user/dy) (Ping timeout: 252 seconds) |
| 2026-04-20 11:56:38 | × | caasih quits (sid13241@id-13241.ilkley.irccloud.com) (Ping timeout: 252 seconds) |
| 2026-04-20 11:56:43 | × | hook54321 quits (sid149355@user/hook54321) (Ping timeout: 268 seconds) |
| 2026-04-20 11:56:43 | × | edmundnoble_ quits (sid229620@id-229620.helmsley.irccloud.com) (Ping timeout: 268 seconds) |
| 2026-04-20 11:56:45 | → | buhman joins (sid411355@user/buhman) |
| 2026-04-20 11:56:55 | × | jakesyl_____ quits (sid56879@id-56879.hampstead.irccloud.com) (Ping timeout: 272 seconds) |
| 2026-04-20 11:56:57 | × | integral quits (sid296274@user/integral) (Ping timeout: 248 seconds) |
| 2026-04-20 11:57:01 | × | sclv quits (sid39734@haskell/developer/sclv) (Ping timeout: 256 seconds) |
| 2026-04-20 11:57:11 | × | totbwf quits (sid402332@user/totbwf) (Ping timeout: 252 seconds) |
| 2026-04-20 11:57:20 | × | T_S_____ quits (sid501726@id-501726.uxbridge.irccloud.com) (Ping timeout: 268 seconds) |
| 2026-04-20 11:57:20 | × | mustafa quits (sid502723@rockylinux/releng/mustafa) (Ping timeout: 268 seconds) |
| 2026-04-20 11:57:21 | <Freakie> | mind you I should still expect garbage collection to dominate over time because my priority queues aren't compacted (it's much easier to compact write-only data) |
| 2026-04-20 11:57:29 | × | weary-traveler quits (~user@user/user363627) (Ping timeout: 248 seconds) |
| 2026-04-20 11:57:33 | × | Adeon quits (sid418992@id-418992.lymington.irccloud.com) (Ping timeout: 272 seconds) |
| 2026-04-20 11:57:33 | × | jonrh quits (sid5185@id-5185.ilkley.irccloud.com) (Ping timeout: 272 seconds) |
| 2026-04-20 11:57:34 | <Freakie> | but the scaling seems a bit excessive to me still |
| 2026-04-20 11:57:36 | <gentauro> | @pl let idxs pat cs = findIndices (isPrefixOf pat) (tails cs) |
| 2026-04-20 11:57:36 | <lambdabot> | (line 1, column 58): |
| 2026-04-20 11:57:36 | <lambdabot> | unexpected end of input |
| 2026-04-20 11:57:36 | <lambdabot> | expecting variable, "(", operator, ";" or "in" |
| 2026-04-20 11:57:54 | → | edm joins (sid147314@id-147314.hampstead.irccloud.com) |
| 2026-04-20 11:57:55 | × | edm quits (sid147314@id-147314.hampstead.irccloud.com) (Excess Flood) |
| 2026-04-20 11:57:56 | × | emergence quits (emergence@vm0.max-p.me) (Read error: Connection reset by peer) |
| 2026-04-20 11:57:57 | × | meejah quits (~meejah@rutas.meejah.ca) (Ping timeout: 268 seconds) |
| 2026-04-20 11:58:00 | → | aristid joins (sid1599@id-1599.uxbridge.irccloud.com) |
| 2026-04-20 11:58:01 | → | emergence1 joins (~emergence@vm0.max-p.me) |
| 2026-04-20 11:58:05 | → | idnar joins (sid12240@debian/mithrandi) |
| 2026-04-20 11:58:05 | → | hiredman joins (~hiredman@frontier1.downey.family) |
| 2026-04-20 11:58:05 | → | luke joins (~luke@user/luke) |
| 2026-04-20 11:58:05 | → | taktoa[c] joins (sid282096@id-282096.tinside.irccloud.com) |
| 2026-04-20 11:58:06 | → | meejah joins (~meejah@rutas.meejah.ca) |
| 2026-04-20 11:58:06 | → | jonrh joins (sid5185@2a03:5180:f:3::1441) |
| 2026-04-20 11:58:08 | → | astra joins (sid289983@id-289983.hampstead.irccloud.com) |
| 2026-04-20 11:58:11 | → | degraafk joins (sid71464@id-71464.lymington.irccloud.com) |
| 2026-04-20 11:58:12 | → | T_S_____ joins (sid501726@id-501726.uxbridge.irccloud.com) |
| 2026-04-20 11:58:14 | → | gaze__ joins (sid387101@id-387101.helmsley.irccloud.com) |
| 2026-04-20 11:58:15 | → | jakesyl_____ joins (sid56879@id-56879.hampstead.irccloud.com) |
| 2026-04-20 11:58:21 | × | tromp quits (~textual@2001:1c00:340e:2700:c9bc:b29c:36e3:d32a) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2026-04-20 11:58:27 | <gentauro> | @pl f pat cs = findIndices (isPrefixOf pat) (tails cs) |
| 2026-04-20 11:58:28 | <lambdabot> | f = (. tails) . findIndices . isPrefixOf |
| 2026-04-20 11:58:29 | → | carter joins (sid14827@id-14827.helmsley.irccloud.com) |
| 2026-04-20 11:58:30 | → | caasih joins (sid13241@id-13241.ilkley.irccloud.com) |
| 2026-04-20 11:58:33 | → | weary-traveler joins (~user@user/user363627) |
| 2026-04-20 11:58:34 | → | haasn joins (sid579015@id-579015.hampstead.irccloud.com) |
| 2026-04-20 11:58:34 | → | edmundnoble_ joins (sid229620@id-229620.helmsley.irccloud.com) |
| 2026-04-20 11:58:48 | <merijn> | Freakie: I wonder how much of the reported GC time is you compacting. (Since building a compact region is literally just "GC this root into, but into a separate region, rathern than heap", so it could be that compacting is reported as GC time) |
| 2026-04-20 11:59:06 | → | integral joins (sid296274@user/integral) |
| 2026-04-20 11:59:12 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Excess Flood) |
| 2026-04-20 11:59:14 | → | Adeon joins (sid418992@id-418992.lymington.irccloud.com) |
| 2026-04-20 11:59:35 | <Freakie> | I will admit that I just used an implementation of a package I found that I couldn't install through cabal because it was too old, so I haven't looked too much into how it works |
| 2026-04-20 12:00:09 | → | hook54321 joins (sid149355@user/hook54321) |
| 2026-04-20 12:00:23 | <Freakie> | all I know is that appending uses CompactAdd# which is a GHC primitive |
| 2026-04-20 12:01:09 | <merijn> | Freakie: Yeah, I just mean that the way GHC implements compacting is the exact same code as GC. i.e. starting from a root, traverse the memory and copy to new heap (except the heap is now a compact region instead of the normal heap) |
| 2026-04-20 12:01:10 | → | sclv joins (sid39734@haskell/developer/sclv) |
| 2026-04-20 12:01:16 | → | dy joins (sid3438@user/dy) |
| 2026-04-20 12:01:18 | → | mustafa joins (sid502723@rockylinux/releng/mustafa) |
| 2026-04-20 12:01:41 | <merijn> | So it might report that as GC time, I don't know :) |
| 2026-04-20 12:01:56 | <Freakie> | I would assume the profiler would report it differently since it's a using a public API though? |
| 2026-04-20 12:02:04 | <merijn> | Freakie: can you pastebin the GC report? |
| 2026-04-20 12:02:35 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 2026-04-20 12:03:11 | <Freakie> | https://pastebin.com/CN8itK6R |
| 2026-04-20 12:03:22 | <Freakie> | or sorry what do you mean by report? |
| 2026-04-20 12:03:47 | <merijn> | That one was what I meant :p |
| 2026-04-20 12:04:05 | <merijn> | oof, productivity 12% is kinda abysmal xD |
| 2026-04-20 12:04:29 | <merijn> | And what was it without the compact regions? |
All times are in UTC.