[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 0/6] xen: sched: control structure memory layout optimizations
Hi, This series contains some (micro)optimization patches that were lying around in my local branches for some time. In some more details: - patches 1 and 2 get rid of (potentially) big static arrays inside Credit2's data structure, by making them dynamic, or per-CPU variables; - patches 3, 4 and 5, reorder the fields in the schedulers' control structures. The main goal is optimize memory layout (e.g., reduce/avoid padding) and cache layout (related fields, that are accessed close to each other, in the same cacheline). While there, I'm also trying to improve code readability and comment wording, style and alignment; - patch 7, speeds up tickling in Credit1 and Credit2, in presence of 1:1 vCPU to pCPU pinning. For finding holes, and visualizing the cache layout, I've used pahole. Individual changelogs of patches 3-6 have the details about the actual improvements. There's a git branch available here: git://xenbits.xen.org/people/dariof/xen.git rel/sched/datas-mem-cache-optim http://xenbits.xen.org/gitweb/?p=people/dariof/xen.git;a=shortlog;h=refs/heads/rel/sched/datas-mem-cache-optim Thanks and Regards, Dario --- Dario Faggioli (6): xen: credit2: allocate runqueue data structure dynamically xen: credit2: make the cpu to runqueue map per-cpu xen: credit: rearrange members of control structures xen: credit2: rearrange members of control structures xen: RTDS: rearrange members of control structures xen: sched: optimize exclusive pinning case (Credit1 & 2) xen/common/sched_credit.c | 60 +++++++++++---- xen/common/sched_credit2.c | 170 +++++++++++++++++++++++++----------------- xen/common/sched_rt.c | 13 ++- xen/include/xen/perfc_defn.h | 1 4 files changed, 156 insertions(+), 88 deletions(-) -- <<This happens because I choose it to happen!>> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://about.me/dario.faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |