-
Notifications
You must be signed in to change notification settings - Fork 706
Slot allocator #22213
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Slot allocator #22213
Conversation
7aae5e7
to
66585cd
Compare
@@ -128,6 +128,11 @@ namespace NInterconnect::NRdma { | |||
return mr->rkey; | |||
} | |||
|
|||
void TMemRegion::Resize(uint32_t newSize) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
noexcept?
Chains[GetChainIndex(1 << i)].Init(1 << i); | ||
} | ||
} | ||
~TSlotMemPoolCache() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to return Chain in to global pool. In real case sets of threads is changed during pdisk restart.
Stopped = true; | ||
} | ||
TMemRegion* AllocImpl(int size, ui32 flags, TSlotMemPool& pool) noexcept { | ||
Y_UNUSED(flags); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to support alignment of start address.
@@ -5,10 +5,13 @@ | |||
#include <ydb/library/actors/interconnect/rdma/ibdrv/include/infiniband/verbs.h> | |||
|
|||
#include <util/thread/lfstack.h> | |||
#include <util/thread/lfqueue.h> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we do not need it if lfstack is used
Changelog entry
...
Changelog category
Description for reviewers
...