v0.6.1
Released on 15 February, 2024
Description
- Duplicate for DBModel/Script prevented
- Update license to include 2024
- Telemetry monitor is now active by default
- Add support for Mac OSX on Apple Silicon
- Remove Torch warnings during testing
- Validate Slurm timing format
- Expose Python Typehints
- Fix test_logs to prevent generation of directory
- Fix Python Typehint for colocated database settings
- Python 3.11 Support
- Quality of life smart validate improvements
- Remove Cobalt support
- Enrich logging through context variables
- Upgrade Machine Learning dependencies
- Override sphinx-tabs background color
- Add concurrency group to test workflow
- Fix index when installing torch through smart build
Detailed Notes
- Modify the git clone for both Redis and RedisAI to set the line endings to unix-style line endings when using MacOS on ARM. (SmartSim-PR482)
- Separate install instructions are now provided for Mac OSX on x64 vs ARM64 (SmartSim-PR479)
- Prevent duplicate ML model and script names being added to an Ensemble member if the names exists. (SmartSim-PR475)
- Updates Copyright (c) 2021-2023 to Copyright (c) 2021-2024 in all of the necessary files. (SmartSim-PR485)
- Bug fix which prevents the expected behavior when the SMARTSIM_LOG_LEVEL environment variable was set to developer. (SmartSim-PR473)
- Sets the default value of the "enable telemetry" flag to on. Bumps the output manifest.json version number to match that of smartdashboard and pins a watchdog version to avoid build errors. (SmartSim-PR477)
- Refactor logic of Manifest.has_db_objects to remove excess branching and improve readability/maintainability. (SmartSim-PR476)
- SmartSim can now be built and used on platforms using Apple Silicon (ARM64). Currently, only the PyTorch backend is supported. Note that libtorch will be downloaded from a CrayLabs github repo. (SmartSim-PR465)
- Tests that were saving Torch models were emitting warnings. These warnings were addressed by updating the model save test function. (SmartSim-PR472)
- Validate the timing format when requesting a slurm allocation. (SmartSim-PR471)
- Add and ship py.typed marker to expose inline type hints. Fix type errors related to SmartRedis. (SmartSim-PR468)
- Fix the test_logs.py::test_context_leak test that was erroneously creating a directory named some value in SmartSim's root directory. (SmartSim-PR467)
- Add Python type hinting to colocated settings. (SmartSim-PR462)
- Add github actions for running black and isort checks. (SmartSim-PR464)
- Relax the required version of typing_extensions. (SmartSim-PR459)
- Addition of Python 3.11 to SmartSim. (SmartSim-PR461)
- Quality of life smart validate improvements such as setting CUDA_VISIBLE_DEVICES environment variable within smart validate prior to importing any ML deps to prevent false negatives on multi-GPU systems. Additionally, move SmartRedis logs from standard out to dedicated log file in the validation temporary directory as well as suppress sklearn deprecation warning by pinning KMeans constructor argument. Lastly, move TF test to last as TF may reserve the GPUs it uses. (SmartSim-PR458)
- Some actions in the current GitHub CI/CD workflows were outdated. They were replaced with the latest versions. (SmartSim-PR446)
- As the Cobalt workload manager is not used on any system we are aware of, its support in SmartSim was terminated and classes such as CobaltLauncher have been removed. (SmartSim-PR448)
- Experiment logs are written to a file that can be read by the dashboard. (SmartSim-PR452)
- Updated SmartSim's machine learning backends to PyTorch 2.0.1, Tensorflow 2.13.1, ONNX 1.14.1, and ONNX Runtime 1.16.1. As a result of this change, there is now an available ONNX wheel for use with Python 3.10, and wheels for all of SmartSim's machine learning backends with Python 3.11. (SmartSim-PR451) (SmartSim-PR461)
- The sphinx-tabs documentation extension uses a white background for the tabs component. A custom CSS for those components to inherit the overall theme color has been added. (SmartSim-PR453)
- Add concurrency groups to GitHub's CI/CD workflows, preventing multiple workflows from the same PR to be launched concurrently. (SmartSim-PR439)
- Torch changed their preferred indexing when trying to install their provided wheels. Updated the pip install command within smart build to ensure that the appropriate packages can be found. (SmartSim-PR449)