cpu affinity should be supported for the threads of io_context_pool and msgr-worker-*
- Dominant language
- Python
- Stars
- 132
- Forks
- 69
- Avg merge
- 1d 7h
- Merged PRs (30d)
- 47
Description
Hi.
I try to deploy the ceph-nvmeof and do some performance tests. I find that setting the cpu affinity for the threads of io_context_pool and msgr-worker-* can contribute to much higher performance both for the aarch64/x86 machines .
Further more, for aarch64 machines, the performance result showes that deploying the reactor threads and the io_context_pool threads in the same ccl (core cluster, usually 4 cores/ccl) will get better performance that in different ccl. So, implementing this by default and give a parameter for choice in the ceph-nvmeof.conf may help users to get better performance.
Contributor guide
Research direction
No files or tests are named. Start by locating how io_context_pool and msgr-worker-* threads are created and how ceph-nvmeof.conf parameters are handled; compare the requested CPU placement across aarch64 and x86. Done should mean the affinity behavior is implemented with a configuration choice and performance results are checked.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend, performance
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100