Hi Anil, Thanks a lot for the comments! We'll try to use ocamlclean
Regards, Wassim H. On Monday, November 23, 2015, Anil Madhavapeddy <[email protected]> wrote: > Hi Wassim, > > It's definitely possible to get the image size of MirageOS builds down > from where they are right now. As background, there are two ways to build > unikernel images: > > - Native code compilation: this generates fast x86_64/ARM unikernels that > link against the OCaml 'libasmrun' runtime to run as native executables. > In this mode, touching a single module will link the whole thing in, even > if only one function is used. Thus, as modules grow, the hello world > library size also grows. > > - Bytecode compilation: this generates portable bytecode that is > interpreted by the 'ocamlrun' or 'libcamlrun' runtime. There exists a > utility called 'ocamlclean' that does dead-code elimination that eliminates > all unused functions: https://github.com/avsm/ocamlclean. This is how we > got our sub-300k unikernels for DNS. > > Now, we need to do a little work to get these back. Either a native code > ocamlclean, or add a bytecode backend to the latest MirageOS (which is > native code only). I suspect the easiest path is to build the bytecode > backend in again, and then get ocamlclean working with the latest OCaml > (shouldnt be hard), and then investigate a native code ocamlclean as a > Pioneer Project. > > regards, > Anil > > > On 18 Nov 2015, at 23:05, Amir Chaudhry <[email protected] <javascript:;>> > wrote: > > > > Hello Wassim, > > > > There are likely further things that can be done to reduce image size > but I’m not sure of the status of that work. It might be time to revisit > some of that to see where it stands. > > > > If you add an agenda item to the next MirageOS call (and join the call > too) [1], then we can remember to discuss it! > > > > [1] https://github.com/mirage/mirage-www/wiki/Call-Agenda > > > > Best wishes, > > Amir > > > >> On 13 Nov 2015, at 22:05, Wassim Haddad <[email protected] > <javascript:;>> wrote: > >> > >> Dear colleagues, > >> > >> A question please about the size of unikernel images: > >> > >> I built mirage console "hello world" and the stripped disk image size > is 3.2 MBytes. The runtime memory required to run the image is ~ 9 MBytes. > Is it possible to reduce futher the memory footprint? > >> > >> > >> Thanks much! > >> > >> Wassim H. > >> _______________________________________________ > >> MirageOS-devel mailing list > >> [email protected] <javascript:;> > >> http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel > > > > > > _______________________________________________ > > MirageOS-devel mailing list > > [email protected] <javascript:;> > > http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel > >
_______________________________________________ MirageOS-devel mailing list [email protected] http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
