Informatique et Distribution Informatique et Distribution Page d'accueil Vérification et temps réel Techniques en Imagerie, Modélisation, Cognition Logiciels, Systèmes, Réseaux Laboratoire de Modélisation et Calcul Mathématiques discrètes, recherche opérationnelle, informatique théorique, systèmes cognitifs Informatique Graphique, Vision, Robotique Communication Langagière et Interaction Personne-Système TopC.gif TopD.gif

I/O Scheduler for High Performance Computing

Overview · Publications · Documentation · Download · Contact        NFSp · other software by ID...

Last experiments

Last presentation

Impact of linux low schedulers · Impact of an I/O intensive application   aIOLi at IRISA, may 2006(french pdf slides)


aIOLi inside kDFS
25 October 2007
I/O scheduling strategies require to have a global point of view to be efficient. The design of aIOLi was focused on centralized server such the ubiquitous NFS and our last works showed difficulties to extend the current prototype to a parallel file system (such as NFSp, PVFS or Lustre). Since, september 2007, we try to design an implement aIOLi concepts in a fully distributed way within the kDFS File system, a new kernel Distributed File System dedicated to HPC !

a short break...
6 February 2007
We have started to design a new cluster file system in the context of the european XtreemOS project. This new file system tends to efficiently exploit hard drives attached to the compute nodes of a cluster (at the opposite of the storage nodes). One of the main goal consists in suggesting specific mechanisms to efficiently exploit CPU and I/O capabilities at the same time. Afterwhat, we will get back to aIOLi and try to deploy it on distinct nodes (casccade I/O scheduling concepts). We hope to have some results to present ASAP !

aIOLi Phenix presentation
6 December 2006
Last aIOLi results have been presented during the Phenix workshop at IRISA. Phenix is an associated team involving the PARIS team of INRIA Rennes (IRISA) (France) and the Discolab laboratory at Rutgers University (USA). The presentation is an extended version of the Cluster 2006 one (both available in the download section).

Phd on aIOLi
15 September 2006
It is done ! a first PhD on I/O scheduling in a multi-applications context has been defunded on the 15th of September 2006 at the ID-IMAG laboratory. The thesis and the presentation appear in the download section (both in 'french'). A shorter paper in english (30 pages) will be available very soon !

Preview release
26 June 2006
We have prepared a preview release of the aIOLi extended NFS server for everyone who wants to try it. It was tested on i386 and AMD64 architectures. The code is stable but you may encounter problems if you try to compile it against an old kernel.
Don't hesitate to contact us, we'd love to hear from you.

aIOLi at Cluster 2006 Conference
20 June 2006
A paper presenting the latest aIOLi concepts and the latest expereriments has been selected to apppear in the proceedings of the Cluster 2006 Conference next September in Barcelona (Spain).

aIOLi at HPDC 2006 Conference
23 March 2006
aIOLi concepts will be presented at the High Performance Distributed Computing Conference during the poster session next June in Paris (France). A short paper (two pages) will also appear into the proceedings of the conference. A longer report is avalaible, don't hesitate to ask us!


Started during summer 2004, aIOLi is a "French recipe" Blink to handle parallel I/O in a multi-application and distributed environment. It is based on popular parallel I/O concepts (collective and anticipatory I/O) and includes an advanced scheduling algorithm to improve global performance and provide fairness between applications. A second approach focused on time reactivity is currently in progress but requires futher evaluation before it can be incorporated in upcoming version.

aIOLi has been designed as generic and universal I/O scheduler that can easily be plugged in any software project (there are only 3 functions in the API!). Thanks to kernel space implementation one can achieve maximum performance, what was proved by amazing results we have got after benchmarks on clusters of the Grid5000.

Currently aIOLi is used by two example projects. The first one is Network File System server based on source code from the 2.6 Linux kernel. The second one is an extension to the Linux Virtual File System which improves performance of all I/O operations. Both of them come with aIOLi source code distribution maintained by Adrien Lebre and Przemyslaw Sowa.

Although aIOLi is implemented as a Linux kernel module it is possible to port it to other Unix. Versions for Open Solaris and FreeBSD are being considered. Back port to user space is not very interesting for us, but it can be done with easy.

A former prototype was implemented as an easy to use user space library. It handles in an efficient way non-contiguous requests done by the standard POSIX calls inside a large SMP node. This approach draws the best of two worlds: parallel I/O optimizations and ubiquity of the standard C library. The latest improvements on the I/O scheduler was suggested in the master thesis of Van Than Trung.


  Date   Name Comment
  6 December 2006   aIOLi: I/O scheduling service for Multiple-application Clusters Phenix workshop 2006, IRISA FR.
pdf presentation (extended Cluster presentation)
  25 September 2006   I/O scheduling service for Multiple-application Clusters Cluster 2006, Barcelona ESP. pdf presentation.
Paper is not freely available (submitted version).
  20 June 2006   Adaptive I/O scheduling strategies for Distributed Multiple-applications... Extended abstract HPDC 2006, Paris FR (not freely available). The paper introduces the current version of aIOLi. See the poster!
  15 September 2005   Controlling and Scheduling Parallel I/O... INRIA - Research Report (RR - 5689).
  6 March 2005   CCGRID Presentation This is only a preview.
  5 March 2005   aIOLi: an Input/Output Library for SMP CCGRID 2005, Cardiff UK (not freely available). This paper introduces the first prototype. But the serialisation mecanism, the second version of aIOLi differs.
  15 Sepember 2006   aIOLi Phd Thesis "aIOLi : Contrôle, Ordonnancement et Régulation des Accès aux Données Persistantes dans les Environnements Multi-applicatifs Haute Performance." Defense presentation here
  1 December 2005   Complete presentation of aIOLi Presented at BULL SA, February 2006 revision here
  13 June 2005   Service de Régulation et d'Ordonnancement Thanh Trung VAN - French master report.
Presentation is available here.
  6 March 2005   aIOLi : Gestion des Entrées/Sorties... Renpar 2005, Le Croisic (not freely available).
Presentation is available here.
Also available : longer research report.
  14 December 2004   Presentation of aIOLi at BULL SA This is only a preview.


It will be available with release of stable version (scheduled September 2005).


If you want to try the newest (probably unstable) code, please visit aIOLi forge for latest versions.

  Date   Name Comment
Linux kernel module
  June 2006   aIOLi extended NFS server 0.1 This is a preview release. Contact us in case of any problems
  September 2006   aIOLi version 0.2 Under heavy development, available soon.
User space prototype
  14 April 2005   aIOLi version 0.1 First prototype. User space proof of concept.


If you have any questions or comments feel free to e-mail us.
If you think your question is related to peculiar aIOLi component, feel free to contact directly the person in charge:

  • Adrien Lèbre - project founder and maintainer, schedule strategy designer/developer
  • Przemyslaw Sowa - kernel space developer, NFS and VFS modules (2005-2006)
  • Thanh-Trung Van - schedule strategy designer/developer
    Moved to Ecole des Mines de St Etienne in December 2005 to start a Phd on DB optimisations.

This work is done in the context of the joint research project Apache supported by CNRS, INPG, INRIA, and UJF and the project LIPS between INRIA and BULL Lab.