Monday, August 14, 2017

Get ready in "Multi-Core War"

The "Multi-Core War", which was expected to happen soon when first dual core cpu came to pc world decade ago, does not happen due to a lot of reason, unlike the cpu in mobile world, cpu number grows up rapidly in 2~3 years, your mobile phone may has more cpus than what your working pc has. But thanks to AMD, Intel is finally moving his step to the war zone. Likely, customer in mobile platform or desktop platform would get 4cores/8threads and even more core/thread cpu in reasonable price at the end of this year or next year.

Meanwhile, the task scheduler in OS, should be prepared to take advantage of new hardware in this "Multi-Core War". VRQ, in particular, was applied with a lot of cpumask based algorithm, which is scalable with the growing cpus, but there are still some bottlenecks which has to loop over each cpu. In the incoming release of VRQ, I will try to address these bottlenecks and hopefully play a better position in the "War".

PS, as you may noticed that the name of VRQ(/BFS) is now not longer suit for the design of this scheduler code, and it should deserve a proper name, but it is the last thing in my list(feature >> naming), :)

7 comments:

  1. [OFF-TOPIC]:
    @post-factum/ Oleksandr Natalenko: Regarding the BFQ I/O scheduler:
    Did Paolo Valente already send to you or posted somewhere his recent improvements for 4.12 kernels? I still can't find them in the usual places. Have you tried backporting and like to share eventual results?

    Thank you in advance for any answer,
    BR, Manuel Krause

    ReplyDelete
    Replies
    1. Everything that was posted to linux-block ML was also applied to -pf.

      I hadn't enough patience to adopt those patches posted on BFQ forum recently yet.

      Delete
    2. Thank you for your reply. Maybe we'd just wait for Paolo and his team to provide their own authorised patches. Atm. I'm a bit unlucky about the branches not beeing synchronous, but I need to try to be patient. ;-)

      BR, Manuel Krause

      Delete
  2. @Alfred:
    Has that been a call for proposing possible future names of evolved "VRQ"? What did "VRQ" mean?
    I have read all about how Con came to "MuQSS" and his later explanations on how to pronounce it. Maybe you want to avoid this kind of discussion, so decide wisely.
    TsCSA == "The smoothest Cpu Scheduler Available" @google only competing with poker stars. For me as a non-native speaker it's quite difficult to find abbreviations that may even be pronounced as nice words and don't have a tradmark.

    BR, Manuel Krause

    ReplyDelete
    Replies
    1. > What did "VRQ" mean?
      Its from Alfred's very first post in Aug 2014: Variable Run Queue [Locking]
      :-)

      Delete
    2. Yes, the fact now, there is no Variable run queue concept anymore in current code. It's a multi-queue design now. So may be "balabala-mq scheduler", the "-mq" subfix is so hot recently, :)

      Delete
  3. ACMqS. Because taking author's name is always a win.

    ReplyDelete