Our great sponsors
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.
glog
-
C++ Game Utility Libraries: for Game Dev Rustaceans
Alternatives are glog from Google is full-featured, like spdlog, while Plog offers a lightweight alternative. Both are worthy upgrades on using C++ built-in std::clog.
-
libbase - standalone reimplementation useful parts of Chromium's //base module
Technically: yes, it depends the GLOG library (https://github.com/google/glog) which gives you logging system and assertions, etc. (the same ones that are available in normal Chromium's //base)
-
Creating a logging library
I suggest you take a look at GLog (https://github.com/google/glog) - it's got a few more features above my stated minimum and the performance is good (as long as you avoid force-flushing).
-
New to photogrammetry, getting started?
git clone https://github.com/google/glog.git
eigen
- Gentoo -Os vs -O3 application startup time?
-
The Case of the Missing SIMD Code
I was curious about these libraries a few weeks ago and did some searching. Is there one that's got a clearly dominating set of users or contributors?
I don't know what a good way to compare these might be, other than perhaps activity/contributor count.
[1] https://github.com/simd-everywhere/simde
[2] https://github.com/ermig1979/Simd
[3] https://github.com/google/highway
-
Common practices when doing image processing on the GPU
Eigen is a header-only library, thus simply cloning it from the official repository into the FOGGDD folder should be enough.
- Use TFlite in a Cmake Project
-
I've decided to learn Godot and it feels like I have "lost"
math library because you should never implement a math library yourself, and you probably want somethign more focused on performance than STL. GLM may work if you just need basic vector support. Eigen may help for a more physics heavy game. But I'd probably find something in-between those two
-
CMake: How to include the headers of an external library downloaded with FetchContent?
cmake_minimum_required(VERSION 3.15) project(app) include(FetchContent) FetchContent_Declare(Eigen3 URL https://gitlab.com/libeigen/eigen/-/archive/3.4.0/eigen-3.4.0.tar.gz) FetchContent_MakeAvailable(Eigen3) add_executable(app main.cpp) target_link_libraries(app Eigen3::Eigen)
-
-🎄- 2021 Day 13 Solutions -🎄-
Today was very easy to do with Eigen
- Eigen has temporarily disappeared from GitLab. Team working with GitLab to restore the repository.
-
I just started working on an open-source library for robotics algorithms, CppRobotics!
Thanks for the suggestion. While I agree on the fact that std::size_t would be a better choice (which should be just an unsigned int underneath and shouldn't make any difference when instantiating the object), I chose to go with int because that's what Eigen uses as a parameter.
-
Emulating AMD Approximate Arithmetic Instructions on Intel
(Too late for edit)
Looks like Eigen also defaults to EIGEN_FAST_MATH which makes Eigen's psqrt ("packet sqrt") use _mm256_rsqrt_ps instead of _mm256_sqrt_ps [1].
Interestingly, the thing they're trying to avoid (long latency of sqrt vs rsqrt) hasn't been true for a long time on Intel processors, but apparently is still true for AMD parts according to Agner Fog's tables [2] (though maybe I'm reading them wrong, there is no vsqrtps entry for Zen2/3).
[1] https://gitlab.com/libeigen/eigen/-/blob/a75122584594fb98db0...
What are some alternatives?
spdlog - Fast C++ logging library.
G3log - G3log is an asynchronous, "crash safe", logger that is easy to use with default logging sinks or you can add your own. G3log is made with plain C++14 (C++11 support up to release 1.3.2) with no external libraries (except gtest used for unit tests). G3log is made to be cross-platform, currently running on OSX, Windows and several Linux distros. See Readme below for details of usage.
Boost.Log - Boost Logging library
log4cplus - log4cplus is a simple to use C++ logging API providing thread-safe, flexible, and arbitrarily granular control over log management and configuration. It is modelled after the Java log4j API.
easyloggingpp - C++ logging library. It is extremely powerful, extendable, light-weight, fast performing, thread and type safe and consists of many built-in features. It provides ability to write logs in your own customized format. It also provide support for logging your classes, third-party libraries, STL and third-party containers etc.
plog - Portable, simple and extensible C++ logging library
NumCpp - C++ implementation of the Python Numpy library
loguru - A lightweight C++ logging library
quill - Asynchronous Low Latency C++ Logging Library
mini-async-log - Non bloated asynchronous logger
mathfu - C++ math library developed primarily for games focused on simplicity and efficiency.
Blackhole - Yet another logging library.