You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
SST v14.1.0 is now available and can be downloaded here
The SST 14.1.0 release contains several major SST-Core enhancements and features as well as performance and functionality improvements in the SST-Elements libraries. A selection of the improvement highlights are:
General
This release has several major improvements to checkpoint/restart support. See the guide here.
Statistics can be checkpointed
Checkpoint/restart is supported for parallel execution
Checkpoint can be triggered on real (wall) time intervals in addition to simulation time
14.1 also introduces new experimental SST-Core features. These are prototypes that will be improved in future releases. See SST-Core release notes for details.
Interactive debugging. The simulation can be dropped into an interactive mode where the state of components/subcomponents/etc. can be observed and changed. Only serializable (checkpointable) components can be introspected in this way. See sst --help for more information.
User-defined signal actions. SST's default signal handling has been extended to allow element libraries to define their own signal actions for SIGUSR1, SIGUSR2, and SIGALRM. A number of optional handlers are also provided with SST-Core. See sst --help for more information.
The ariel, mercury, mask-mpi, and simpleElementExample element libraries have new capabilities; bug fixes and minor improvements were made to other libraries.
Deprecation and Removal Notices
The test framework (sst-test-core and sst-test-elements) has some newly deprecated functions. The framework is moving towards using Python functions in favor of custom functions where Python has equivalent capability. The following are deprecated.
testing_is_PIN2_used(). Pin2 is no longer supported in SST.
host_os_get_system_node_name(). Use platform.node() instead.
host_os_get_kernel_type(). Use platform.system() instead.
host_os_get_kernel_release(). Use platform.release() instead.
host_os_get_kernel_arch(). Use platform.machine() instead.
host_os_is_osx(), host_os_is_linux(), host_os_is_centos(), host_os_is_rhel(), host_os_is_toss(), host_os_is_ubuntu(), host_os_is_rocky(). Use host_os_get_distribution_type() or host_os_get_distribution_version() instead.
host_os_get_num_cores_on_system(). Use multiprocessing.cpu_count() instead.
sst_core_config_include_file_get_value_int, sst_core_config_include_file_get_value_str(). Use sst_core_config_include_file_get_value() instead.
sst_elements_config_include_file_get_value_int, sst_elements_config_include_file_get_value_str(). Use sst_elements_config_include_file_get_value() instead.
sstsimulator_conf_get_value_str(), sstsimulator_conf_get_value_int(), sstsimulator_conf_get_value_float(), sstsimulator_conf_get_value_bool(). Use sstsimulator_conf_get_value() instead.
initializeClass() is deprecated in favor of UnitTest's setUpClass().
These notices were provided in SST 14.0:
Removed previously deprecated functions: Link::sendInitData(), Link::recvInitData(), SimpleNetwork::sendInitData(), SimpleNetwork::recvInitData() and BaseComponent::getSimulation() have been removed. The simulation.h header file is also removed.
The SST_ELI_REGISTER_SUBCOMPONENT_DERIVED and SST_ELI_REGISTER_MODULE_DERIVED macros are removed
See the new deprecation history page for suggested alternatives
The SimpleMem interface is removed. Use the StandardMem interface instead.
The Event::Handler and Clock::Handler handler types are deprecated in favor of Event::Handler2 and Clock::Handler2. The new types support checkpoint/restart. See checkpoint guide for details. Eventually the Handler names will be reintroduced to match the new Handler2 types.
Known Issues
The OpenMPI 4.1.1 available through Rocky Linux and other OS distributions masks SST's error return codes which causes some SST tests to fail. A workaround is to use OpenMPI 4.1.6.
SST-Core
Added capability to generate checkpoints of parallel simulation. This changes the output format of checkpoints for all simulations to a multi-file format as opposed to the initial single file checkpoint in SST 14.0.
Added checkpoint support to Statistic and StatisticOutput types
Added an experimental interactive mode where the simulation can be dropped into an interactive console. Interactive mode can be trigger by setting a time on the command line, or through API calls in BaseComponent and RealTimeAction. The console used for the interactions can be specified on the command line and are user creatable by inheriting from the InteractiveConsole class. Interactive mode has only been tested in serial runs and may not yet function as anticipated in parallel. The interactive API will continue to involve.
Added a debugging capability prototype using interactive mode. This works in serial simulations only and has a rudimentary console debugger. In interactive mode, Component state can be queried and changed and the simulation can be stepped forward in simulation time units. Expect improvements in future releases.
Added default verification policy to SharedSet verification policy
Fixed issues with mutex_read and mutex_find in all SharedRegion classes
Added RealTimeAction class for element-library defined signal actions and made signal actions configurable on the command line.
Added real-time heartbeat option in addition to existing simulation-time heartbeat.
Added real-time checkpoint option in addition to existing simulation-time checkpoint.
Test framework improvements and clean up
Type annotations added
Duplicate functions deprecated in favor of Python or more generic ones
Added ability to provide a timeout other than default in os_cmd() calls
Fixed bug in sstsimulator_conf_get_value_bool and sstsimulator_conf_get_value when parsing boolean values
Updated parsing functions to accomodate OpenMPI 5.0.3 output format.
Fixed bug in ncurses detection
Made function testing_check_is_scenario_filtering_enabled internal as it should not be used by test suites
Fixed bug when running with --run-mode=init
Fixed issue where params where serialized but the keyset was not saved for checkpoint
Modified TraceFunction to respect the environment variable SST_TRACEFUNCTION_ACTIVATE for controlling whether output is enabled and sst_TRACEFUNCTION_INDENT_MARKER to control output indent format.
Added quit command to sst-info
Fixed issue with correctly parsing options passed to profile points on the command line
SST-Elements
Ariel
Added support for running MPI applications on Ariel CPUs
Added ariel_disable in the Ariel API to allow for tracing to be turned off
Updated the internal Ariel API to include all functionality from the API found in sst-tools
Ember
Fixed support for OTF2 including bcast, scatter, allgather, and alltoall collective operations. Also added addCompute parameter to add ember compute time between MPI calls.
Kingsley
Fix to correctly delete credit events
Mask-MPI
Full collective support
MemHierarchy
Fix to correctly delete dropped prefetch events
Fix to correctly delete init events in the MemNIC
Fixed coherence protocol bug in noninclusive shared cache
Added ability to skip a potentially expensive memory address overlap check in MemNIC during init
Mercury
Proper rank mapping via Merlin
Fix to event serialization
Merlin
Added ability to put a user subcomponent on the merlin bridge's linkcontrol
Fix to correctly delete init events
SimpleElementExample
Made example elements checkpointable and added checkpoint example
SST v14.1.0 is now available and can be downloaded here
The SST 14.1.0 release contains several major SST-Core enhancements and features as well as performance and functionality improvements in the SST-Elements libraries. A selection of the improvement highlights are:
General
sst --help
for more information.sst --help
for more information.Deprecation and Removal Notices
sst-test-core
andsst-test-elements
) has some newly deprecated functions. The framework is moving towards using Python functions in favor of custom functions where Python has equivalent capability. The following are deprecated.testing_is_PIN2_used()
. Pin2 is no longer supported in SST.host_os_get_system_node_name()
. Useplatform.node()
instead.host_os_get_kernel_type()
. Useplatform.system()
instead.host_os_get_kernel_release()
. Useplatform.release()
instead.host_os_get_kernel_arch()
. Useplatform.machine()
instead.host_os_is_osx()
,host_os_is_linux()
,host_os_is_centos()
,host_os_is_rhel()
,host_os_is_toss()
,host_os_is_ubuntu()
,host_os_is_rocky()
. Usehost_os_get_distribution_type()
orhost_os_get_distribution_version()
instead.host_os_get_num_cores_on_system()
. Usemultiprocessing.cpu_count()
instead.sst_core_config_include_file_get_value_int
,sst_core_config_include_file_get_value_str()
. Usesst_core_config_include_file_get_value()
instead.sst_elements_config_include_file_get_value_int
,sst_elements_config_include_file_get_value_str()
. Usesst_elements_config_include_file_get_value()
instead.sstsimulator_conf_get_value_str()
,sstsimulator_conf_get_value_int()
,sstsimulator_conf_get_value_float()
,sstsimulator_conf_get_value_bool()
. Usesstsimulator_conf_get_value()
instead.initializeClass()
is deprecated in favor of UnitTest'ssetUpClass()
.These notices were provided in SST 14.0:
Link::sendInitData()
,Link::recvInitData()
,SimpleNetwork::sendInitData()
,SimpleNetwork::recvInitData()
andBaseComponent::getSimulation()
have been removed. Thesimulation.h
header file is also removed.SST_ELI_REGISTER_SUBCOMPONENT_DERIVED
andSST_ELI_REGISTER_MODULE_DERIVED
macros are removedSimpleMem
interface is removed. Use theStandardMem
interface instead.Event::Handler
andClock::Handler
handler types are deprecated in favor ofEvent::Handler2
andClock::Handler2
. The new types support checkpoint/restart. See checkpoint guide for details. Eventually the Handler names will be reintroduced to match the newHandler2
types.Known Issues
SST-Core
mutex_read
andmutex_find
in all SharedRegion classesos_cmd()
callssstsimulator_conf_get_value_bool
andsstsimulator_conf_get_value
when parsing boolean valuestesting_check_is_scenario_filtering_enabled
internal as it should not be used by test suites--run-mode=init
SST_TRACEFUNCTION_ACTIVATE
for controlling whether output is enabled andsst_TRACEFUNCTION_INDENT_MARKER
to control output indent format.quit
command tosst-info
SST-Elements
addCompute
parameter to add ember compute time between MPI calls.SST-Macro
Current release information can be found here
We look forward to hearing your successes with the latest release!
SST Research and Product Teams
Sandia National Laboratories, USA
The text was updated successfully, but these errors were encountered: