Skip to content
This repository has been archived by the owner on Jul 31, 2024. It is now read-only.

Performance improvement + C interface + env control

Compare
Choose a tag to compare
@jrmadsen jrmadsen released this 12 Jun 04:22
· 797 commits to master since this release
  • Significant performance improvement (~2x)
  • new C interface for TiMemory
    • requires variable assignment and freeing
      • void* atimer = TIMEMORY_AUTO_TIMER("")
      • FREE_TIMEMORY_AUTO_TIMER(atimer)
  • command-line tools: timem (UNIX-only) and pytimem
  • Environment control
    • TIMEMORY_VERBOSE
    • TIMEMORY_DISABLE_TIMER_MEMORY
    • TIMEMORY_NUM_THREADS_ENV
    • TIMEMORY_NUM_THREADS
    • TIMEMORY_ENABLE
    • TIMEMORY_TIMING_FORMAT
    • TIMEMORY_TIMING_PRECISION
    • TIMEMORY_TIMING_WIDTH
    • TIMEMORY_TIMING_UNITS
    • TIMEMORY_TIMING_SCIENTIFIC
    • TIMEMORY_MEMORY_FORMAT
    • TIMEMORY_MEMORY_PRECISION
    • TIMEMORY_MEMORY_WIDTH
    • TIMEMORY_MEMORY_UNITS
    • TIMEMORY_MEMORY_SCIENTIFIC
    • TIMEMORY_TIMING_MEMORY_FORMAT
    • TIMEMORY_TIMING_MEMORY_PRECISION
    • TIMEMORY_TIMING_MEMORY_WIDTH
    • TIMEMORY_TIMING_MEMORY_UNITS
    • TIMEMORY_TIMING_MEMORY_SCIENTIFIC
  • Ability of push/pop default formatting
  • improved thread-local singleton using C++ shared_ptrs
    • automatic merge and deletion of manager instances at sub-thread exit
  • Hard-code python exe into timemory python scripts
  • Various fixes (plotting, argparse, etc.)
  • Minor fix to avoid very rare FPE when serializing
  • fix to TiMemoryConfig.cmake when installed via sudo
  • self-cost available in manager + plotting safeguards
  • Improved singleton deletion
  • alternative colors for when len(_types) == 1 in plotting
  • plotting label fix