ceph / ceph/ceph-nvmeof

cpu affinity should be supported for the threads of io_context_pool and msgr-worker-*

Open
#38 3 comments 0 reactions 0 assignees View on GitHub
performance
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.