... | @@ -2,7 +2,7 @@ A project has to satisfy some requirements in order for the Energy toolbox to be |
... | @@ -2,7 +2,7 @@ A project has to satisfy some requirements in order for the Energy toolbox to be |
|
|
|
|
|
**All Energy Toolbox sub-components**
|
|
**All Energy Toolbox sub-components**
|
|
|
|
|
|
In the project repo, **a config.txt file must be added in the root directory** with the following format (all the paths starting from the root directory of the repo):
|
|
In the project repo, **a config.txt file must be added in the root directory (R1)** with the following format (all the paths starting from the root directory of the repo):
|
|
|
|
|
|
```
|
|
```
|
|
[app1]
|
|
[app1]
|
... | @@ -21,28 +21,31 @@ In the project repo, **a config.txt file must be added in the root directory** w |
... | @@ -21,28 +21,31 @@ In the project repo, **a config.txt file must be added in the root directory** w |
|
build = app2_compiling_building_commands
|
|
build = app2_compiling_building_commands
|
|
language = Java
|
|
language = Java
|
|
```
|
|
```
|
|
* _dir_ (Needed for all Analysis types) is the name root directory of the project
|
|
* _dir_ (**R1a**)(Needed for all Analysis types) is the name root directory of the project
|
|
* _exec_ (Needed for Full,Hotspots,Acceleration Analysis) corresponds to the command that executes the application. It is worth mentioning that for performing dynamic analysis, the Energy Toolbox needs to execute the application. Furthermore, when the user wants to analyse a project dynamically in order to have more accurate results, care must be taken that the application is terminated and not run indefinitely.
|
|
* _exec_ (**R1b**)(Needed for Full,Hotspots,Acceleration Analysis) corresponds to the command that executes the application. It is worth mentioning that for performing dynamic analysis, the Energy Toolbox needs to execute the application. Furthermore, when the user wants to analyse a project dynamically in order to have more accurate results, care must be taken that the application is terminated and not run indefinitely.
|
|
* _source_ (Needed for all Analysis types) is the path to the source files that the user wants to analyse separated by commas.
|
|
* _source_ (**R1c**)(Needed for all Analysis types) is the path to the source files that the user wants to analyse separated by commas.
|
|
* _include_dirs_ (Needed for Static Energy Estimation Analysis) contains the paths to directories that have to be included in order to compile the source files separately (needed for static analysis)
|
|
* _include_dirs_ (**R1d**)(Needed for Static Energy Estimation Analysis) contains the paths to directories that have to be included in order to compile the source files separately (needed for static analysis)
|
|
* _build_ (Needed for Full,Hotspots,Acceleration Analysis) includes the compiling and building commands. For C/C++ the building commands (either gcc commands or make) have to use gcc compiler with the **-g** debugging flag. All the paths to directories needed have also to be included using the **-I** flag.
|
|
* _build_ (**R1e**)(Needed for Full,Hotspots,Acceleration Analysis) includes the compiling and building commands. For C/C++ the building commands (either gcc commands or make) have to use gcc compiler with the **-g** debugging flag. All the paths to directories needed have also to be included using the **-I** flag.
|
|
* Finally, _language_ (Needed for all Analysis types) is “Java” or “C/C++” for specifying the project’s programming language.
|
|
* Finally, _language_ (**R1f**)(Needed for all Analysis types) is “Java” or “C/C++” for specifying the project’s programming language.
|
|
|
|
|
|
**Static Energy Consumption Estimation**
|
|
**Static Energy Consumption Estimation**
|
|
|
|
|
|
|
|
R1(a,c,d and f) must be satisfied.
|
|
The **source files** needed to be analysed must be specified in the config.txt file. Also **all the include libraries** needed for each source file to be compiled as standalone file needed to be added in the config.txt file in the way mentioned above.
|
|
The **source files** needed to be analysed must be specified in the config.txt file. Also **all the include libraries** needed for each source file to be compiled as standalone file needed to be added in the config.txt file in the way mentioned above.
|
|
|
|
|
|
**Energy Indicators monitoring and Hotspots Identification**
|
|
**Energy Indicators monitoring and Hotspots Identification**
|
|
|
|
|
|
The application **must be able to be built and executed on a linux machine automatically**, while the commands for its proper execution must be included in the config.txt file as mentioned above. Commands that build the entire project should also be included while **-g** debugging flags have to be used in the *gcc* compilation in all *makefiles*.
|
|
R1(a,b,c,e and f) must be satisfied.
|
|
|
|
The application **must be able to be built and executed on a linux machine automatically (R2)**, while the commands for its proper execution (R1b) must be included in the config.txt (R1) file as mentioned above. Commands that build the entire project should also be included (R1e) while **-g** debugging flags have to be used in the *gcc* compilation in all *makefiles*.
|
|
|
|
|
|
**Acceleration Optimization Suggestion**
|
|
**Acceleration Optimization Suggestion**
|
|
|
|
|
|
The same requirements as Hotspots analysis adding that the project has to be a single-threaded application.
|
|
The same requirements as Hotspots analysis adding that the project has to be **a single-threaded application (R3)**. For the rest of the analysis types the application can be of course multi-threaded.
|
|
|
|
|
|
**History Analysis**
|
|
**History Analysis**
|
|
|
|
|
|
Previous commits of the project should have been already analysed using Static Energy Consumption Estimation tool in order for the service to retrieve them from the database. This is performed by placing {“commit”:commit-id} in the “Extra Info by Toolbox” text field for the Energy Toolbox. (The last commit of the repo should contain the config.txt file).
|
|
**Previous commits of the project should have been already analysed (R3)** using Static Energy Consumption Estimation tool in order for the service to retrieve them from the database. This is performed by placing {“commit”:commit-id} in the “Extra Info by Toolbox” text field for the Energy Toolbox. (The last commit of the repo should contain the config.txt file).
|
|
|
|
|
|
**Android**
|
|
**Android**
|
|
|
|
|
|
|
|
**Gradle version 4 or newer (R4)** |
|
|
|
\ No newline at end of file |