This repository provides a links to the Virtual Machine in the PHANTOM Integrated Reference System
You can get the Lite version of the Virtual Machine with the PHANTOM Integrated Reference System here
This version of PHANTOM Integrated Reference System includes the folowing PHANTOM components:
- Parallelisation Toolset (PT) - lite version
- Generic Multi-Objective Mapper (MOM) - lite version
- Offline Multi-Objective Mapper (offline-MOM)
- Deployment Manager (DM)
- Repository + Security Framework
- Application Manager
- Execution Manager
- Resource Manager
- Monitoring Server (and Client)
- Model-Based Testing
- User Scripts + PHANTOM-IP-Core-Marketplace integration
This Virtual Machine includes a lite version of PT and MOM. These versions have the following limitations:
The simplified version of the Parallelization Toolset supports all the basic functionalities that are expected, namely:
- The support of the PHANTOM Programming Model.
- The interaction with all PHANTOM components such as the Repository, the Appli-cation and Execution Managers, the MOM, and the Deployment Manager.
- The support of library selection according to the selected Deployment Plan.
The features that are only supported by the full version are the following:
- Automatic generation of parallelized components
The simplified version of the Multi-Objective Mapper supports all the basic functionalities that are expected, namely:
- The generation of deployment plans of parallel applications on the CPU-based hardware platforms.
- The support of the PHANTOM Programming Model.
- The interaction with all PHANTOM components such as the Repository, the PT, and the Monitoring framework.
- The support of requirements such as execution time, energy consumption, memory utilization and reliability.
The features that are only supported by the full version are the following:
- Mapping of components in GPUs and FPGAs.
- Multiple MOM iterations to provide improved performance deployment plans.
- Multiple MOM mutations to support extended design space exploration from the generated deployment plans.
Get in touch with us you want to get access to the full version of these tools: info@wings-ict-solutions.eu
Besides to these tools, it is also included in this Virtual Machine an demo application - Tutorial
/home/demo/examples/tutorial
Which should now have the following structure:
turorial/
Makefile
cla.in
src/
C0.cpp
C1.cpp
C2.cpp
example_lib.h
phantom_user_defined_structs.h
description/
cpn.xml
hw.xml
Here we can spot a bunch of additional files which can be found at the corresponding location of the VM:
- Makefile – this is the Makefile of the application.
- cla.in – in this file the user can include input arguments for the application components as described in section 3.7. This is empty for our example since the components don’t expect any input arguments.
- example_lib.h – an included external library used by the components.
- phantom_user_defined_structs.h – in this file the user needs to include any library that defines any structs that are used for shared objects. This is empty for our example since we don’t use any user defined structures.
Run the start script – This step consists in the execution of script that will: upload all the needed files to the specified repositories; register the application on the Application manager; and configure and launch each tool. To start this script run:
cd ~/phantom-tools/User-tools/management-scripts
bash start-servers.sh
To start the servers, and run:
cd ..
./start-PHANTOM.py -cp
To start the scripts to upload the demo application and start PHANTOM components.
In this virtual machine is not included the PHANTOM components related with FPGAs:
These tools have a dependecy of the Xilinx Vivado Design Suite. This suite requires a license. Therefore, this suite must be deployed in a machine and these tools the installed and configured to the Vivado Design Suite installation.