hannes changed the topic of #mirage to: https://mirage.io - bug cleaning day every first friday in month (14:00 UTC - late, next: Feb 1st) - next call Jan 9th 16:00 GMT https://github.com/mirage/mirage-www/wiki/Call-Agenda - this channel is logged at http://irclog.whitequark.org/mirage/ - MirageOS 3.3.1 is released - happy hacking!
zkms has joined #mirage
zkms has quit [Client Quit]
zkms has joined #mirage
zkms has quit [Client Quit]
zkms has joined #mirage
zkms has quit [Client Quit]
zkms has joined #mirage
mort___ has quit [Read error: Connection reset by peer]
mort___ has joined #mirage
mort___ has quit [Quit: Leaving.]
pagurus has quit [Ping timeout: 272 seconds]
pagurus has joined #mirage
dobson has quit [Quit: Leaving]
dobson has joined #mirage
<ehirdoy> copy`, thanks!!
dobson has quit [Quit: Leaving]
dobson has joined #mirage
mort___ has joined #mirage
mort___ has quit [Client Quit]
Haudegen has joined #mirage
mort___ has joined #mirage
mort___1 has joined #mirage
mort___ has quit [Ping timeout: 240 seconds]
mort___1 has quit [Quit: Leaving.]
mort___ has joined #mirage
mort___ has quit [Ping timeout: 268 seconds]
Haudegen has quit [Remote host closed the connection]
mort___ has joined #mirage
mort___ has left #mirage [#mirage]
<ehirdoy> what's the name of macro(or flag?) to pass as linker option(-lto) at mirage build?
mort___ has joined #mirage
mort___ has quit [Quit: Leaving.]
mort___ has joined #mirage
mort___ has quit [Quit: Leaving.]
mort___ has joined #mirage
<ehirdoy> I couldn't find any configurable flag so that I hardcoded -use-lto in mirage code, https://gist.github.com/ehirdoy/461731eb55b6c567a8018c1cc66ab26f
<ehirdoy> 2.2M vs 967K, with lto and without lto repectively....still this looks big from the result of http://anil.recoil.org/papers/2013-asplos-mirage.pdf, any hint to go further?
mort___ has left #mirage [#mirage]
mort___ has joined #mirage
mort___ has quit [Quit: Leaving.]
mort___ has joined #mirage
mort___ has left #mirage [#mirage]
<apache2> ehirdoy: is this after `strip` ?
ehirdoy_home has joined #mirage
<ehirdoy_home> yes after stripped
jnavila has joined #mirage
<hannes> ehirdoy_home: AFAIK the numbers from asplos paper used the byte code interpreter, whereas mirage nowadays always uses native code compilation...
<ehirdoy_home> @hannes, you mean, with bytecode, actual size may be binary size + runtime size ~= native code size?
<hannes> ehirdoy_home: I'm talking about https://v1.realworldocaml.org/v1/en/html/the-compiler-backend-byte-code-and-native-code.html -- and I don't know from where the numbers came into the 2013 asplos paper
<ehirdoy_home> ocamlclean is used to remove unused functions in addition to '-lto' removing unused modules, but ocamlclean seems to be only for byte code :( I need the similar for native code, removing unused functions........
<hannes> well, or finding out which opam packages are in the dependency chain and are big and can be safely removed/replaced ;) what is your desired binary size?
<hannes> or re-activating the bytecode output of mirageos to produce tiny binaries
<ehirdoy_home> the smaller the better:) People are trying to shrink linux kernel ~1MB+ and also there are many more smaller RTOSes. Probably 500kB MirageOS(inc net stack) may be appealing as in asplos paper originally, I guess. If I take MirageOS in bytecode for smallness, some perf would be sacrificed....
jnavila has quit [Ping timeout: 246 seconds]
<Drup> the "dead code elim" sizes in the asplos paper are with ocamlclean, you won't get that in native. hello wolrd in native + -lto on unix is ~500Ko. A complete website with TLS stack+assets is 1.5Mo
<Drup> (add around 1Mo for Xen images)
mort___ has joined #mirage
<ehirdoy_home> I tried today with 4.06.1+lto switch, and hello.hvt(native) is 967KB. This is still bigger by 467KB, compared with your info....:( I really want to see 500KB hello native at first with the latest 4.06.1+lto.
<Drup> hmm, the measurements I have at hands were done with 4.05, and I don't know which Mirage version (probably 2.X or 3.0). The base things might have grown a bit
<ehirdoy_home> is my hack correct, enabling -lto? https://gist.github.com/ehirdoy/461731eb55b6c567a8018c1cc66ab26f
<Drup> by instinct, I would say. You could also just use OCAMLPARAM
mort___ has quit [Quit: Leaving.]
mort___ has joined #mirage
<ehirdoy_home> "noop.hvt"z in mirage-skelton is 960KB with "-lto".....something seems wrong??? I used 4.06.1+lto switch and mirage v3.4.1
_whitelogger has quit [Remote host closed the connection]
_whitelogger_ has joined #mirage
Ulrar has joined #mirage
tg has quit [Ping timeout: 246 seconds]
tg has joined #mirage
mort___ has left #mirage [#mirage]
Haudegen has joined #mirage
mort___ has joined #mirage
ehirdoy_home has quit [Ping timeout: 256 seconds]
mort___ has quit [Quit: Leaving.]
_whitelogger has joined #mirage
demonimin has quit [Quit: bye]
damjan has quit [Quit: bye]
mort___ has joined #mirage
demonimin has joined #mirage
mort___ has quit [Client Quit]
damjan has joined #mirage
Haudegen has quit [Remote host closed the connection]