]> git.proxmox.com Git - mirror_spl.git/commit - module/spl/spl-taskq.c
Evenly distribute the taskq threads across available CPUs
authorAndrey Vesnovaty <andrey.vesnovaty@gmail.com>
Wed, 28 Aug 2013 02:09:25 +0000 (05:09 +0300)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 25 Apr 2014 22:29:18 +0000 (15:29 -0700)
commit703371d8c734bc2cc6350f1bca014f08245dcc69
tree593c5e83bacee874a2fa25b1745a711fd5f30edf
parentae16ed992bd0ef5a55b04d9edaaa6456674315f9
Evenly distribute the taskq threads across available CPUs

The problem is described in commit aeeb4e0c0ae75b99ebbaa3056f0afc8e12949532.
However, instead of disabling the binding to CPU altogether we just keep the
last CPU index across calls to taskq_create() and thus achieve even
distribution of the taskq threads across all available CPUs.

The implementation based on assumption that task queues initialization
performed in serial manner.

Signed-off-by: Andrey Vesnovaty <andrey.vesnovaty@gmail.com>
Signed-off-by: Andrey Vesnovaty <andreyv@infinidat.com>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #336
man/man5/spl-module-parameters.5
module/spl/spl-taskq.c