envoyproxy / envoyproxy/envoy

Allow worker CPU affinity to be set

Open
#14,619 8 comments 0 reactions 0 assignees View on GitHub
area/perf help wanted
Dominant language
C++
Stars
28.9k
Forks
5.6k
Avg merge
1d 22h
Merged PRs (30d)
430

Description

I was wondering is there any feature/API that could bind the worker to a dedicated CPU? Something like code in ```tools/perf/bench/epoll-wait.c```
```
if (!noaffinity) {
CPU_ZERO(&cpuset);
CPU_SET(cpu->map[i % cpu->nr], &cpuset);

ret = pthread_attr_setaffinity_np(&thread_attr, sizeof(cpu_set_t), &cpuset);
if (ret)
err(EXIT_FAILURE, "pthread_attr_setaffinity_np");

attrp = &thread_attr;
}

ret = pthread_create(&w->thread, attrp, workerfn,
(void *)(struct worker *) w);
```

Thanks~

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.