Home Page History
Homepage
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.