SMFF: parameter-driven generation of models of distributed real-time systems
-
- Posts: 1
- Joined: Mon Jun 29, 2015
SMFF: parameter-driven generation of models of distributed real-time systems
Description of the tool
SMFF is a framework for parameter-driven generation of models of distributed real-time systems. The generated models incorporate a description of the platform, of the software applications mapped onto the platform and the associated scheduling and timing parameters, thus covering the entire model specification. These models can be used for evaluation and development of e.g. scheduling or allocation algorithms or algorithms for performance verification. This allows to verify these algorithms against a large and diverse set of testcases, which is required whenever to formal bounds on performance can be given e.g. if heuristics are employed. To account for the diverse needs algorithm developers may have, the tool is developed in a modular way allowing to exchange and extend the system model as well as the single testcase generation steps.
Usage scope
Generation of models of real-time systems.
People
- Moritz Neukirchner
- Steffen Stein
Links
- Website: website
- Git repositories: git://smff.git.sourceforge.net/gitroot/smff/"module name"
Release history
2012.02.23 - Added a new module which provides an interface for pyCPA
2012.02.01 - Streamlined the system model by removing unused fields.
SMFF is a framework for parameter-driven generation of models of distributed real-time systems. The generated models incorporate a description of the platform, of the software applications mapped onto the platform and the associated scheduling and timing parameters, thus covering the entire model specification. These models can be used for evaluation and development of e.g. scheduling or allocation algorithms or algorithms for performance verification. This allows to verify these algorithms against a large and diverse set of testcases, which is required whenever to formal bounds on performance can be given e.g. if heuristics are employed. To account for the diverse needs algorithm developers may have, the tool is developed in a modular way allowing to exchange and extend the system model as well as the single testcase generation steps.
Usage scope
Generation of models of real-time systems.
People
- Moritz Neukirchner
- Steffen Stein
Links
- Website: website
- Git repositories: git://smff.git.sourceforge.net/gitroot/smff/"module name"
Release history
2012.02.23 - Added a new module which provides an interface for pyCPA
2012.02.01 - Streamlined the system model by removing unused fields.
Tags:
Re: SMFF: parameter-driven generation of models of distributed real-time systems
Hello,
The link to git repositories seems to be dead.
Best regards,
Christophe Prévot
PhD student
Member of the SPADES project-team
INRIA Grenoble - Rhône-Alpes
The link to git repositories seems to be dead.
Best regards,
Christophe Prévot
PhD student
Member of the SPADES project-team
INRIA Grenoble - Rhône-Alpes
Christophe Prévot
PhD student
Member of the SPADES project-team
https://team.inria.fr/spades/
INRIA Grenoble - Rhône-Alpes
655 Avenue de l'Europe - Montbonnot
38334 St Ismier Cedex - FRANCE
PhD student
Member of the SPADES project-team
https://team.inria.fr/spades/
INRIA Grenoble - Rhône-Alpes
655 Avenue de l'Europe - Montbonnot
38334 St Ismier Cedex - FRANCE
-
- Posts: 4
- Joined: Tue Mar 08, 2016
- Location: IDA - TU Braunschweig
Re: SMFF: parameter-driven generation of models of distributed real-time systems
Hi,
the git-repository is alive, the description of the URL to the individual modules is just a bit ambiguous.
To clone the four SMFF module repositories in your current directory, the following works:
Hope that helps!
Mischa
the git-repository is alive, the description of the URL to the individual modules is just a bit ambiguous.
To clone the four SMFF module repositories in your current directory, the following works:
Code: Select all
git clone git://smff.git.sourceforge.net/gitroot/smff/SMFF-Core
git clone git://smff.git.sourceforge.net/gitroot/smff/SMFF-SystemFactories
git clone git://smff.git.sourceforge.net/gitroot/smff/SMFF-Export
git clone git://smff.git.sourceforge.net/gitroot/smff/SMFF-PyCPAInterface
Mischa
Mischa Möstl, M.Sc.
IDA, Institute of Computer and Network Engineering
Technische Universität Braunschweig
Hans-Sommer-Str. 66
38106 Braunschweig - Germany
IDA, Institute of Computer and Network Engineering
Technische Universität Braunschweig
Hans-Sommer-Str. 66
38106 Braunschweig - Germany
Re: SMFF: parameter-driven generation of models of distributed real-time systems
Hello,
Thanks for the useful information.
I tried to see how this taskset generator works. Unfortunately, I am not familiar with Maven. I had some questions from Mr. Möstl.
1. How to link the modules Core and SystemFactory? I assumed that Core is in the dependency of SystemFactory, so compiling SystemFactory would suffice, but it says module org.apache.log4j can not be found. Do I need to grab log4j manually? I am not sure if linking the log4j module will result in successful compilation.
2. Once we get it compiled, how do we run it (e.g. command line arguments)? and what is the starting point? Can you please put some examples, perhaps on the actual website?
Hope to hear from you soon,
Best regards,
Ali Syed
Thanks for the useful information.
I tried to see how this taskset generator works. Unfortunately, I am not familiar with Maven. I had some questions from Mr. Möstl.
1. How to link the modules Core and SystemFactory? I assumed that Core is in the dependency of SystemFactory, so compiling SystemFactory would suffice, but it says module org.apache.log4j can not be found. Do I need to grab log4j manually? I am not sure if linking the log4j module will result in successful compilation.
2. Once we get it compiled, how do we run it (e.g. command line arguments)? and what is the starting point? Can you please put some examples, perhaps on the actual website?
Hope to hear from you soon,
Best regards,
Ali Syed
-
- Posts: 4
- Joined: Tue Mar 08, 2016
- Location: IDA - TU Braunschweig
Re: SMFF: parameter-driven generation of models of distributed real-time systems
Hi Ali and other prospective SMFF users,
let me stress that I am neither a SMFF developer nor the maintainer. So all I can provide you is second hand knowledge. Let me also say that I am not really in depth familiar with the maven build flow used for SMFF; I am not a Java expert either!
But I will try to explain to the best of my knowledge. So in case some Java/Maven experts follow this thread please correct me.
So let me try to answer your questions:
It is correct that SystemFactory specifies SMFF-Core as a dependency. See the pom.xml of the SystemFactory git-SystemFactory for that.
1) remove the scope line in the SMFF-Core pom.xml for log4j:
2) Add log4j as a build/compile dependency in the pom.xml of SMFF-SystemFactories. Although this seems unreasonable to me since you have SMFF-Core as a dependency anyway. The trick with specifying a dependency in maven, that maven fetches it for you.
After applying one of the two solutions simply navigate to the SMFF-SystemFactories directory and do a:
This builds SMFF-SystemFactories and SMFF-Core and installs them in the local maven repository.
If you work with Linux the default maven repository path seems to be $HOME/.m2/repositories/
However, with your second question I can not help you since I am not an SMFF user either. Maybe we have someone else here who can help you with that.
The only wisdom I have for you is that maven installs the SMFF jar files to your local maven repository. If you want to export generated models you should have a look at the SMFF-Export module (or the PyCPA Interface if you want to use the generated Systems there).
Kind regards,
Mischa
let me stress that I am neither a SMFF developer nor the maintainer. So all I can provide you is second hand knowledge. Let me also say that I am not really in depth familiar with the maven build flow used for SMFF; I am not a Java expert either!
But I will try to explain to the best of my knowledge. So in case some Java/Maven experts follow this thread please correct me.
So let me try to answer your questions:
This is already done by the pom.xml file in the SystemFactory repository. Side note: The pom file is basically the "makefile" of a maven project where you can also specify dependencies of your project such that maven can automatically fetch them from online repositories.1. How to link the modules Core and SystemFactory?
I assumed that Core is in the dependency of SystemFactory, so compiling SystemFactory would suffice, ...
It is correct that SystemFactory specifies SMFF-Core as a dependency. See the pom.xml of the SystemFactory git-SystemFactory for that.
Basically the problem here is that the dependency on log4j is specified as a runtime dependency in the pom.xml of SMFF-Core. Unfortunately SytemFactories need it already at compile time. So for me two solutions to build the project work:...but it says module org.apache.log4j can not be found. Do I need to grab log4j manually? I am not sure if linking the log4j module will result in successful compilation.
1) remove the scope line in the SMFF-Core pom.xml for log4j:
Code: Select all
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.12</version>
<scope>runtime</scope> <-- REMOVE THIS LINE
</dependency>
After applying one of the two solutions simply navigate to the SMFF-SystemFactories directory and do a:
Code: Select all
# mvn install
This builds SMFF-SystemFactories and SMFF-Core and installs them in the local maven repository.
If you work with Linux the default maven repository path seems to be $HOME/.m2/repositories/
However, with your second question I can not help you since I am not an SMFF user either. Maybe we have someone else here who can help you with that.
The only wisdom I have for you is that maven installs the SMFF jar files to your local maven repository. If you want to export generated models you should have a look at the SMFF-Export module (or the PyCPA Interface if you want to use the generated Systems there).
Kind regards,
Mischa
Mischa Möstl, M.Sc.
IDA, Institute of Computer and Network Engineering
Technische Universität Braunschweig
Hans-Sommer-Str. 66
38106 Braunschweig - Germany
IDA, Institute of Computer and Network Engineering
Technische Universität Braunschweig
Hans-Sommer-Str. 66
38106 Braunschweig - Germany
-
- Posts: 1
- Joined: Wed Jul 13, 2016
Re: SMFF: parameter-driven generation of models of distributed real-time systems
Hi, I think SMFF works on my computer :
-try to add the command attribute in eclipse (Runs->Run Configurations->maven build(on the right panel)), and in the Main panel :
add Parameter = log4j.configuration
Value = file:/yourPathTo/SMFF-Core/SMFF-Core/config/src/log4j.xml
see http://stackoverflow.com/questions/2594 ... j-xml-file
Do not forget to add a "Goals", mine is "compile" and it works well.
You can also try to run this in a terminal as :
mvn compile -Dlog4j.configuration=file:/yourPathTo/SMFF-Core/SMFF-Core/config/src/log4j.xml
Best Regards
Pierre
-try to add the command attribute in eclipse (Runs->Run Configurations->maven build(on the right panel)), and in the Main panel :
add Parameter = log4j.configuration
Value = file:/yourPathTo/SMFF-Core/SMFF-Core/config/src/log4j.xml
see http://stackoverflow.com/questions/2594 ... j-xml-file
Do not forget to add a "Goals", mine is "compile" and it works well.
You can also try to run this in a terminal as :
mvn compile -Dlog4j.configuration=file:/yourPathTo/SMFF-Core/SMFF-Core/config/src/log4j.xml
Best Regards
Pierre
Re: SMFF: parameter-driven generation of models of distributed real-time systems
Hello,
Thank you Mischa and Pierre for providing help in compiling.
@ Mischa: As you work in the Technische Universität Braunschweig, I though you were the user too. I am sorry, I didn't know that. As the contact links on the SMFF website are broken and both the authors left the university, do you know anybody working in your group whom we can talk to regarding the 2nd question? For me it seams illogical to try compiling and installing, if I don't know how to use (or at least run) the tool.
Best regards,
Ali
Thank you Mischa and Pierre for providing help in compiling.
@ Mischa: As you work in the Technische Universität Braunschweig, I though you were the user too. I am sorry, I didn't know that. As the contact links on the SMFF website are broken and both the authors left the university, do you know anybody working in your group whom we can talk to regarding the 2nd question? For me it seams illogical to try compiling and installing, if I don't know how to use (or at least run) the tool.
Best regards,
Ali
-
- Posts: 4
- Joined: Tue Mar 08, 2016
- Location: IDA - TU Braunschweig
Re: SMFF: parameter-driven generation of models of distributed real-time systems
Hi Ali,
what are your expectations with SMFF?
If you expect a graphical user interface or something of that kind I am sorry, because there is none.
However, all of the modules come with a example file (that you can compile and run). As everything is open-source you can go ahead and adapt these to your needs and create your own systems.
You can find the examples here:
$SMFF_REPOS/SMFF-Export/SMFF-Export/src/org/tubs/epoc/SMFF/ImportExport/Pdf/Example/Example.java
$SMFF_REPOS/SMFF-PyCPAInterface/SMFF-PyCPAInterface/src/org/tubs/epoc/SMFF/PyCPAInterface/example/AnalysisExample.java
$SMFF_REPOS/SMFF-SystemFactories/SMFF-SystemFactories/src/org/tubs/epoc/SMFF/SystemFactories/Example/Example.java
The slides of the presentation of SMFF can be found here:
http://retis.sssup.it/~tommaso/waters20 ... rchner.pdf
and the Paper describing SMFF and some parameters is here:
http://retis.sssup.it/~tommaso/waters20 ... edings.pdf
Best,
Mischa
what are your expectations with SMFF?
If you expect a graphical user interface or something of that kind I am sorry, because there is none.
However, all of the modules come with a example file (that you can compile and run). As everything is open-source you can go ahead and adapt these to your needs and create your own systems.
You can find the examples here:
$SMFF_REPOS/SMFF-Export/SMFF-Export/src/org/tubs/epoc/SMFF/ImportExport/Pdf/Example/Example.java
$SMFF_REPOS/SMFF-PyCPAInterface/SMFF-PyCPAInterface/src/org/tubs/epoc/SMFF/PyCPAInterface/example/AnalysisExample.java
$SMFF_REPOS/SMFF-SystemFactories/SMFF-SystemFactories/src/org/tubs/epoc/SMFF/SystemFactories/Example/Example.java
The slides of the presentation of SMFF can be found here:
http://retis.sssup.it/~tommaso/waters20 ... rchner.pdf
and the Paper describing SMFF and some parameters is here:
http://retis.sssup.it/~tommaso/waters20 ... edings.pdf
Best,
Mischa
Mischa Möstl, M.Sc.
IDA, Institute of Computer and Network Engineering
Technische Universität Braunschweig
Hans-Sommer-Str. 66
38106 Braunschweig - Germany
IDA, Institute of Computer and Network Engineering
Technische Universität Braunschweig
Hans-Sommer-Str. 66
38106 Braunschweig - Germany