On Wed, Apr 16 2008, Andi Kleen wrote: > Chris Mason wrote: > > On Wednesday 16 April 2008, Andi Kleen wrote: > >> Chris Mason <chris.mason@xxxxxxxxxx> writes: > >>> On Wednesday 16 April 2008, Andi Kleen wrote: > >>>> Chris Mason <chris.mason@xxxxxxxxxx> writes: > >>>>> The async work queues include code to checksum data pages without the > >>>>> FS mutex > >>>> Are they able to distribute work to other cores? > >>> Yes, it just uses a workqueue. > >> Unfortunately work queues don't do that by default currently. They > >> tend to process on the current CPU only. > > > > Well, I see multiple work queue threads using CPU time, but I haven't spent > > much time optimizing it. There's definitely room for improvement. > > That's likely because you submit from multiple CPUs. But with a single > submitter running on a single CPU there shouldn't be any load balancing > currently. There have been various implementations of queue_work_on() posted through the years, I've had one version that I've used off and on for a long time: http://git.kernel.dk/?p=linux-2.6-block.git;a=commit;h=c68c42fd6df96f5b3fb5b8b47c571f233d054c71 then you need some balancing decider on top of that, of course. -- Jens Axboe -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
