|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] [PATCH 0 of 5] Add credit2 scheduler (EXPERIMENTAL)
On Thu, Apr 15, 2010 at 10:17 AM, George Dunlap
<george.dunlap@xxxxxxxxxxxxx> wrote:
> Dulloor wrote:
>>
>> As we talked before, I am interested in improving the mutiple-socket
>> scenario and adding the load balancing functionalilty, which could
>> provide an acceptable alternative to pinning vcpus to sockets (for my
>> NUMA work). I am going over your patch right now, but what are your
>> thoughts ?
>>
>
> That would be great -- my focus for the next several months will be setting
> up a testing infrastructure to automatically test performance of different
> workloads mixes so I can hone the algorithm and test regressions.
>
> My idea with load balancing was to do this:
> * One runqueue per L2 cache.
> * Add code to calculate the load of a runqueue. Load would be the average
> (~integral) of (vcpus running + vcpus on runqueue). I was planning on doing
> accurate load calculation, rather than sample-based, and falling back to
> sample-based if accurate turned out to be too slow.
> * Calculate the load contributed by various vcpus.
> * At regular intervals, determine of some kind of balancing needs to be done
> by looking at the overall runqueue load and placing based on "contributory"
> load of each VCPU.
>
> Does that make sense? Thoughts?
Sounds good. I can see that the runq_map for all cpus point to the
same run-queue (in make_runq_map). I will start there.
>
> I have some old patches that calculated accurate load, I could dig them up
> if you wanted something to start with. (I don't think they'll apply cleanly
> at the moment.)
>
> Thanks,
> -George
>>
>> -dulloor
>>
>> On Wed, Apr 14, 2010 at 6:26 AM, George Dunlap
>> <george.dunlap@xxxxxxxxxxxxx> wrote:
>>
>>>
>>> This patch series introduces the credit2 scheduler. The first two
>>> patches
>>> introduce changes necessary to allow the credit2 shared runqueue
>>> functionality
>>> to work properly; the last two implement the functionality itself.
>>>
>>> The scheduler is still in the experimental phase. There's lots of
>>> opportunity to contribute with independent lines of development; email
>>> George Dunlap <george.dunlap@xxxxxxxxxxxxx> or check out the wiki page
>>> http://wiki.xensource.com/xenwiki/Credit2_Scheduler_Development for ideas
>>> and status updates.
>>>
>>> 19 files changed, 1453 insertions(+), 21 deletions(-)
>>> tools/libxc/Makefile | 1
>>> tools/libxc/xc_csched2.c | 50 +
>>> tools/libxc/xenctrl.h | 8
>>> tools/python/xen/lowlevel/xc/xc.c | 58 +
>>> tools/python/xen/xend/XendAPI.py | 3
>>> tools/python/xen/xend/XendDomain.py | 54 +
>>> tools/python/xen/xend/XendDomainInfo.py | 4
>>> tools/python/xen/xend/XendNode.py | 4
>>> tools/python/xen/xend/XendVMMetrics.py | 1
>>> tools/python/xen/xend/server/SrvDomain.py | 14
>>> tools/python/xen/xm/main.py | 82 ++
>>> xen/arch/ia64/vmx/vmmu.c | 6
>>> xen/common/Makefile | 1
>>> xen/common/sched_credit.c | 8
>>> xen/common/sched_credit2.c | 1125
>>> +++++++++++++++++++++++++++++
>>> xen/common/schedule.c | 22
>>> xen/include/public/domctl.h | 4
>>> xen/include/public/trace.h | 1
>>> xen/include/xen/sched-if.h | 28
>>>
>>> _______________________________________________
>>> Xen-devel mailing list
>>> Xen-devel@xxxxxxxxxxxxxxxxxxx
>>> http://lists.xensource.com/xen-devel
>>>
>>>
>
>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
Message not available
Message not available
|
|
|
|
|