dmtcp VS timemory

Compare dmtcp vs timemory and see what are their differences.

dmtcp

DMTCP: Distributed MultiThreaded CheckPointing (by dmtcp)

timemory

Modular C++ Toolkit for Performance Analysis and Logging. Profiling API and Tools for C, C++, CUDA, Fortran, and Python. The C++ template API is essentially a framework to creating tools: it is designed to provide a unifying interface for recording various performance measurements alongside data logging and interfaces to other tools. (by NERSC)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
dmtcp timemory
3 6
365 343
1.6% 1.5%
8.0 0.0
5 days ago 5 months ago
C++ C++
GNU General Public License v3.0 or later GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

dmtcp

Posts with mentions or reviews of dmtcp. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-01-06.

timemory

Posts with mentions or reviews of timemory. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-03-13.
  • jrmadsen/compile-time-perf -- High-level compilation overhead metrics
    3 projects | /r/cpp | 13 Mar 2021
    Anybody that's done it before on Windows could probably get a prototype ready in an hour or two bc it already supports not using fork -- there's a timem-mpi exe built from the same source that uses MPI_Comm_spawn_multiple instead of fork bc OpenMPI will seg-fault when you fork inside a rank.
  • Is there a way to get the type from type_index?
    2 projects | /r/cpp_questions | 21 Jan 2021
    example enum #1 example usage #1.1 example usage #1.2
  • Advice for Intermediate/Advance C++ Developer
    2 projects | /r/cpp_questions | 10 Jan 2021
    This can as simple as using a command-line tool like time) or timem
    2 projects | /r/cpp_questions | 10 Jan 2021
    W.r.t. to performing all this analysis on the code at a high-level and a low-level, checkout the performance analysis toolkit I've been working for the last year and half or so: timemory -- it has a high-level interface and some pre-built tools (such as the aforementioned timem) but it also exposes C++ template interface that's designed so that you can trivially bundle together different measurements and/or create custom measurement types and then use them with as little overhead as you desire, e.g. lightweight_tuple foo{}; foo.start(); ...; foo.stop() will create wall-clock and cpu-clock timers on the stack and never touch any global memory, component_tuple, vtune_frame> bar{ "mylabel"}; will report a wall-clock time, total-cycles, and the L1 cache misses in JSON and text files at the end, and create a "mylabel" frame in VTune when it is connected.

What are some alternatives?

When comparing dmtcp and timemory you can also consider the following projects:

h5cpp - C++17 templates between [stl::vector | armadillo | eigen3 | ublas | blitz++] and HDF5 datasets

psychec - A compiler frontend for the C programming language

kokkos-python - Python bindings for data interoperability with Kokkos (View, DynRankView)

designs - This repo is used for reviewing new .NET designs.

frovedis - Framework of vectorized and distributed data analytics

cpk - Light and fast package manager on C/C++ for C/C++/Python/Rust/Js packages

compile-time-perf - Measures high-level timing and memory usage metrics during compilation

faasm - High-performance stateful serverless runtime based on WebAssembly

amgcl - C++ library for solving large sparse linear systems with algebraic multigrid method

criu - Checkpoint/Restore tool

EPIJudge - EPI Judge - Preview Release

ninja2wctr - Calculates Wall Clock Time Responsibility for each output from .ninja_log