Already a while that I didn't post anything here. That's not that the blog experiment is over already, that not that I didn't do anything in the meanwhile. That's even exactly the contrary. Everyone's back from vacations, and stuff gets quicker and quicker. Every year, I've the feeling that I've more to do than the year before.

Day to day

Last week, I spent 2 days in a seminar with the director team of the INRIA Nancy Grand-Est discussing about the future of the research center for the upcoming year and afterward (I was there as Grid'5000 scientific leader). I learned a lot, met several great people. I better understand how (and why) to write project proposal. Especially European ones...

I spent one day listening to internship presentations from the last year students of my IT engineers school. Interesting, but a bit long. I'm still happy of doing it, some ideas I got there could lead to interesting researches. Two of them:

  • kcachegrind is missing a view indicating which function is called when. It would be precious to detect sawchain effects, where very short functions are called again and again. Some java proprietary tools have it.

  • Also, I think that testing MPI applications like what we do in SMPI is neat and gentle, but 99% of the distributed applications written nowadays are using EJB. I'm sure that a simulation or emulation testing tool could be of some interest in this area too.


Lucas Nussbaum, my new colleague recruited since 2 weeks, arrived in Nancy. We discussed quite a lot about potential interactions, about what we want to do with the Grid'5000 platform (we are co-leaders of the Nancy's site).

Also, I've the feeling that a new cycle begins. End august, we released a version of SimGrid addressing the routing table scalability issue. That's not perfect and done yet, but it's already the conclusion of a quite long session of off-record discussion with the researchers from the university of Anvers. Right now, I'm more about starting new stuffs which will end in a few months, if I'm lucky. That makes writing about that here more difficult. Some stuff are still a bit under cover, and I'd prefer blogging only about stuff I achieve, not about my dreams. Anyway, here are some hints about what my day-to-day work is.

With Cristian, we started the thinking about pluggable communication semantics. We want to move the networking logic from APIs into the SiMiX layer. It would ease the writing of new APIs, but our goal is more to allow the parallelization of the simulator (better encapsulation of the process informations), allow to optimize the model-checking process by making clear which transitions are independent (even if the model-checker to-be-embedded in SimGrid is not functional yet). I hope to get something done within the month, if possible. It should become v3.3.5 (I'm still expecting 3.3.4 to be "huge speedup by lazy evaluation" from Grenoble). A publication to SimuTools is possible.

Sabina is in the process of writing a paper about her work on PlusCal 2.0. I feel quite bad since this article still needs quite a bit of work (that's her first), and I won't be able to help. The deadline is tomorrow, I'll be in the plane. In compensation, I may dig into the code as I promise I'll do since 6 months.

I played quite a bit with the idea of writing a BitTorrent simulator in SimGrid. I could use it to build benchmarks maybe more interesting to the P2P community. Also, I think it would be interesting to see how this protocol should be tuned to be usable on high-speed networks. It could maybe be used to deploy the system image in kdeploy but I guess the settings adapted to illegal downloads on DSL would not fit the gigabit settings we have on Grid'5000. The problem is that if I don't find someone to work with me (and push me) on this, I won't find the time to do so.

We wanted to write a paper about JLM with Gérald, but didn't yet. The deadline is 9/11, will see if we get something done by then. The contrary would be a pity: the tool is great and innovative, and that's one of the big conferences of the computer science education topic. I'm still not very confident.

We will write a project proposal with Fred on the use of SimGrid to experiment production grids infrastructures as the one that the CERN wants to build to handle the huge amount of data coming out of the LHC. Will see.

Right now, I'm sitting in the plane to Seattle (explaining the long post maybe). I'll present an invited talk at the P2P conference about SimGrid. I'm quite glad to see that SimGrid becomes visible on P2P people's scanner, I'm just a bit disappointed to see that I only get 10mn to present my work + a 2h poster session. I was expecting something like half an hour to present my work or so. As a result, I didn't begin my slides yet. I also wanted to do some new poster explaining the SimGrid usage workflow, but that will be for the next time I guess. This time, I'll reuse the HPDC'06 poster: the big picture didn't change that much actually. Plus, I have the 300-slides long tutorial at hand for any upcoming questions.


Not to forget, I teached 2 hours already. For that, I had to refresh my teachings (on system programming) a bit. I still have to refresh the next lectures, they kinda need it, but it shouldn't be too much work.

Also, I need to prepare the home lab the students will have to do. I'm thinking about a Read-Evaluate Loop for the C language. That's the kind of loop you have in the python interpreter, or simply in the shell: you type your code line by line; the interpreter run them as you type and displays the result. To implement that, you have to compile each line as plug-ins and load them in a child process that you control through a specialized pipe. A program (called CRELP) already does this, but it's in haskel. Since I don't know this language, translating it to raw C would be interesting. That's very relevant to the system programming course for second year students, and I could reuse it in the C course I teach to first year students. It however promises to be quite a large job to set the project up. If it's too much, I may play the "write a shell" dummy joker that I never played so far in 4 years...

The September month promise to be quite active since I'll do on fourth of my yearly teaching duty on this first month. For example, next week I'll do 30 hours (!). Luckily, most of these teachings are already ready. December will be somehow difficult since I promised to build a new teaching on distributed programming and game theory with Corine, and January will be challenging since my teaching on tools technics to program from last year is far from being satisfactory. Not to forget, we planed to completely revamp the C and shell teaching this year. That comes in march or so.

Fuck me, I promised myself to take an easy year on the teaching side to compensate the work on SimGrid and USS-SimGrid. I'm glad I turned down the advanced system and networking teachings I had last year. It will be difficult enough.


Even if you cannot see any change to the site yet, I also continued a bit my work about the conversion of my web site to ikiwiki. I'm working on an agenda plug-in, allowing me to display an expunged version of my agenda on my web page without giving all my data to google. The source file format would be plain ascii, a clear advantage to me (I must be a dino). Also, I'd like to have everything locally on my machine even when my connexion is down. I need about one day to finish the first version. Then, I'll see if I can tackle the synchronization challenge: my co-workers from research side use the oracle agenda, which comes with a SDK. And my co-workers from teaching use an agenda application called ADE (if you don't know it, feel lucky). But it's rather improbable I get bored enough to devote the time to write those synchronizers.

On the debian front, quilt 0.48 package was fixed up by Ryan Niebur and uploaded by Raphaël Hertzog. I feel better. I now need to take the patches, clean them up a bit, and provide them to upstream for adoption. Also quite a lot of work, but maybe something I'm better in than pure bash hacking. Also, there is a new upstream version of widelands. I really need to take that package back in shape.


As usual, I get ideas for 10 new papers in one month and write 0 :-/ And sorry for the too long post.