[LU-13258] Bind linux workqueues to specific core Created: 17/Feb/20  Updated: 27/May/20  Resolved: 27/May/20

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.14.0
Fix Version/s: Lustre 2.14.0

Type: Improvement Priority: Minor
Reporter: James A Simmons Assignee: James A Simmons
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Related
is related to LU-9859 libcfs simplification Open
is related to LU-12043 improve Lustre single thread read per... Resolved
is related to LU-12748 parallel readahead needs to be optimi... Resolved
is related to LU-9441 Use kernel threads in predictable fas... Resolved
Rank (Obsolete): 9223372036854775807

 Description   

Recently Lustre has moved to using work queue but the trade off is that the work queues can run on any core. This will introduce noise which on clients means it has an performance impact on users application runs. The linux kernel offers a way to make binding to specific core possible with the function apply_workqueue_attrs() which can be passed a cpumask.

 



 Comments   
Comment by Gerrit Updater [ 17/Feb/20 ]

James Simmons (jsimmons@infradead.org) uploaded a new patch: https://review.whamcloud.com/37613
Subject: LU-13258 libcfs: make apply_workqueue_attrs() available for Lustre
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 3b6469dfb8d9ade856abd3f429f32abed64023e3

Comment by James A Simmons [ 20/Feb/20 ]

Both the read-ahead queue and the ptlrpc pinger would be good to bind to cores laid out by CPT handling. Their is also obd zombie cleanup but that I'm not so sure about.

Comment by Gerrit Updater [ 25/Feb/20 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/37613/
Subject: LU-13258 libcfs: make apply_workqueue_attrs() available for Lustre
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 3453c95f513cd9d65f8e74e64d10d8942d934f01

Comment by Gerrit Updater [ 25/Feb/20 ]

James Simmons (jsimmons@infradead.org) uploaded a new patch: https://review.whamcloud.com/37717
Subject: LU-13258 llite: bind readahead workqueue to CPT set
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 2a2918a6fedd80b5fe0c2745777f73ff68a31a3c

Comment by Peter Jones [ 25/Feb/20 ]

Landed for 2.14

Comment by James A Simmons [ 25/Feb/20 ]

More work. The patch that landed was the base patch.

Comment by Gerrit Updater [ 25/Feb/20 ]

Neil Brown (neilb@suse.de) uploaded a new patch: https://review.whamcloud.com/37727
Subject: LU-13258 libcfs: fixes for cfs_arch_init()
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 55b95eadabfb4079fcd41906f2638abce7bcaca4

Comment by Gerrit Updater [ 05/Mar/20 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/37727/
Subject: LU-13258 libcfs: fixes for cfs_arch_init()
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 0fcf9378b524ded3ad260f3b655671c541e5a0b2

Comment by James A Simmons [ 05/Mar/20 ]

more patches coming

Comment by Gerrit Updater [ 27/Mar/20 ]

James Simmons (jsimmons@infradead.org) uploaded a new patch: https://review.whamcloud.com/38091
Subject: LU-13258 ptlrpc: bind pinger workqueue to CPT set
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 74307004eebc61d622001b89352d7145ed2181f8

Comment by Gerrit Updater [ 07/Apr/20 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/37717/
Subject: LU-13258 llite: bind readahead workqueue to CPT set
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 21ccfd99de46e1ca1572b16db0d3cef9cd805f4f

Comment by Gerrit Updater [ 13/Apr/20 ]

James Simmons (jsimmons@infradead.org) uploaded a new patch: https://review.whamcloud.com/38212
Subject: LU-13258 obdclass: bind zombie export cleanup workqueue
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 92efb9c6b6af6366110cf2fae9852fb64ec525e0

Comment by Gerrit Updater [ 14/Apr/20 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/38091/
Subject: LU-13258 ptlrpc: bind pinger workqueue to CPT set
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 8a43201a2f35f6210d7feb7fd02b79233dd6da6b

Comment by Gerrit Updater [ 27/May/20 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/38212/
Subject: LU-13258 obdclass: bind zombie export cleanup workqueue
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 76b602c2bfe9d1b0ddaa14997a3056b19b3e90aa

Generated at Sat Feb 10 02:59:45 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.