OMNeT++ 5.3 Preview 3 available

133 views
Skip to first unread message

Rudolf Hornig

unread,
Feb 9, 2018, 8:56:15 AM2/9/18
to omnetpp-an...@googlegroups.com, OMNeT++ Discussion List

Dear all,

We are happy to announce the third preview of the upcoming OMNeT++ version 5.3.


Highlights:

  • Evaluation of NED expressions now uses integer arithmetic when operands are integers. Conversions that incur precision loss should now be explicit: converting a double to integer requires the int() cast; also, converting an int to double will raise an error if there is actual precision loss, and you can suppress that error by explicit double() cast. There are many smaller-scale changes related to this change -- see include/omnetpp/ChangeLog for details.
  • cHistogram has been replaced with new implementation. (The old one is still available under the name cLegacyHistogram.) The new cHistogram is more general (supports arbitrary bins), more configurable, and produces much higher quality histograms even in the default setup due to newly introduced techniques such as adaptive precollection, bin size rounding and bin edge snapping, auto-extension with new bins, bin merging to keep the number of bins optimal, etc. Histogram operation can be customized via histogram strategy classes (cIHistogramStrategy); several histogram strategies are provided.
  • In recording histograms with @statistic, the number of bins can be specified by adding numBins=nn: @statistic[x](record=histogram;numBins=100). The actual number of bins produced might slightly differ, due to auto-extension and bin merging during result collection.
  • Qtenv: histogram visualization has been improved. For example, the lower/upper outliers are now displayed as two extra bins, and setting up the bins while in the precollection phase can be forced from the GUI.
  • Qtenv: histogram result objects are easier to locate on the GUI, and are now also found by the Find/Inspect dialog. - Tkenv: The Tcl/Tk based runtime interface is now deprecated and turned off by default. It will be removed in future OMNeT++ versions. You can still enable it in configure.user by setting WITH_TKENV = yes, but we strongly suggest using Qtenv instead. - build: 'march=native' and 'mtune=native' compiler options are no longer used by default for a release build, because on certain CPUs this caused rounding differences so simulations ran on a different trajectory depending on the actual CPU used.
Download at: https://omnetpp.org/component/jdownloads/category/31-release-test-versions?Itemid=-1

Enjoy!

The OMNeT++ team


Michael Kirsche

unread,
Feb 9, 2018, 9:44:02 AM2/9/18
to OMNeT++ Users
Clang 5 is available under MinGW in Windows.
I've used it with the latest preview, seems like it works fine at the moment, so the Windows MinGW package could maybe be updated before the final 5.3 version is released.

Rudolf Hornig

unread,
Feb 12, 2018, 4:27:39 AM2/12/18
to OMNeT++ Users
Thanks for the info. I will take a look. Usually I'm following the "Don't fix what ain't broke" rule, but clang 5 probably worth the try.
Rudolf

Michael Kirsche

unread,
Feb 12, 2018, 11:43:15 AM2/12/18
to OMNeT++ Users
True, never fix a running system :)
But it might help to have the same Clang (5) version both in Linux and Windows to avoid certain compiler issues that appeared for example during the INET 3 development.
But you are right, it is not a very important topic for the moment, no necessary must-have features in Clang 5 for OMNeT as far as I know.

Rudolf Hornig

unread,
Feb 28, 2018, 5:06:47 AM2/28/18
to OMNeT++ Users
Ok. It seems I was able to upgrade the toolchain on both the macOS and Windows. We had a lot of issues with osgEarth on both platforms, but for various reasons we had to update it to osgEarth 2.7. Also updated the clang and gcc packages on Windows (to clang 5.0.1 ang gcc 7.1).
Expect a new preview/release candidate this week.

Rudolf

Christoph Sommer

unread,
Mar 1, 2018, 10:13:18 AM3/1/18
to omn...@googlegroups.com
Rudolf Hornig wrote:
>
> It seems I was able to upgrade the toolchain on both the macOS and Windows

This has been posted in a number of threads [1] already, so think of my question more as a +1:

I'm running into trouble that seem to point towards Java 9 being incompatible with the Eclipse version used for the IDE (might be 4.7.0, whereas Java 9 is only supported from 4.7.1a onwards) - running the omnetpp IDE gives me the following entry in WORKSPACE/.metadata/.log:

org.eclipse.e4.core.di.InjectionException: java.lang.NoClassDefFoundError: javax/annotation/PostConstruct

Would it be possible to try out a version of the OMNeT++ IDE that is based on Eclipse Oxygen.1a (that is, 4.7.1a)?

Best,

Christoph



[1] The thread IDs are:

https://groups.google.com/d/msg/omnetpp/nVoPg0ubJ2c/zBY8Jkj5AQAJ

https://groups.google.com/d/msg/omnetpp/rzw3ZZmEAKo/m9G93FISBAAJ

https://groups.google.com/d/msg/omnetpp/Hh7TLvU-OQg/y0G7zap5AQAJ

https://groups.google.com/d/msg/omnetpp/eVEZ_vTGZZI/xOsuAGMADwAJ


--
Jun.-Prof. Dr.-Ing. Christoph Sommer
Cooperative Mobile Systems (CCS Labs)
Heinz Nixdorf Institute, Paderborn University, Germany
http://www.ccs-labs.org/~sommer/

Rudolf Hornig

unread,
Mar 2, 2018, 5:11:09 AM3/2/18
to OMNeT++ Users
I will look into this. Thanks for pointing out. One question though:
It seems that this is macOS only, but both OMNET 5.2.1 and OMNET 5.3 previews are coming with the latest eclipse 4.7.2 version so we cannot update to newer version.

Christoph Sommer

unread,
Mar 8, 2018, 4:25:46 AM3/8/18
to omn...@googlegroups.com
Rudolf Hornig wrote:
>
> It seems that this is macOS only, but both OMNET 5.2.1 and OMNET 5.3 previews are coming with the latest eclipse 4.7.2

Success! That was the missing link - thanks! Seems like I've been mislead by .app/Contents/Eclipse/readme/readme_eclipse.html which 4.7.0 as its version tag.

I have now cross-checked contents of omnetpp.app of OMNeT++ 5.3p3 with a fresh download of eclipse-cpp-oxygen-2-macosx-cocoa-x86_64.dmg and found some differences in the parameters used in the omnnetpp.ini/eclipse.ini file.

Appending the following three lines to the Eclipse .ini file let me start OMNeT++ 5.3p3 (and run, e.g., a new TicToc simulation) on macOS X 10.13 High Sierra using Java 9 installed via homebrew:

--launcher.appendVmargs
-vmargs
--add-modules=ALL-SYSTEM

I am attaching a patch file that can be applied with something like "patch -p1 < java9.patch"

java9.patch

Rudolf Hornig

unread,
Mar 8, 2018, 5:33:06 AM3/8/18
to OMNeT++ Users
Upps. Thanks. It seems that this is indeed needed when java9 is used... I will add this to preview 4.
Reply all
Reply to author
Forward
0 new messages