ADIOS2 VS AdaptiveCpp

Compare ADIOS2 vs AdaptiveCpp and see what are their differences.

ADIOS2

Next generation of ADIOS developed in the Exascale Computing Program (by ornladios)

AdaptiveCpp

Implementation of SYCL and C++ standard parallelism for CPUs and GPUs from all vendors: The independent, community-driven compiler for C++-based heterogeneous programming models. Lets applications adapt themselves to all the hardware in the system - even at runtime! (by AdaptiveCpp)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
ADIOS2 AdaptiveCpp
1 19
253 1,042
2.0% 2.4%
9.8 9.7
5 days ago 8 days ago
C++ C++
Apache License 2.0 BSD 2-clause "Simplified" License
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.

ADIOS2

Posts with mentions or reviews of ADIOS2. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-10-21.
  • What Every Developer Should Know About GPU Computing
    5 projects | news.ycombinator.com | 21 Oct 2023
    I thought I'd share something with my experience with HPC that applies to many areas, especially in the rise of GPUs.

    The main bottleneck isn't compute, it is memory. If you go to talks you're gonna see lots of figures like this one[0] (typically also showing disk speeds, which are crazy small).

    Compute is increasing so fast that at this point we finish our operations long faster than it takes to save those simulations or even create the visualizations and put on disk. There's a lot of research going into this, with a lot of things like in situ computing (asynchronous operations, often pushing to a different machine, but needing many things like flash buffers. See ADIOS[1] as an example software).

    What I'm getting at here is that we're at a point where we have to think about that IO bottleneck, even for non-high performance systems. I work in ML now, which we typically think of as compute bound, but being in the generative space there are still many things where the IO bottlenecks. This can be loading batches into memory, writing results to disk, or communication between distributed processes. It's one beg reason we typically want to maximize memory usage (large batches).

    There's a lot of low hanging fruit in these areas that aren't going to be generally publishable works but are going to have lots of high impact. Just look at things like LLaMA CPP[2], where in the process they've really decreased the compute time and memory load. There's also projects like TinyLLaMa[3] who are exploring training a 1B model and doing so on limited compute, and are getting pretty good results. But I'll tell you from personal experience, small models and limited compute experience doesn't make for good papers (my most cited work did this and has never been published, gotten many rejections for not competing with models 100x it's size, but is also quite popular in the general scientific community who work with limited compute). Wfiw, companies that are working on applications do value these things, but it is also noise in the community that's hard to parse. Idk how we can do better as a community to not get trapped in these hype cycles, because real engineering has a lot of these aspects too, and they should be (but aren't) really good areas for academics to be working in. Scale isn't everything in research, and there's a lot of different problems out there that are extremely important but many are blind to.

    And one final comment, there's lots of code that is used over and over that are not remotely optimized and can be >100x faster. Just gotta slow down and write good code. The move fast and break things method is great for getting moving but the debt compounds. It's just debt is less visible, but there's so much money being wasted from writing bad code (and LLMs are only going to amplify this. They were trained on bad code after all)

    [0] https://drivenets.com/wp-content/uploads/2023/05/blog-networ...

    [1] https://github.com/ornladios/ADIOS2

    [2] https://github.com/ggerganov/llama.cpp

    [3] https://github.com/jzhang38/TinyLlama

AdaptiveCpp

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

What are some alternatives?

When comparing ADIOS2 and AdaptiveCpp you can also consider the following projects:

TinyLlama - The TinyLlama project is an open endeavor to pretrain a 1.1B Llama model on 3 trillion tokens.

ROCm - AMD ROCm™ Software - GitHub Home [Moved to: https://github.com/ROCm/ROCm]

nekRS - our next generation fast and scalable CFD code

HIP-CPU - An implementation of HIP that works on CPUs, across OSes.

matio-cpp - A C++ wrapper of the matio library, with memory ownership handling, to read and write .mat files.

triSYCL - Generic system-wide modern C++ for heterogeneous platforms with SYCL from Khronos Group

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

HIP - HIP: C++ Heterogeneous-Compute Interface for Portability

h5pp - A C++17 interface for HDF5

cuda-api-wrappers - Thin C++-flavored header-only wrappers for core CUDA APIs: Runtime, Driver, NVRTC, NVTX.

FluidX3D - The fastest and most memory efficient lattice Boltzmann CFD software, running on all GPUs via OpenCL.

cuda_memtest - Fork of CUDA GPU memtest :eyeglasses: