companion_cube changed the topic of #ocaml to: Discussion about the OCaml programming language | http://www.ocaml.org | OCaml 5.0 released(!!1!): https://ocaml.org/releases/5.0.0.html | Try OCaml in your browser: https://try.ocamlpro.com | Public channel logs at https://libera.irclog.whitequark.org/ocaml/
Haudegen has quit [Ping timeout: 255 seconds]
masterbuilder has quit [Quit: leaving]
masterbuilder has joined #ocaml
waleee has quit [Ping timeout: 252 seconds]
Tuplanolla has quit [Quit: Leaving.]
azimut has joined #ocaml
oriba has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
chrisz has quit [Ping timeout: 240 seconds]
chrisz has joined #ocaml
spip has quit [Quit: Konversation terminated!]
terrorjack has quit [Quit: The Lounge - https://thelounge.chat]
terrorjack has joined #ocaml
TakinOver has quit [Remote host closed the connection]
TakinOver has joined #ocaml
alexherbo2 has quit [Ping timeout: 260 seconds]
rf has quit [Remote host closed the connection]
<adrien> I think I've greatly increased the performance of my compression file sorter; I think I've lowered the algorithmic complexity and a test is down to 10 minutes, down from 75 minutes; basically I replaced "cardinal (union set1 set2)" with set1 being a bigarray with a '1' for member, and then I iterate over set2 (roughly-speaking) and check the bigarray
<discocaml> <darrenldl> @beheddard companion_cube: selective receive interface with timeout : D <https://github.com/darrenldl/distrproc/blob/main/debug/main.ml>
<discocaml> <darrenldl> (and with guards)
Haudegen has joined #ocaml
gnulinuxuser has joined #ocaml
terrorjack has quit [Quit: The Lounge - https://thelounge.chat]
terrorjack has joined #ocaml
terrorjack has quit [Client Quit]
terrorjack has joined #ocaml
bartholin has joined #ocaml
Serpent7776 has joined #ocaml
olle has joined #ocaml
alexherbo2 has joined #ocaml
bartholin has quit [Quit: Leaving]
Anarchos has joined #ocaml
bartholin has joined #ocaml
Tuplanolla has joined #ocaml
alexherbo2 has quit [Remote host closed the connection]
alexherbo2 has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
gnulinuxuser has quit [Ping timeout: 260 seconds]
<discocaml> <Kakadu> Is it possible to integrate bisect_ppx with cram tests? From brief exploration it looks like that cram tests are totally ignored...
Anarchos has joined #ocaml
m5zs7k has quit [Ping timeout: 264 seconds]
m5zs7k has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
bartholin has quit [Quit: Leaving]
bartholin has joined #ocaml
xd1le has joined #ocaml
azimut has quit [Remote host closed the connection]
azimut has joined #ocaml
ardon` has joined #ocaml
ardon` has quit [Remote host closed the connection]
Stumpfenstiel has joined #ocaml
Stumpfenstiel has quit [Ping timeout: 252 seconds]
bgs has joined #ocaml
Stumpfenstiel has joined #ocaml
ritsu[m] has left #ocaml [#ocaml]
<companion_cube> That looks nice, @darrenldl
perrierjouet has quit [Quit: WeeChat 3.8]
Anarchos has joined #ocaml
<discocaml> <RegularSpatula> Yeah bisect_ppx works with cram if you instrument your executables as well as any of your libraries
<discocaml> <Kakadu> I tried, but it looks like it isn't. Could you point to working demo?
<adrien> hmmm, I've just extracted my most expensive chunk of code to a dedicated function; it is called only once since the hot loop is inside the function
<adrien> and it seems the code got ~4x slower
<adrien> I'm a bit surprised: the function itself doesn't need to be inlined and it's not directly the hottest code since it triggers a few millions calls of something else which is what is the most expensive by itself
<adrien> any idea of what to look for?
<adrien> (I'm cleaning the code currently, that's why I'm not showing it immediately but I could if noone has ideas)
<discocaml> <AngelicDevil> Hello. Can somebody tell me where I can find exercises with variants and records? Thanks.
perrierjouet has joined #ocaml
<discocaml> <RegularSpatula> Sure, just made this one: https://github.com/mooreryan/bisect_ppx_cram_test_example
alexherbo2 has quit [Remote host closed the connection]
perrierjouet has quit [Quit: WeeChat 3.8]
perrierjouet has joined #ocaml
spip has joined #ocaml
bartholin has quit [Quit: Leaving]
rf has joined #ocaml
xd1le has quit [Quit: xd1le]
waleee has joined #ocaml
olle has quit [Ping timeout: 255 seconds]
alexherbo2 has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
bartholin has joined #ocaml
<adrien> I had another try with only less code in a separate function and got something as bad (if not worse) so I tried the opposite approach and put some more code in a separate function, and it's fast again...
<adrien> code is saner now ( https://gitlab.com/adrien-n/compsort ) but this still requires a modified xz (with a single printf line)
Anarchos has joined #ocaml
azimut has quit [Ping timeout: 255 seconds]
czy has quit [Remote host closed the connection]
alexherbo2 has quit [Remote host closed the connection]
bgs has quit [Remote host closed the connection]
Serpent7776 has quit [Ping timeout: 260 seconds]
<mclovin> @adrien, I see that you're using `ifprintf`. I went over the code quickly so I'm not sure of often you're calling your `log` function, but even when you don't print anything and call `ifprintf` it's going to be quite costly as `ifprintf` has to consume all its argument. A solution is usually to do something like this instead: https://github.com/OCamlPro/owi/blob/main/src/log.ml#L10-L14 ; before I was using `ifprintf` in my interpreter, and calling
<mclovin> my log function on every instruction. Switching to the various `debug0`, `debug1` etc. functions led to a 25% improvement.
<mclovin> Which function is the one you extracted ?
bartholin has quit [Quit: Leaving]
<Anarchos> i finally managed to run coqide on HaikuOS, tweaking a bit lablgtk3 to use gtksourceview4.8.4 as a gtksourceview3 ----> https://imgur.com/a/XK0uSIN
Stumpfenstiel has quit [Ping timeout: 255 seconds]
spip has quit [Quit: Konversation terminated!]
Haudegen has quit [Ping timeout: 255 seconds]
olle has joined #ocaml
Tuplanolla has quit [Quit: Leaving.]
terrorjack has quit [Quit: The Lounge - https://thelounge.chat]
olle has quit [Ping timeout: 255 seconds]
terrorjack has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
mauke_ has joined #ocaml
mauke has quit [Ping timeout: 255 seconds]
mauke_ is now known as mauke