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

Reply via email to