Home Page History


Homepage

French version

About

MCMAS (Many-Core Multi-Agent Systems) is a library to facilite the exploitation of many-core architecture in multi-agent systems.
This library also provides already implemented operation ready to be used in existing systems without GPU expertise.

Présentation

MCMAS est une bibliothèque visant à faciliter l'exécution de systèmes multi-agents (SMA) sur architectures GPU et many-core. Pour cela, la bibliothèque offre deux interfaces distinctes :

  • Une interface de haut niveau consituée d'opérations génériques regroupées en plugins.
  • Une interface bas niveau pour concevoir de nouveaux traitements, MCM (Many-Core Manager).

Code

At the moment, a copy of the library can only be obtained using GIT :

git clone http://mesogit.univ-fcomte.fr/glaville/mcmas.git

Source and binary packages will be made available once the library reach a stable version.

Software requirements

MCMAS depends on the availability of an OpenCL platform on the execution platform to work properly.
This platform is often included with the graphic driver provided for the hardware, in the case of NVIDIA, AMD or Intel on Windows or Mac OS X. In the case of Linux distributions, this support may requires the installation of some other package.

MCMAS requires at least Java 5.0 to launch. Apache Ant (http://ant.apache.org/) is also required to generate the library binaries and documentation. All the other dependencies are included in the archive or can be automatically downloaded, as described in the following Setup section.

Setup

When cloned from the GIT repository, MCMAS does not include any binary. The library must therefore be compiled to be exploitable. Before this compilation, all the dependencies required for this process can be retrieved using the following command:

ant resolve

The JAR archive (binary) can, once all dependencies are present, using the following command. It will be stored in the "build/jar/" as a file named "mcmas.jar" ready to be used:

ant jar

A JAR archive containing both MCMAS and its dependencies can also be generated, to facilitate the integration of the library in other programs:

ant bundle

Documentation

The HTML documentation for the library can be generated using the following command:

ant doc

The resulting files will be stored in the "doc/" directory.

Examples

Multiple examples illustrating the usage of MCMAS low-level interface are included in the "src/core/examples" directory. These examples illustrates, in particular, how to use the library to process vectors data structures or to implement simple models such as Game of Life.

Three existing multi-agents systems are also included in the archive, to illustrate more complex usages of MCMAS:

  • The MIOR model, in the "src/mior" directory
  • The Collembola model, in the "src/collembola" directory
  • The Preys-Predators model, in the "src/preypredator" directory

The first two models illustrate the usage of the MCM low-level programming interface, whereas Preys-Predators demonstrates the usage of existing MCMAS plugins in a existing multi-agent system.


Last edited by glaville