libCat
Vc
Our great sponsors
libCat | Vc | |
---|---|---|
21 | 6 | |
51 | 1,318 | |
- | 0.8% | |
8.8 | 0.0 | |
about 1 month ago | 3 months ago | |
C++ | C++ | |
GNU Affero General Public License v3.0 | BSD 3-clause "New" or "Revised" License |
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.
libCat
-
I hate almost all software
That's awesome! I'm working on something that sounds similar. https://github.com/cons-cat/libcat
I'd love to see your work if you're willing to share it here!
- Manticore 6.0.0 – a faster alternative to Elasticsearch in C++
-
Chromium accepting Rust in a clear move to copy what Mozilla have done, replace C++ source code
It's worse in the standard library than it has to be. When I refactored my traits to minimize template instantiations and lean on concepts as much as possible, I measured over 30% improvement to clean build compile times. It's not possible for the standard to do this, because it would subtly change the API. For instance, you can't instantiate or take the address of a concept, but you can for a type-trait class. No reason you'd want to do that, but you can, so they can't "break" the standard library by optimizing this.
-
C++'s smaller cleaner language
This doesn't have to be true. Over the past year I've made progress towards demonstrating how even non-freestanding C++ can be written without any C or C++ standard library headers or DLLs (with large benefits). There are a few names which the compilers require to be in the std:: namespace, though, but they're very special features like source_location and construct_at with semantics that can't be expressed otherwise.
-
Is bloat in std::unexpected expected?
It isn't that hard to put a predicate into a type. We have lambdas in an unevaluated context, CTAD, and templated type aliases. https://github.com/Cons-Cat/libCat/blob/main/src/libraries/scaredy/cat/scaredy https://github.com/Cons-Cat/libCat/blob/main/src/global_includes.hpp#L70 https://github.com/Cons-Cat/libCat/blob/main/src/libraries/linux/cat/linux#L289 You do it like this.
- Software disenchantment - why does modern programming seem to lack of care for efficiency, simplicity, and excellence
- tiny::optional – a C++ optional that does not waste memory
-
Rust analyzer/clippy alternative for C++?
I use clang-tidy. These are my current linting rules.
-
John "God" Carmack: C++ with a C flavor is still the best (also: Python performance "keeps hitting me in the face")
I'm working on this! https://github.com/Cons-Cat/LibCat
- “Hello world” is slower in C++ than in C (Linux)
Vc
-
The Bitter Truth: Python 3.11 vs Cython vs C++ Performance for Simulations
Most high-performance math libraries perform a lot of vectorization (Eigen, etc) under the hood. And you've got stuff like Klein, Vc (which is reminiscent of std::valarray), etc. Then there's OpenMP's #pragma omp simd (assuming version 4.0 or greater).
-
John "God" Carmack: C++ with a C flavor is still the best (also: Python performance "keeps hitting me in the face")
I personally like the ideas in Parallelism v2 TS, which is available in for libstdc++ 11 onwards. The reference implementation is a library named Vc (afaik Vc is the most popular SIMD library for C++), and this has also been implemented in recent versions of HPX.
-
SPO600 project part 2
First of all about our project, I previously decided to work with VC library.https://github.com/VcDevel/Vc
-
SPO600 project part 1
I've decided to switch to something better, and after a few hours of searching, I found this repository: NSIMD https://github.com/agenium-scale/nsimd FastDifferentialCoding https://github.com/lemire/FastDifferentialCoding VS https://github.com/VcDevel/Vc XSIMD https://github.com/xtensor-stack/xsimd
- Vc 1.4.2 released: portable SIMD programming for C++
-
All C++20 core language features with examples
> - Waiting for Cross-Platform standardized SIMD vector datatypes
which language has standardized SIMD vector datatypes ? most languages don't even have any ability to express SIMD while in C++ I can just use Vc (https://github.com/VcDevel/Vc), nsimd (https://github.com/agenium-scale/nsimd) or one of the other ton of alternatives, and have stuff that JustWorksTM on more architectures than most languages even support
- Using nonstandard extensions, libraries or home-baked solutions to run computations in parallel on many cores or on different processors than the CPU
what are the other native languages with a standardized memory model for atomics ? and, what's the problem with using libraries ? it's not like you're going to use C# or Java's built-in threadpools if you are doing any serious work, no ? Do they even have something as easy to use as https://github.com/taskflow/taskflow ?
- Debugging cross-platform code using couts, cerrs and printfs
because people never use console.log in JS or System.println in C# maybe ?
- Forced to use boost for even quite elementary operations on std::strings.
can you point to non-trivial java projects that do not use Apache Commons ? Also, the boost string algorithms are header-only so you will end up with exactly the same binaries that if it was in some std::string_algorithms namespace:
What are some alternatives?
xsimd - C++ wrappers for SIMD intrinsics and parallelized, optimized mathematical functions (SSE, AVX, AVX512, NEON, SVE))
highway - Performance-portable, length-agnostic SIMD with runtime dispatch
Eigen
blaze
GLM - OpenGL Mathematics (GLM)
OpenBLAS - OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
MIRACL - MIRACL Cryptographic SDK: Multiprecision Integer and Rational Arithmetic Cryptographic Library is a C software library that is widely regarded by developers as the gold standard open source SDK for elliptic curve cryptography (ECC).
TinyExpr - tiny recursive descent expression parser, compiler, and evaluation engine for math expressions
Klein - P(R*_{3, 0, 1}) specialized SIMD Geometric Algebra Library
highway - Highway - A Modern Javascript Transitions Manager
Mission : Impossible (AutoDiff) - A concise C++17 implementation of automatic differentiation (operator overloading)
Versor - [older version] Versor 1.0 C++ library for conformal geometric algebra draw routines