decoration
Philippe Dumont's website

Tools for Array-OL

The Array-OL langage is used in several applications developped in the West Team and in particular in Gaspard. You will find here some tools designed to model, to simulate and to optimize Array-OL applications. But there is no explanation of what Array-OL is. You can find more details on Array-OL in these publications: Another multidimensional synchronous dataflow: Simulating Array-OL in ptolemy II and Projection of the Array-OL specification language onto the Kahn process network computation model.

1.Array-OL Example

Description

Array-OL example enables to easily model an Array-OL tiler. It is possible to specify the different matrices of a tiler and to see the results in an OpenGL window.
Array-OL example has been released by three students Jérôme Coppens, Christophe Mouflin and Sylvain Buisine.

Installation

To run Array-OL example, you need Sun's Java JDK release 1.4.2 (or later) and jogl release 1.1 (exactly) and a computer configured to display OpenGL applications.

Installation of Jogl
  • Windows Installation Instructions
    1. Download the JOGL Windows binaries of June 2005 (jogl-natives-win32.jar).
    2. Download the jogl classes file (jogl.jar)
    3. Uncompress the file: jar xvf jogl-natives-linux.jar.
    4. Locate the Java SDK or JRE installation on your machine. These can typically be found at "C:\Java" or "C:\Program Files\Java\". NOTE: You may have several SDKs/JREs installed on your machine so make sure that you locate the one that your compiler/IDE is using. To be safe you can always install it for each version on your system.
    5. Copy "jogl.dll and jogl_cg.dll" into the "\bin" directory for the Java SDK or JRE installed on your machine (i.e. C:\[jre_location]\bin\jogl.dll or C:\[jdk_location]\jre\bin\jogl.dll).
    6. Copy "jogl.jar" into the "\lib\ext" directory for the Java SDK or JRE installed on your machine (i.e. C:\[jre_location]\lib\ext\jogl.jar).
  • Linux Installation Instructions
    1. Download the JOGL Linux binaries of June 2005 (jogl-natives-linux.jar)
    2. Download the jogl classes file (jogl.jar)
    3. Uncompress the file: jar xvf jogl-natives-linux.jar.
    4. Locate the Java SDK or JRE installation on your machine. NOTE: You may have several SDKs/JREs installed on your machine so make sure that you locate the one that your compiler/IDE is using. To be safe you can always install it for each version on your system.
    5. Copy "libjogl.so and libjogl_cg.so" into the "/lib/i386/" directory for the Java SDK or JRE installed on your machine (i.e. [jre_location]/lib/i386/libjogl.so or [jdk_location]/jre/lib/i386/libjogl.so).
    6. Copy "jogl.jar" into the "/lib/ext/" directory for the Java SDK or JRE installed on your machine (i.e. [jre_location]/lib/ext/jogl.jar).
Installation of Array-OL Example
  1. Download Array-OL Example
  2. To run Array-OL example: java -jar arrayolcomp2.jar

2.Array-OL for Ptolemy II

Description

Array-OL for Ptolemy II is an extention of ptolemy II, it allows to model and to simulate Array-OL applications. More details about Array-OL in Ptolemy can be found in this publication: Another multidimensional synchronous dataflow: Simulating Array-OL in ptolemy II.

Installation instructions

  1. Download the source of Array-OL for Ptolemy II: zip
  2. Download the source of Ptolemy II 4.0.1: here
  3. Uncompress the source of Ptolemy in a directory
  4. Uncompress the source of Array-OL for Ptolemy II in the same directory
  5. Replace the Ptolemy II files by the Array-OL for Ptolemy II ones: cp -r PTII/* ptII4.0.1/
  6. Compile Ptolemy II (for more details click here)

Documentation

To be able to use Array-OL for Ptolemy II, you need to have a good understanding of both Array-OL and Ptolemy. Have a look to these pictures to undertand more easily the following explanations:

  • A global model is an acyclic oriented graph composed of hierarchical tasks. Each of them handle a local model.
  • A global model needs a SDF director.
  • A local model needs input and output tilers between the Elementary Task (TE) and the input/output tilers.
  • To be able to use the already existing Ptolemy II actors, you have to use two converters: "MMDT To Sequence" and "Sequence To MMDT".
  • A local model needs an Array-OL director.
  • It is not possible to use infinite array.

3.OdtTransfo

Description

"OdtTransfos" which stands for "Operateur de Description de Tableaux Transformations" is a set of java classes which is able to optimize an Array-OL application. It is only a research tool based on Julien Soula and Philippe Dumont works.
It is very important to have a good understanding of Array-OL transformations to be able to use "OdtTransfos". You can download the source here, they are distributed under the terms of CeCILL license. To use the "ODTTransfo", it is strongly recommended that you start by using the example in the "test" repository. To compile and to run the different tests, you can use ant or more simply you can use Eclipse.