Portico New and Noteworthy v1.0

This article describes the new and noteworthy changes present in version 1.0

A number of changes have been made since the last official release. Over 200 separate tickets have been addressed as part of v0.9 and v1.0 development (v0.9 was an internal release, all changes are included in v1.0).

Save/Restore and Ownership Management
Portico now supports both Save/Restore and Ownership Management services for the HLA 1.3 specification. This is provided for the Java and C++ interfaces and works across all platforms. These have been a long time coming, and now, save for some smaller calls here and there, Portico support covers the full 1.3 specification.

For compete details on the support level of various RTIambassador and FederateAmbassador calls, see the Portico API Status page.

Performance Improvements
Performance has been a focus of the Portico v1.0 release, and significant gains have been made. Through optimization at various levels inside the libraries, Portico is now significantly faster than it was in v0.8. A comparison of Portico v0.9, Portico v1.0 and DMSO RTI-NGv6 was generated and can be found here. A new section describing how to tweak the various Portico options for better performance in your particular environment can also be found here.

As part of the report generation, a benchmarking application known as PGauge was developed (for both Java and C++). You can find out more about PGauge here.

Architecture Changes
As part of performance improvements, Portico underwent some significant architectural refactoring. As part of this move, there is no longer a central RTI component. When federates are started on the same network in the same federation, they will find and communicate with one another. If you require direct point-to-point communications, Portico v0.8 will remain available for download.

C++ Interface Improvements
Throughout the development of the 1.0 release, a number of bugs were identified and fixed within the Portico C++ interface. These improvements have resulted in far fewer observed crashes on all platforms. As part of performance testing, the C++ interface was also put through some considerable load testing across Windows, Linux and Mac OS X, helping to identify problems and resulting in increased quality for the interface.

In addition to this, a number of problems with the DLC 1.3 interface have been fixed and full support (to the same level as the RTI-NG compatible interface) is now provided.

Improvements and Bug Fixes
Thanks to help from a number of users on the forums, a number of bugs have been identified and fixed as part of the Portico v1.0 release. These have been across all areas of Portico, but a few were more subtle bugs in Time Management (if anyone finds any more, please post them on the forums!).