Skip to content

Commit

Permalink
Release 3.2.0 (#209)
Browse files Browse the repository at this point in the history
  • Loading branch information
jrmadsen committed Jun 28, 2021
1 parent cf30c23 commit 2bdd28e
Show file tree
Hide file tree
Showing 5 changed files with 152 additions and 117 deletions.
235 changes: 131 additions & 104 deletions CHANGES.md → CHANGELOG.md
@@ -1,52 +1,104 @@
timemory
========

Release: timemory 3.0.0
-----------------------

Author: Jonathan R. Madsen
Date: Wed, 30 Oct 2019 01:23:50 -0700
# timemory

## Version 3.2.0

> Date: Sun Jun 27 21:10:57 2021 -0500
- Numerous stability fixes
- Fortran module
- Compiler instrumentation
- NCCL support
- timemory-mallocp
- timemory-ncclp
- timemory-nvml
- Python line-by-line tracing
- I/O {read,write}_{char,bytes}
- Network stats components
- libunwind support
- CMake minimum upgraded to 3.15
- Type-traits for tree/flat/timeline
- Hierarchical serialization ([hatchet](https://github.com/hatchet/hatchet) support)
- Concepts
- Improved settings
- Python tracer (line-by-line)
- CTestNotes support
- Command-line options for settings
- Migrated cereal to internal (i.e. `cereal::` -> `tim::cereal::`)
- Dramatically improved Windows support
- Improved kokkos support
- Command-line options
- Print help
- XML serialization support
- Shared caches for components
- Support for C++17 `string_view`
- Python bindings to storage classes
- Windows support for different CPU timers
- CUDA Cupti PCSampling support (CUDA v11+)
- User metadata
- Sampling support in opaque (i.e. within user-bundles)
- Static polymorphic base for bundlers
- Namespace re-organization
- CUDA compilation with Clang compiler
- Piecewise installation
- timem support md5sum hashing of command-line
- `papi_threading` setting
- `is_invalid` in base_state
- New operations
- `stack_push`
- `stack_pop`
- `insert`
- `set_depth_change`
- `set_is_flat`
- `set_is_on_stack`
- `set_is_invalid`
- `set_iterator`
- `get_is_flat`
- `get_is_invalid`
- `get_is_on_stack`
- `get_depth`
- `get_storage`
- `get_iterator`


## Version 3.0.0

> Date: Wed, 30 Oct 2019 01:23:50 -0700
- Introducing the variadic interface
- Refer to new documentation at https://timemory.readthedocs.io

Release: TiMemory 2.3.0
-----------------------
## Version 2.3.0

Author: Jonathan R. Madsen Date: Wed Oct 10 03:11:33 2018 -0700
> Date: Wed Oct 10 03:11:33 2018 -0700
- Fixed issue with cxx11_abi between compilers
- TIMEMORY_USE_MPI=OFF by default
- timem updates

Release: TiMemory 2.2.2
-----------------------
## Version 2.2.2

Author: Jonathan R. Madsen Date: Wed Jun 6 03:19:39 2018 -0700
> Date: Wed Jun 6 03:19:39 2018 -0700
- Minor fix to avoid very rare FPE when serializing

Release: TiMemory 2.2.1
-----------------------
## Version 2.2.1

Author: Jonathan R. Madsen Date: Tue Jun 6 01:32:45 2018 -0700
> Date: Tue Jun 6 01:32:45 2018 -0700
- fix to TiMemoryConfig.cmake when installed via sudo

Release: TiMemory 2.2.0
-----------------------
## Version 2.2.0

Author: Jonathan R. Madsen Date: Tue Jun 5 00:28:10 2018 -0700
> Date: Tue Jun 5 00:28:10 2018 -0700
- self-cost available in manager + plotting safeguards
- Improved singleton deletion
- alternative colors for when len(_types) == 1 in plotting
- plotting label fix

Release: TiMemory 2.1.0
-----------------------
## Version 2.1.0

Author: Jonathan R. Madsen Date: Wed May 16 11:38:28 2018 -0700
> Date: Wed May 16 11:38:28 2018 -0700
- Significant performance improvement (~2x)
- new C interface for TiMemory
Expand Down Expand Up @@ -81,10 +133,9 @@ Author: Jonathan R. Madsen Date: Wed May 16 11:38:28 2018 -0700
- Hard-code python exe into timemory python scripts
- Various fixes (plotting, argparse, etc.)

Release: TiMemory 2.0.0
-----------------------
## Version 2.0.0

Author: Jonathan R. Madsen Date: Wed Apr 25 12:59:06 2018 -0700
> Date: Wed Apr 25 12:59:06 2018 -0700
- Large re-write of formatting
- Python format module with classes timemory.format.rss and
Expand All @@ -97,17 +148,15 @@ Author: Jonathan R. Madsen Date: Wed Apr 25 12:59:06 2018 -0700
- Added formatters.{hpp,cpp}
- Some minor serialization updates

Release: TiMemory 1.3.1
-----------------------
## Version 1.3.1

Author: Jonathan R. Madsen Date: Thu Apr 12 02:02:20 2018 -0700
> Date: Thu Apr 12 02:02:20 2018 -0700
- Fixes to Windows

Release: TiMemory 1.3.0
-----------------------
## Version 1.3.0

Author: Jonathan R. Madsen Date: Tue Apr 10 07:40:01 2018 -0700
> Date: Tue Apr 10 07:40:01 2018 -0700
- Custom TiMemory namespace was removed, now just tim
- Large rewrite of plotting utilities resulting in a significant
Expand All @@ -126,45 +175,37 @@ Author: Jonathan R. Madsen Date: Tue Apr 10 07:40:01 2018 -0700
- platform-default settings on whether to use dynamic linking
(Windows=OFF, else=ON)

Release: TiMemory 1.2.2
-----------------------
## Version 1.2.2

Author: Jonathan R. Madsen Date: Wed Feb 28 15:31:53 2018 -0800
> Date: Wed Feb 28 15:31:53 2018 -0800
- 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

Release: TiMemory 1.2.1
-----------------------
## Version 1.2.1

Author: Jonathan R. Madsen Date: Wed Feb 28 02:49:51 2018 -0800
> Date: Wed Feb 28 02:49:51 2018 -0800
- added auto-detection of is\_class in decorators
- Fixed build flags
>
- Removed -march=native (GNU) and -xHOST (Intel) from non-debug
builds as these flags create illegal instructions in Docker --
specifically NERSC's Edison
>
Release: TiMemory 1.2.0
-----------------------

Author: Jonathan R. Madsen Date: Tue Feb 6 05:12:56 2018 -0800
## Version 1.2.0

> Date: Tue Feb 6 05:12:56 2018 -0800
- 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
Expand All @@ -176,77 +217,63 @@ Author: Jonathan R. Madsen Date: Tue Feb 6 05:12:56 2018 -0800
- moved report\_fname field in options to report\_filename
- moved serial\_fname field in options to serial\_filename

Release: TiMemory 1.1.7
-----------------------

- Author: Jonathan R. Madsen
- Date: Wed Jan 31 14:28:19 2018 -0800

- I/O fix for RSS to report negative values (i.e. deallocation)
## Version 1.1.7

Release: TiMemory 1.1.5
-----------------------
> Date: Wed Jan 31 14:28:19 2018 -0800
- Author: Jonathan R. Madsen
- Date: Mon Jan 29 18:46:09 2018 -0800
- 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)
## Version 1.1.5

Release: TiMemory 1.1.3
-----------------------
> Date: Mon Jan 29 18:46:09 2018 -0800
- Author: Jonathan R. Madsen
- Date: Mon Jan 29 18:46:09 2018 -0800
- 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)
## Version 1.1.3

Release: TiMemory 1.1.2
-----------------------
> Date: Mon Jan 29 18:46:09 2018 -0800
- Author: Jonathan R. Madsen
- Date: Mon Jan 29 16:20:06 2018 -0800
- 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
## Version 1.1.2

Release: TiMemory 1.1.1
-----------------------
> Date: Mon Jan 29 16:20:06 2018 -0800
- Author: Jonathan R. Madsen
- Date: Mon Jan 29 15:00:12 2018 -0800
- removed Python 'cmake' requirement in 'setup.py

- Added 'report\_at\_exit' parameter to auto\_timer decorator
- 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
## Version 1.1.1

Release: TiMemory 1.1b0
-----------------------
> Date: Mon Jan 29 15:00:12 2018 -0800
- Author: Jonathan R. Madsen
- Date: Fri Jan 26 17:24:42 2018 -0800
- Added 'report\_at\_exit' parameter to auto\_timer decorator
- 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

- Updated documentation for TiMemory 1.1b0
- added rss\_usage decorator
- 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
## Version 1.1b0

> Date: Fri Jan 26 17:24:42 2018 -0800
- Updated documentation for TiMemory 1.1b0
- added rss\_usage decorator
- 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
4 changes: 3 additions & 1 deletion MANIFEST.in
Expand Up @@ -5,7 +5,7 @@ include .clang-format
include .clang-tidy
include .gitignore
include .readthedocs.yml
include CHANGES.md
include CHANGELOG.md
include CMakeLists.txt
include CODE_OF_CONDUCT.md
include CONTRIBUTING.md
Expand Down Expand Up @@ -37,10 +37,12 @@ recursive-include .requirements *
global-exclude *.pyc
global-exclude *.git*
global-exclude *__pycache__*
global-exclude *.so

# recursive excludes

recursive-exclude timemory.egg-info *
recursive-exclude _skbuild *
recursive-exclude build *
recursive-exclude dist *
recursive-exclude external/hatchet/build *
2 changes: 1 addition & 1 deletion VERSION
@@ -1 +1 @@
3.2.0.rc3
3.2.0
2 changes: 1 addition & 1 deletion docs/installation.md.in
Expand Up @@ -2,7 +2,7 @@

- Required
- C++14 compiler (GNU, MSVC, Clang, Intel, PGI)
- CMake >= 3.11
- CMake >= 3.15
- Optional
- C compiler (GNU, MSVC, Clang, Intel, PGI)
- Python libraries
Expand Down

0 comments on commit 2bdd28e

Please sign in to comment.