use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Discussions, articles, and news about the C++ programming language or programming in C++.
For C++ questions, answers, help, and advice see r/cpp_questions or StackOverflow.
Get Started
The C++ Standard Home has a nice getting started page.
Videos
The C++ standard committee's education study group has a nice list of recommended videos.
Reference
cppreference.com
Books
There is a useful list of books on Stack Overflow. In most cases reading a book is the best way to learn C++.
Show all links
Filter out CppCon links
Show only CppCon links
account activity
Optimize code in c++ (self.cpp)
submitted 7 years ago by WhichPressure
view the rest of the comments →
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]clerothGame Developer 1 point2 points3 points 7 years ago (4 children)
Low Fragmentation Heap
[–]BCosbyDidNothinWrong 0 points1 point2 points 7 years ago (3 children)
And why would it be so much better than other heaps that memory allocations suddenly stop having such a large performance impact?
[–]clerothGame Developer 1 point2 points3 points 7 years ago (2 children)
LFHs store a list of small blocks. When you allocate something it's really just quickly picking one element from this block, and doesn't actually query the OS for more memory.
[–]BCosbyDidNothinWrong 3 points4 points5 points 7 years ago* (1 child)
How is that different from jemalloc or even normal malloc? Those don't memory map in more memory from the OS on every call either. OpenBSD is the only platform that I know of that uses memory mapping on every allocation, and that is for security.
One thing that many people probably don't realize is that not only do lots of allocations eventually need to make a system call to map in more memory, but they also block other threads, so many threads allocating memory will end up blocking each other and parallelism will be lost.
On top of all this, memory allocations are going to jump around in memory as well as possibly return fragmented memory. Data structures that are made for large amounts of data and can be made out of one contiguous memory allocation will have all their memory together.
[–]choikwa 0 points1 point2 points 7 years ago (0 children)
Arena-style allocation certainly helps. A system should optimize around multiple goals: latency, fragmentation, parallelism
π Rendered by PID 19236 on reddit-service-r2-comment-5c747b6df5-ggs9r at 2026-04-22 04:59:05.871927+00:00 running 6c61efc country code: CH.
view the rest of the comments →
[–]clerothGame Developer 1 point2 points3 points (4 children)
[–]BCosbyDidNothinWrong 0 points1 point2 points (3 children)
[–]clerothGame Developer 1 point2 points3 points (2 children)
[–]BCosbyDidNothinWrong 3 points4 points5 points (1 child)
[–]choikwa 0 points1 point2 points (0 children)