Home liberachat/#haskell: Logs Calendar

Logs: liberachat/#haskell

←Prev  Next→ 1,791,071 events total
2026-03-07 07:24:47 arandombit joins (~arandombi@user/arandombit)
2026-03-07 07:30:11 × rainbyte quits (~rainbyte@181.47.219.106) (Remote host closed the connection)
2026-03-07 07:31:02 × philopsos1 quits (~caecilius@user/philopsos) (Quit: leaving)
2026-03-07 07:31:26 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds)
2026-03-07 07:34:05 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-07 07:36:34 ChaiTRex joins (~ChaiTRex@user/chaitrex)
2026-03-07 07:38:43 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-03-07 07:41:01 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds)
2026-03-07 07:46:41 ChaiTRex joins (~ChaiTRex@user/chaitrex)
2026-03-07 07:49:27 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-07 07:53:52 × califax quits (~califax@user/califx) (Remote host closed the connection)
2026-03-07 07:54:03 califax joins (~califax@user/califx)
2026-03-07 07:56:20 × Vizious quits (~bes@user/Vizious) (Quit: WeeChat 4.6.3)
2026-03-07 07:56:25 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds)
2026-03-07 08:00:21 tromp joins (~textual@2001:1c00:3487:1b00:e975:d7be:a717:768f)
2026-03-07 08:01:02 × DetourNetworkUK quits (~DetourNet@user/DetourNetworkUK) (Read error: Connection reset by peer)
2026-03-07 08:02:39 DetourNetworkUK joins (~DetourNet@user/DetourNetworkUK)
2026-03-07 08:07:30 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-07 08:12:19 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-03-07 08:12:45 euphores joins (~SASL_euph@user/euphores)
2026-03-07 08:15:06 × xff0x quits (~xff0x@2405:6580:b080:900:acbe:a784:57c1:5e52) (Ping timeout: 244 seconds)
2026-03-07 08:18:45 Vizious joins (~bes@user/Vizious)
2026-03-07 08:19:17 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-07 08:22:34 xff0x joins (~xff0x@2405:6580:b080:900:acbe:a784:57c1:5e52)
2026-03-07 08:24:19 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-03-07 08:29:46 × madresch quits (~Thunderbi@user/madresch) (Quit: madresch)
2026-03-07 08:30:06 madresch joins (~Thunderbi@user/madresch)
2026-03-07 08:37:58 × xff0x quits (~xff0x@2405:6580:b080:900:acbe:a784:57c1:5e52) (Ping timeout: 256 seconds)
2026-03-07 08:38:46 xff0x joins (~xff0x@2405:6580:b080:900:4ba2:34a0:8fe0:b7c2)
2026-03-07 08:39:54 × arandombit quits (~arandombi@user/arandombit) (Ping timeout: 244 seconds)
2026-03-07 08:51:32 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-07 08:52:31 bgamari_ joins (~bgamari@64.223.168.27)
2026-03-07 08:53:14 × bgamari quits (~bgamari@64.223.173.201) (Ping timeout: 245 seconds)
2026-03-07 08:53:33 × tzh quits (~tzh@76.115.131.146) (Quit: zzz)
2026-03-07 08:56:43 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-03-07 09:01:10 × tomboy64 quits (~tomboy64@user/tomboy64) (Ping timeout: 265 seconds)
2026-03-07 09:04:15 tomboy64 joins (~tomboy64@user/tomboy64)
2026-03-07 09:07:20 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-07 09:12:17 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2026-03-07 09:15:07 × Vizious quits (~bes@user/Vizious) (Quit: WeeChat 4.6.3)
2026-03-07 09:18:47 × humasect quits (~humasect@192.249.132.90) (Quit: Leaving...)
2026-03-07 09:20:17 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-07 09:23:39 Vizious joins (~bes@user/Vizious)
2026-03-07 09:24:50 × Goodbye_Vincent1 quits (cyvahl@freakshells.net) (Quit: )
2026-03-07 09:25:51 Goodbye_Vincent1 joins (cyvahl@freakshells.net)
2026-03-07 09:27:16 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2026-03-07 09:27:20 czan joins (~czan@user/mange)
2026-03-07 09:35:12 × aka_dude quits (~aka_dude@192.71.166.120) (Quit: Gateway shutdown)
2026-03-07 09:36:08 aka_dude joins (~aka_dude@2a03:f80:30:f490::1)
2026-03-07 09:38:18 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-07 09:41:35 arandombit joins (~arandombi@user/arandombit)
2026-03-07 09:43:14 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2026-03-07 09:54:06 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-07 09:59:07 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-03-07 10:00:00 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Excess Flood)
2026-03-07 10:04:23 Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
2026-03-07 10:07:29 × Ranhir quits (~Ranhir@157.97.53.139) (Quit: KVIrc 5.2.6 Quasar http://www.kvirc.net/)
2026-03-07 10:10:00 merijn joins (~merijn@62.45.136.136)
2026-03-07 10:14:27 × merijn quits (~merijn@62.45.136.136) (Ping timeout: 244 seconds)
2026-03-07 10:14:56 × YoungFrog quits (~youngfrog@2a02:a03f:ca07:f900:6149:6cda:888:c7a0) (Quit: ZNC 1.7.x-git-3-96481995 - https://znc.in)
2026-03-07 10:15:15 YoungFrog joins (~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be)
2026-03-07 10:19:03 × arandombit quits (~arandombi@user/arandombit) (Remote host closed the connection)
2026-03-07 10:21:18 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-07 10:22:44 × img quits (~img@user/img) (Quit: ZNC 1.10.1 - https://znc.in)
2026-03-07 10:23:59 img joins (~img@user/img)
2026-03-07 10:25:05 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds)
2026-03-07 10:26:25 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2026-03-07 10:26:34 ChaiTRex joins (~ChaiTRex@user/chaitrex)
2026-03-07 10:29:48 × CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 264 seconds)
2026-03-07 10:36:19 Guest89 joins (~Guest89@185.45.21.144)
2026-03-07 10:37:05 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-07 10:39:06 × Beowulf quits (florian@sleipnir.bandrate.org) (Quit: = "")
2026-03-07 10:39:40 <Guest89> hello; I'm trying to profile an application that is rather performance sensitive and I'm hoping to reduce allocations as much as possible (this is for the purposes of a master's thesis I'm working on), but I'm having a little trouble isolating the hotspots in my code and understanding whether or not my code itself is overallocating as it is
2026-03-07 10:39:41 <Guest89> written. would anyone be willing to help me figure things out?
2026-03-07 10:40:11 <Guest89> garbage collection takes 3 times as long as the code itself for example, which I think seems very excessive. I've been trying to play around with things like ghc-compact but it didn't seem to help things any
2026-03-07 10:41:21 <haskellbridge> <sm> hi Guest89 . It's not the easiest process, but it will be useful to generate a simple time and space profile - the profiling chapter in the GHC Users's Guide should tell how
2026-03-07 10:41:50 <haskellbridge> <sm> you must make a profiling build of your app, then run it with special flags
2026-03-07 10:42:04 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2026-03-07 10:44:12 <haskellbridge> <sm> it will be hard to understand completely, but full of useful information. You can also process it with https://hackage.haskell.org/package/profiterole which makes it more readable.
2026-03-07 10:45:29 <haskellbridge> <sm> and you're right, it's overallocating (garbage collection should be a small percentage of your run time)
2026-03-07 10:45:32 <Guest89> I'll be honest, I haven't figured out how to interact with packages like that yet; I've used stuff like eventlog2html but compiled as a separate executable
2026-03-07 10:45:59 <Guest89> I've mostly relied on the metrics provided by different RTS options so far
2026-03-07 10:46:16 <Guest89> it's verbose but I can navigate it at least?
2026-03-07 10:46:33 <haskellbridge> <sm> yes, +RTS -s is useful
2026-03-07 10:47:46 <haskellbridge> <loonycyborg> https://github.com/ezyang/compact <- this might help with excessive gc times
2026-03-07 10:47:48 <Guest89> I have some data that suggests that the data itself isn't fragmented but the program allocates about twice as much as it uses, which also seems excessive
2026-03-07 10:48:10 <Guest89> I've already been trying to use GHC.Compact but it doesn't seem to have affected runtimes at all
2026-03-07 10:48:33 <Guest89> I assume there is some structure in my code that exacerbates the problem but I can't really see where
2026-03-07 10:49:28 <Guest89> it's supposed to be an implementation of I/O efficient BDD (binary decision diagram) algorithms which necessarily generates a lot of data so I need some way to minimize overhead where it's reasonable
2026-03-07 10:49:57 Ranhir joins (~Ranhir@157.97.53.139)
2026-03-07 10:50:08 <haskellbridge> <sm> it may be normal that the program uses 2 or even 3 times what you think, depending how you measure it, because of how GC works (making copies)
2026-03-07 10:50:38 arandombit joins (~arandombi@user/arandombit)
2026-03-07 10:50:51 <haskellbridge> <sm> the time and space profile will show you the top users of time and space, and will show you any crazy large call counts indicating things called too often
2026-03-07 10:50:56 <Guest89> I understand, but the issue is that my implementation uses something like 100 times as much memory as a reference implementation in C++
2026-03-07 10:51:26 <Guest89> obviously you can't get the performance *that* close, at least not in terms of memory, but as things are it's both an absurd difference and not feasible
2026-03-07 10:51:37 <haskellbridge> <loonycyborg> Maybe it's thunk explosion somewhere, like from foldl
2026-03-07 10:51:53 <haskellbridge> <sm> it requires investigation, there's no way round it
2026-03-07 10:52:17 <Guest89> I've tried both strict and non-strict versions of foldl, and I didn't seem to see any issues
2026-03-07 10:52:40 <Guest89> most of the actual allocation happens within the core algorithms, but I've also tried varying levels of strictness there
2026-03-07 10:52:49 <haskellbridge> <loonycyborg> ye it's just an example

All times are in UTC.