This repository has been archived by the owner on Jul 31, 2024. It is now read-only.
Releases: NERSC/timemory
Releases · NERSC/timemory
Improved formatting control of timers and rss::usage
- Large re-write of formatting
- Python format module with classes
timemory.format.rss
andtimemory.format.timer
- Python units module
- timemory.rss_usage has more initialization options
- Intel -xHOST and -axMIC-AVX512 flags enabled for Intel compilers
- Added units.hpp
- Added formatters.{hpp,cpp}
- Removed namespace.hpp
- Some minor serialization updates
- Relocated ^/pybind11 to ^/source/python
- TIMEMORY_INTEL_{C,CXX}_AVX512={ON,OFF}
- INTEL_{C,CXX}_COMPILER_FLAGS=""
- format names variables prefix/suffix instead of begin/close
- rss::usage has more format constructors
TiMemory 1.3.1
- Custom TiMemory namespace was removed, now just "tim"
- Large rewrite of plotting utilities resulting in a significant improvement
- Replaced timing_manager with manager but typedef in C++ and Python to allow backwards-compatibility
- Added new features to auto_timer
- Removed clone from timer
- Added rss_{tot,self}_min
- Updated pybind11 to v2.2.2
- Updated docs and README.rst
- Shared library linking + plotting fixes
- Python install now includes C++ development files
- All cmake options are not prefixed with TIMEMORY_
- Improved Windows DLL support (full support for Windows shared and static lib)
- setup.py will install CMake config properly
- platform-default settings on whether to use dynamic linking (Windows=OFF, else=ON)
- Improved testing + memory unit improvements
- Memory units are now always in multiples of 1024
- Added some thread-safety
- Updated README to deprecate is_class in decorator
PyPi version 1.2.0
- Large restructuring to fix submodule nesting issue
- Python > 3.1 now allows: "from timemory.util import rss_usage"
- requires importlib.util
- not available in older versions
- Better C++ auto_timer tagging and second option
- TIMEMORY_AUTO_TIMER (func@'file':line)
- TIMEMORY_AUTO_TIMER_SIMPLE (func)
- TIMEMORY_AUTO_TIMER_SIMPLE was the old TIMEMORY_AUTO_TIMER
- Squashed bugs + I/O and test improvements
- Excluded non-displayed timers (i.e. falling below minimum) from setting the output width
- Improved MPI detection
- Included tests in installation --> timemory.tests.run(pattern="")
- timemory.plotting routines have improved handling of bar graphs to help eliminate hidden graphs in the overlay
- added context managers
- moved report_fname field in options to report_filename
- moved serial_fname field in options to serial_filename
- I/O fix for RSS to report negative values (i.e. deallocation)
- Backported CMake to support older version of CMake (previous min: 3.1.3, new min: 2.8.12)
- added `timemory.set_exit_action(...)` capability for defining a function to handle the exit of the application due to a signal being raised (e.g. SIGHUP, SIGINT, SIGABRT)
- removed Python 'cmake' requirement in 'setup.py
PyPi version 1.1.1
- First full release
- Added 'report_at_exit' for auto_timer
- Added 'added_args' flag for auto_timer decorator
- Fixed I/O output bug
- Added setup.cfg
- Fixed auto_timer decorator issue with self.key, self.is_class, and self.add_args
Extensions + Windows support - PyPi v1.1b0
- added rss_usage decorator
- Complete Windows support (tested on Windows 10 64-bit with MSVC 14 [2015])
- made a base class for the decorators
- update the setup.py to 1.1b0
- +=, -=, +, -, current, and peak methods to RSS in Python
- updated timemory_test.py
- restructured submodules: originally all submodules were under util, now only the decorators live there
- new submodules are: options, mpi_support, plotting, util, and signals
- timemory.options: I/O options, formerly timemory.util.options
- timemory.plotting: plotting utilities, formerly timemory.util.plot
- timemory.util: decorators, formerly all-encompassing submodule
- timemory.signals: signal enumeration, new submodule
- timemory.mpi_support: report MPI information, new submodule
- added new RSS capability (+=, -= usage)
- added Python RSS interface
- added signals interface
TiMemory v1.0.0
A working version of TiMemory. Includes a beta version for Python -- available with pip install timemory
or python setup.py build install
from the source directory.
The Python version is still in beta because not all of the features in C++ have been made accessible to Python yet. For example:
- defining a different set of signal catching can only be done in C++, although it can still be controlled via environment variables.
- Implementing a custom function when a signal is caught can only be done with C++