Thread (39 messages) 39 messages, 8 authors, 2017-04-11

Re: Page allocator order-0 optimizations merged

From: Jesper Dangaard Brouer <hidden>
Date: 2017-03-28 08:29:18
Also in: linux-mm

On Tue, 28 Mar 2017 10:32:19 +0300
Tariq Toukan [off-list ref] wrote:
On 27/03/2017 4:32 PM, Mel Gorman wrote:
quoted
On Mon, Mar 27, 2017 at 02:39:47PM +0200, Jesper Dangaard Brouer wrote:  
quoted
On Mon, 27 Mar 2017 10:55:14 +0200
Jesper Dangaard Brouer [off-list ref] wrote:
 
quoted
A possible solution, would be use the local_bh_{disable,enable} instead
of the {preempt_disable,enable} calls.  But it is slower, using numbers
from [1] (19 vs 11 cycles), thus the expected cycles saving is 38-19=19.

The problematic part of using local_bh_enable is that this adds a
softirq/bottom-halves rescheduling point (as it checks for pending
BHs).  Thus, this might affects real workloads.  
I implemented this solution in patch below... and tested it on mlx5 at
50G with manually disabled driver-page-recycling.  It works for me.

To Mel, that do you prefer... a partial-revert or something like this?
 
If Tariq confirms it works for him as well, this looks far safer patch  
Great.
I will test Jesper's patch today in the afternoon.
Good to hear :-)
quoted
than having a dedicate IRQ-safe queue. Your concern about the BH
scheduling point is valid but if it's proven to be a problem, there is
still the option of a partial revert.
I wanted to evaluate my own BH scheduling point concern, but I could
not, because I ran into a softirq acct regression (which I bisected
see[1]).  AFAIK this should not affect Tariq's multi-TCP-stream test
(netperf TCP stream testing works fine on my testlab).

[1] http://lkml.kernel.org/r/20170328101403.34a82fbf@redhat.com
-- 
Best regards,
  Jesper Dangaard Brouer
  MSc.CS, Principal Kernel Engineer at Red Hat
  LinkedIn: http://www.linkedin.com/in/brouer

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help