What is Inuktitut ?


In the context of cluster or grid computing numerous protocols and interfaces exist to communicate between machines (Socket, MPI, Madeleine, GM, ...). Inuktitut aims at defining a set of application programming interfaces (API) in order to develop programs that can be highly portable on different operating systems on top of these interfaces. Inuktitut defines two classes of interface for efficient exploitation of clusters of SMPs machines: the intra-node parallelism between processors is managed using light weight processes (threads) and the inter-node parallism between SMPs machines use one-side operations to exchange messages.

Overview of Inuktitut

Inuktitut aims to provide a C++ interface for:
The protocols defined in Inuktitut are:
Note that Inuktitut does not define rendez-vous on message (no send-receive) operations, but only one-side operations.

Moreover, Inuktitut defines a library for collective communication using scalable algorithms (chain-tree, alpha-tree, flat-tree) and mixed-algorithms using the best algorithm for a range on input. This work is ongoing work and  cannot be considered as stable at the moment.

Currently Networks have been implemented on top of:

How to spawn program in Inuktitut ?

A parallel launcher of processus, called Taktuk, was developed. At the same time, it permits to spawn processus and build an Inuktitut Network object.

Who is using Inuktitut ?

Inuktitut is mostly used by Athpascan.