SMFF: parameter-driven generation of models of distributed real-time systems

Benchmarks and case studies which contain task information but possibly no code
Post Reply
MNeukirchner
Posts: 1
Joined: Mon Jun 29, 2015

SMFF: parameter-driven generation of models of distributed real-time systems

Post by MNeukirchner » Wed Jun 24, 2015

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.

Tags:

cprevot
Posts: 1
Joined: Tue Oct 20, 2015
Location: INRIA-Grenoble SPADES team
Contact:

Re: SMFF: parameter-driven generation of models of distributed real-time systems

Post by cprevot » Thu Mar 17, 2016

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
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

Mischa Moestl
Posts: 4
Joined: Tue Mar 08, 2016
Location: IDA - TU Braunschweig

Re: SMFF: parameter-driven generation of models of distributed real-time systems

Post by Mischa Moestl » Thu Jul 07, 2016

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:

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 
Hope that helps!
Mischa
Mischa Möstl, M.Sc.

IDA, Institute of Computer and Network Engineering
Technische Universität Braunschweig
Hans-Sommer-Str. 66
38106 Braunschweig - Germany

syed
Posts: 5
Joined: Tue Jul 14, 2015

Re: SMFF: parameter-driven generation of models of distributed real-time systems

Post by syed » Tue Jul 12, 2016

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

Mischa Moestl
Posts: 4
Joined: Tue Mar 08, 2016
Location: IDA - TU Braunschweig

Re: SMFF: parameter-driven generation of models of distributed real-time systems

Post by Mischa Moestl » Tue Jul 12, 2016

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:
1. How to link the modules Core and SystemFactory?
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.
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.
...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.
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:

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>
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:

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

Pierre GONDOIS
Posts: 1
Joined: Wed Jul 13, 2016

Re: SMFF: parameter-driven generation of models of distributed real-time systems

Post by Pierre GONDOIS » Wed Jul 13, 2016

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

syed
Posts: 5
Joined: Tue Jul 14, 2015

Re: SMFF: parameter-driven generation of models of distributed real-time systems

Post by syed » Thu Jul 14, 2016

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

Mischa Moestl
Posts: 4
Joined: Tue Mar 08, 2016
Location: IDA - TU Braunschweig

Re: SMFF: parameter-driven generation of models of distributed real-time systems

Post by Mischa Moestl » Tue Jul 19, 2016

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
Mischa Möstl, M.Sc.

IDA, Institute of Computer and Network Engineering
Technische Universität Braunschweig
Hans-Sommer-Str. 66
38106 Braunschweig - Germany

Post Reply