despacer
cglm
despacer | cglm | |
---|---|---|
2 | 12 | |
147 | 2,050 | |
- | - | |
5.6 | 9.3 | |
5 months ago | 12 days ago | |
C | C | |
BSD 3-clause "New" or "Revised" License | MIT 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.
despacer
-
Removing characters from strings faster with AVX-512
Cool performance enhancement, with an accompanying implementation in a real-world library (https://github.com/lemire/despacer).
Still, what does it signal that vector extensions are required to get better string performance on x86? Wouldn't it be better if Intel invested their AVX transistor budget into simply making existing REPB prefixes a lot faster?
-
Intel Nukes Alder Lake's AVX-512 Support, Now Fuses It Off in Silicon
If you're looking for an example, perhaps the despacer problem might be one which doesn't get too complex. Do you know of a way to implement it on a GPU such that it'd run better than (or at least as good as) a CPU SIMD implementation would?
cglm
-
converting a vec4 into a mat4
It's too bad you are using C. If you were using C++, you could use teh fantastic GLM library, which implements the vector math stuff from GLSL as CPU/C++ code. you might want to have a look at CLGM: https://github.com/recp/cglm
-
Matrix multiplication in C
There's cglm, but I don't know how good it is. Really though for hobby OpenGL stuff, it's going to be 3x3, 4x4, 1x4 matrices, so rolling one's own stuff is not that terrible, if it proves to be a bottleneck (probably won't), you can drop in some fancy SIMD bullshit later.
- Portable SIMD library
- Looking for fast, generalized lin alg library
-
In what way should I write a matrix library for my OpenGL game?
There is a cglm: repo
-
What can I replace the C++ code "Vector3f" with?
Check out https://github.com/recp/cglm I use it judiciously.
-
I want to make a game for Linux. Where do I even start?
GLM and CGLM should probably be mentioned as well since you'll probably want a good linear algebra library if you are going with just a rendering library instead of a full game engine.
-
What would be the best way to implement a (algebra) vector in C (for OpenGL purposes)?
cglm has two options for representing a vector: using a struct and using an array. The default one is using an array, but I'm not seeing what are the benefits of using an array instead of a struct. When using an array, you need to use out parameters, which make the code much more ugly when doing multiple operations. Using a struct, I can simply return the struct from the function. The only advantage of using an array would be that it's easier to iterate through it, but I could do the same using structs like this
-
Using CGLM, why does the value of this vec4 affect the mat4?
It has been a while since I've written any C so it's very likely I'm missing something very simple. But I'm using CGLM and I have this simple program:
-
Anyone is using plain C?
https://github.com/recp/cglm is a C version of GLM
What are some alternatives?
mixbench - A GPU benchmark tool for evaluating GPUs and CPUs on mixed operational intensity kernels (CUDA, OpenCL, HIP, SYCL, OpenMP)
GLM - OpenGL Mathematics (GLM)
rust - Empowering everyone to build reliable and efficient software.
linmath.h - a lean linear math library, aimed at graphics programming. Supports vec3, vec4, mat4x4 and quaternions
nsimd - Agenium Scale vectorization library for CPUs and GPUs
raylib - A simple and easy-to-use library to enjoy videogames programming
plutovg - Tiny 2D vector graphics library in C
sse2neon - A translator from Intel SSE intrinsics to Arm/Aarch64 NEON implementation
simd_utils - A header only library implementing common mathematical functions using SIMD intrinsics
Mathc - A simple and clean, glsl like, math (linear algebra) header only library for C.
Box2D - Box2D is a 2D physics engine for games
deka - Haskell decimal arithmetic