Re: [PATCH v4 3/5] locking/qspinlock: Introduce CNA into the slow path of qspinlock

2019-09-19 Thread Waiman Long
On 9/19/19 11:55 AM, Alex Kogan wrote: >>> +/* >>> + * cna_try_find_next - scan the main waiting queue looking for the first >>> + * thread running on the same NUMA node as the lock holder. If found (call >>> it >>> + * thread T), move all threads in the main queue between the lock holder >>>

Re: [PATCH v4 3/5] locking/qspinlock: Introduce CNA into the slow path of qspinlock

2019-09-19 Thread Alex Kogan
>> +/* >> + * cna_try_find_next - scan the main waiting queue looking for the first >> + * thread running on the same NUMA node as the lock holder. If found (call >> it >> + * thread T), move all threads in the main queue between the lock holder and >> + * T to the end of the secondary queue and

Re: [PATCH v4 3/5] locking/qspinlock: Introduce CNA into the slow path of qspinlock

2019-09-17 Thread Waiman Long
On 9/6/19 10:25 AM, Alex Kogan wrote: > In CNA, spinning threads are organized in two queues, a main queue for > threads running on the same node as the current lock holder, and a > secondary queue for threads running on other nodes. At the unlock time, > the lock holder scans the main queue

[PATCH v4 3/5] locking/qspinlock: Introduce CNA into the slow path of qspinlock

2019-09-06 Thread Alex Kogan
In CNA, spinning threads are organized in two queues, a main queue for threads running on the same node as the current lock holder, and a secondary queue for threads running on other nodes. At the unlock time, the lock holder scans the main queue looking for a thread running on the same node. If