Try experimental hualloc memory allocator from Yandex#31376
Try experimental hualloc memory allocator from Yandex#31376alexey-milovidov wants to merge 30 commits intomasterfrom
hualloc memory allocator from Yandex#31376Conversation
| add_subdirectory(s2geometry-cmake) | ||
| endif() | ||
|
|
||
| # Put all targets defined here and in subdirectories under "contrib/<immediate-subdir>" folders in GUI-based IDEs. |
There was a problem hiding this comment.
This fails on "cannot set property on ALIAS target", CC @traceon
As we don't use X-Code, I temporarily removed it.
There was a problem hiding this comment.
OK, I'll submit adjustments/fixes, after this change is merged.
|
Segfault on server termination. |
|
Something is wrong with destruction order: |
|
|
|
It is still wrong: |
|
There is inefficient path for allocating and deallocating memory chunks of size 1048591 bytes. |
|
Something is still wrong with allocations from zlib-ng. |
contrib/CMakeLists.txt
Outdated
| # Skip INTERFACE library targets, since FOLDER property is not available for them. | ||
| get_target_property (_target_type "${_target}" TYPE) | ||
| if (_target_type STREQUAL "INTERFACE_LIBRARY") | ||
| return () | ||
| endif () |
There was a problem hiding this comment.
This can be changed just to this to fix the issue:
# Skip aliases and INTERFACE library targets, since FOLDER property is not available for them.
get_target_property (_target_aliased "${_target}" ALIASED_TARGET)
get_target_property (_target_type "${_target}" TYPE)
if (_target_aliased OR _target_type STREQUAL "INTERFACE_LIBRARY")
return ()
endif ()|
Test finished. |
|
Will reopen after @pg83 will help. |
|
@alexey-milovidov is it just to test this allocator, or it is considered as a real replacement? If yes, what are the benefits? |
|
Let's try again. The chances it will be merged are low. |
|
Yes, it gives some improvement, around 3% on average. |
|
Half of performance comparison runs were killed by OOM killer - most likely due to increased memory consumption. |
|
Bug related to zlib-ng is still not fixed. |
|
We need help to make it production ready. |
|
I can't understand - if hualloc still consumes 4x more memory as in #31376 (comment) in exchange for 10% speedup - do you expect that customers will approve that exchange?! |
|
It maybe due to some easy case that will be easy to fix. We just need to figure out - why it has 4x more memory consumption. |
|
Note: the issue with zlib-ng should be definitely trivial to fix. |
For some queries it gives around 1.5x speedup. |
|
The issue with zlib-ng is fixed. |
|
@Mergifyio update |
✅ Branch has been successfully updated |
|
Looks like reclaim thread did not help. |
|
Let's finally close this PR, because it is difficult to merge. |
Changelog category (leave one):
Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
Try experimental
huallocmemory allocator from Yandex.