mimalloc
RESTinio
mimalloc | RESTinio | |
---|---|---|
35 | 14 | |
9,499 | 1,107 | |
1.6% | 0.7% | |
9.1 | 8.9 | |
8 days ago | about 2 months ago | |
C | C++ | |
MIT License | GNU General Public License v3.0 or later |
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.
mimalloc
- Mimalloc: High performance general purpose allocator
-
Replacing musl's malloc with mimalloc: any ideas?
mimalloc: mimalloc is an open source implementation of malloc, currently the best performing allocator.
-
Reptar
Some compiler writers thought that was the case, if [0] is related to OP. I don't have a "modern" (after 6th gen) Intel CPU to test it on, but note that most programs are compiled for a relatively generic CPU.
[0]: https://github.com/microsoft/mimalloc/issues/807
-
Is the JVM a upside or downside to Scala?
Yes, it's very efficient and that's not where the main problem lies. However, small allocations with modern C heap allocators like mimalloc or snmalloc has gotten extremely efficient as well. Would be interesting to see a benchmark comparison with Java's G1 and ZGC.
-
Z Garbage Collector: The Next Generation
Memory management for C is not itself a solved problem, not only is there a lot of performance to squeeze out of malloc itself (the benchmarks on https://github.com/microsoft/mimalloc exemplifies the variance between the implementations), but it's up to the programmer to implement memory management in the large in an efficient way, which is not an easy task. One sure mark of a slow C program is one with a ton of mallocs and frees strewn all over.
-
Linux Tech Tips EP#13: Testing Transparent Huge Pages and Cryo Utilities in Gaming | 3700X 6600XT
It's a very terse howto for replacing Factorio's memory allocator with Microsoft's mimalloc, and configuring mimalloc so that memory is always allocated on huge pages by using madvise().
-
Differences between Lean4 and Koka reference counting
I was wondering if Koka's perceus referencing counting style is any different from the reference counting that Lean4 implements? I understand that both rely upon the mimalloc (https://github.com/microsoft/mimalloc) library in the backend.
-
pmr implementation in c++14
If you are fine with heap allocations then there are only few dozens operator new/delete to override to regain control over normal C++ code memory use. Allocators and STL all need to call those. At least that's what gaming does on all platforms. If you need examples you can check Mimalloc on github ( https://github.com/microsoft/mimalloc/blob/master/include/mimalloc-new-delete.h ).
-
GitHub link to an Arma 3 allocator which increases performance by 20-50%
What's the difference between this and Microsoft's? https://github.com/microsoft/mimalloc
-
Rust Mimalloc v0.1.31 has just been released!
Version 0.1.31 of the Rust wrapper for the mimalloc memory allocator has just been released!
RESTinio
-
What is the industry standard today in C++ to deploy REST microservices in Kubernetes?
In my past job, we used https://github.com/Stiffstream/restinio and absolutely loved it. It's not as active but it honestly didn't need much.
-
What are some fun project ideas with C++?
Here's a C++ REST framework for you to use too: https://github.com/Stiffstream/restinio
- What code/project you saw was both inspiring and maintainable?
-
What are some cool modern libraries you enjoy using?
I had a good experience using restinio for a small ASIO HTTP server recently.
-
Can I use C++ in the backend ?? Any frameworks there ??
It uses restinio https://github.com/Stiffstream/restinio with great success ;)
- Modern C++ Web API (Back-End Development)
-
Confused about beginning application development using c++. Pls help.
For networking, pick a networking library. Restinio is a fair choice for HTTP. But, again, feel free to pick others.
-
NodeJS vs Go for low memory usage
You may find this worthwhile: https://github.com/Stiffstream/restinio/issues/101 FWIW, I used Restbed successfully for 3.5 years before switching personal projects to Restino. I've left the job that used Restbed, but I think they are still using it.
-
What does modern (good) API development look like and what are the best tools to use?
Contrary to the direction most people go, I've been writing REST APIs as C++ servers using two different fairly full featured C++ REST frameworks: first using https://github.com/Corvusoft/restbed and more lately using https://github.com/Stiffstream/restinio. These can be peers with any other server, while living on embedded and/or high compute devices for video encode/decode/analysis, deployed ML models, encryption for and remote process communications, model data collection and similar expensive or in-field processing. In both high compute and in-field-no-internet situations creating REST APIs in C++ enables speed and system controls not present in the majority of the mainstream REST frameworks. It's a big world, and here comes ubiquitous high compute...
-
cpprestsdk in maintenance mode
If you need an embedded C++ HTTP server then there are plenty of libraries/frameworks (in random order): Crow, RESTinio, Boost.Beast, cpp-httplib, http_backend, Pistache, RestBed, served, proxygen, Simple-Web-Server, drogon, oat++.
What are some alternatives?
jemalloc
Boost.Beast - HTTP and WebSocket built on Boost.Asio in C++11
rpmalloc - Public domain cross platform lock free thread caching 16-byte aligned memory allocator implemented in C
Restbed - Corvusoft's Restbed framework brings asynchronous RESTful functionality to C++14 applications.
snmalloc - Message passing based allocator
C++ REST SDK - The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services.
tbb - oneAPI Threading Building Blocks (oneTBB) [Moved to: https://github.com/oneapi-src/oneTBB]
Crow - A Fast and Easy to use microframework for the web.
rust - Empowering everyone to build reliable and efficient software.
µWebSockets - Simple, secure & standards compliant web server for the most demanding of applications
Hoard - The Hoard Memory Allocator: A Fast, Scalable, and Memory-efficient Malloc for Linux, Windows, and Mac.
Oat++ - 🌱Light and powerful C++ web framework for highly scalable and resource-efficient web application. It's zero-dependency and easy-portable.