Mirage OS Logo

The MirageOS Documentation

and developer guides

Weekly Meeting: 2013-05-28
By Anil Madhavapeddy - 2013-05-28


  • Build progress since last week
  • Exploring a Try Mirage site for launch
  • Benchmarking progress with Core_bench

Attendees: Balraj Singh, Anil Madhavapeddy, Amir Chaudhry, David Sheets, Jonathan Ludlam, Thomas Gazagnaire, Prashanth Mundkur, Vincent Bernardoff, Mike McClurg, Daniel Buenzli

Build update

Dave: An obuild 0.0.2 snapshot has been uploaded to OPAM that fixed lots of bugs and is generally very usable.

Anil: we would like to use Jenga in Real World OCaml, but it's still not portable to the Mac (there is ongoing work in ocaml-plugin to make this work there).

Thomas: ocp-build is working nicely but not well-documented due to lack of time. The front end isn't great but it's designed to be generated from other tools (Fabrice is willing to improve it). We would like input on what is required would not be difficult to adapt it.

Anil: One nice feature of Mirari is that dependencies can be auto-installed during the configure phase. We like OPAM to understand build a bit more and automate things more easily in the longer-term. e.g Parse OASIS file and generate meta files. Jenga doesn't have that.

Thomas: We need something more concrete in the build space, or we won't make progress.

Anil: We're driven by the 1.0 deadlie in July at the moment, and can then take some breathing room to work on the longer term solution. Sounds like it comes down to OASIS being ok for now, and Mirari being an interface to the application construction. (general agreement from the room)

Try Mirage

Anil: Many people want to try Mirage, but blocked by not having Xen installation handy. Can we figure out a way to expose a machine for people to build quickly (e.g. for few mins), or is this too painful? We can seed this effort from the Lab (but do actually need the machines for research).

Dave Scott: possible to find VMs, but hosting within Citrix firewall is problematic due to (entirely valid) security concerns.

Anil: would be good to get EC2 bindings sorted soon, as we should be able to run the main website on it again. Vincent: he has ported barko's AWS bindings to the newest Cohttp already, but not tested it.

Balraj: The TCP stack should be fine to run a live site on. All the current bugs are deep in microbenchmarks such as 1-byte writes and far from the day-to-day stuff a website would see. (muttering of "famous last words" from the room).

Anil: xen.openmirage.org has been running on EC2 for 20 months and seems ok (but don't all visit at once!).

Benchmarking and visualisation

Anil: I've just written a bunch of Real World OCaml text that uses Core_bench, and it's an execllent library. Can we generate visual graphs from Daniel's library?

Daniel: Having some issues with glyphs in the Canvas backend, but should be ok aside from that.

Anil: How dependant are we on the browser output? Is there an SVG output? can we build graphs that don't depend on Canvas?

(the answer to all the above questions are affirmative)

David Sheets: I'd like to be able to plot stats curves for Ocamlot for queue length and worker utilization.

Daniel: This should be ok from now. Just need to look at the glyphs thing.

Anil: Going to wait until tuntap is stable and then breakup the network stack to aid benchmarking. Helps other people to use (and contribute to) these other libraries. Vincent has been Ocamldoc-ing as he goes along and that's been very useful. It's hard to do that in one go but as you go along its much easier. Please do this for the libs that you are working on.