mirror of
https://github.com/haproxy/haproxy.git
synced 2026-04-23 07:08:06 -04:00
MINOR: task: align the rq and wq locks
We really don't want them to share the same cache line as they are expected to be used in parallel. Adding a 64-byte alignment here shows a performance increase of about 4.5% on task-intensive workloads with 2 to 4 threads.
This commit is contained in:
parent
6d1222ce73
commit
a24d1d0be4
1 changed files with 2 additions and 2 deletions
|
|
@ -40,8 +40,8 @@ unsigned int niced_tasks = 0; /* number of niced tasks in the run queue */
|
|||
|
||||
THREAD_LOCAL struct task *curr_task = NULL; /* task currently running or NULL */
|
||||
|
||||
__decl_hathreads(HA_SPINLOCK_T rq_lock); /* spin lock related to run queue */
|
||||
__decl_hathreads(HA_SPINLOCK_T wq_lock); /* spin lock related to wait queue */
|
||||
__decl_hathreads(HA_SPINLOCK_T __attribute__((aligned(64))) rq_lock); /* spin lock related to run queue */
|
||||
__decl_hathreads(HA_SPINLOCK_T __attribute__((aligned(64))) wq_lock); /* spin lock related to wait queue */
|
||||
|
||||
static struct eb_root timers; /* sorted timers tree */
|
||||
static struct eb_root rqueue; /* tree constituting the run queue */
|
||||
|
|
|
|||
Loading…
Reference in a new issue