Ray Of Hope

Introduction of runqueue per cpupool for credit2 scheduler – Xen

Current infrastructure in Xen allows only a global runqueue flags that will be applicable to all the cpupools (schedulers, there is 1:1 correspondence between cpupools and scheduler instance running in a system).

for eg. if we have selected configuration of runqueue as socket, then all the cpupools created will have the runqueue per cpupool.

This was constraint which me and Dario wanted to address as it can help user to run specific workload on specific set of cpus grouped in a cpupool.

So, I implemented this solution where runqueue can be specified per cpupool at the time of cpupool creation.

Patches upstreamed for comments:
https://lists.xenproject.org/archives/html/xen-devel/2017-09/msg01552.html : Intro
https://lists.xenproject.org/archives/html/xen-devel/2017-09/msg01553.html : libxl related changes
https://lists.xenproject.org/archives/html/xen-devel/2017-09/msg01554.html : libxc related changes.
https://lists.xenproject.org/archives/html/xen-devel/2017-09/msg01555.html : xen related changes.

some helpful commands:
Xl dmesg
Xl cpupool-list
Xl cpupool-create name=\”test_sock\” sched=\”credit2\” runq=\”socket\”
Xl cpupool-cpu-add test_sock 6
xl cpupool-cpu-remove test_sock 4

please share your comments:

Tags: , ,

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.