lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ce4f4f7a-6033-4354-972e-2a066f8d5190@amd.com>
Date: Fri, 14 Feb 2025 09:03:57 +0530
From: K Prateek Nayak <kprateek.nayak@....com>
To: zihan zhou <15645113830zzh@...il.com>
CC: <bsegall@...gle.com>, <dietmar.eggemann@....com>, <juri.lelli@...hat.com>,
	<linux-kernel@...r.kernel.org>, <mgorman@...e.de>, <mingo@...hat.com>,
	<peterz@...radead.org>, <rostedt@...dmis.org>, <vincent.guittot@...aro.org>,
	<vschneid@...hat.com>, "Gautham R. Shenoy" <gautham.shenoy@....com>
Subject: Re: [PATCH V3 1/2] sched: Reduce the default slice to avoid tasks
 getting an extra tick

Hello Zhou,

I'll leave some testing data below but overall, in my testing with
CONFIG_HZ=250 and CONFIG_HZ=10000, I cannot see any major regressions
(at least not for any stable data point) There are few small regressions
probably as a result of grater opportunity for wakeup preemption since
RUN_TO_PARITY will work for a slightly shorter duration now but I
haven't dug deeper to confirm if they are run to run variation or a
result of the larger number of wakeup preemption.

Since most servers run with CONFIG_HZ=250, and the tick is anyways 4ms
and with default base slice currently at 3ms, I don't think there will
be any discernible difference in most workloads (fingers crossed)

Please find full data below.

On 2/8/2025 1:23 PM, zihan zhou wrote:
> The old default value for slice is 0.75 msec * (1 + ilog(ncpus)) which
> means that we have a default slice of
> 0.75 for 1 cpu
> 1.50 up to 3 cpus
> 2.25 up to 7 cpus
> 3.00 for 8 cpus and above.
> 
> For HZ=250 and HZ=100, because of the tick accuracy, the runtime of
> tasks is far higher than their slice.
> 
> For HZ=1000 with 8 cpus or more, the accuracy of tick is already
> satisfactory, but there is still an issue that tasks will get an extra
> tick because the tick often arrives a little faster than expected. In
> this case, the task can only wait until the next tick to consider that it
> has reached its deadline, and will run 1ms longer.
> 
> vruntime + sysctl_sched_base_slice =     deadline
>          |-----------|-----------|-----------|-----------|
>               1ms          1ms         1ms         1ms
>                     ^           ^           ^           ^
>                   tick1       tick2       tick3       tick4(nearly 4ms)
> 
> There are two reasons for tick error: clockevent precision and the
> CONFIG_IRQ_TIME_ACCOUNTING/CONFIG_PARAVIRT_TIME_ACCOUNTING. with
> CONFIG_IRQ_TIME_ACCOUNTING every tick will be less than 1ms, but even
> without it, because of clockevent precision, tick still often less than
> 1ms.
> 
> In order to make scheduling more precise, we changed 0.75 to 0.70,
> Using 0.70 instead of 0.75 should not change much for other configs
> and would fix this issue:
> 0.70 for 1 cpu
> 1.40 up to 3 cpus
> 2.10 up to 7 cpus
> 2.8 for 8 cpus and above.
> 
> This does not guarantee that tasks can run the slice time accurately
> every time, but occasionally running an extra tick has little impact.
> 
> Signed-off-by: zihan zhou <15645113830zzh@...il.com>
> Reviewed-by: Vincent Guittot <vincent.guittot@...aro.org>


o System Details

- 3rd Generation EPYC System
- 2 x 64C/128T
- NPS1 mode
- Boost Enabled
- C2 disabled; POLL and MWAIT based C1 remained enabled

o Kernels

mainline:		For CONFIG_HZ=250 runs:
			mainline kernel at commit 0de63bb7d919 ("Merge
			tag 'pull-fix' of
			git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs")

			For CONFIG_HZ=1000 runs it was v6.14-rc2

new_base_slice:		respective mainline + Patch 1

o Benchmark results (CONFIG_HZ=250)

==================================================================
Test          : hackbench
Units         : Normalized time in seconds
Interpretation: Lower is better
Statistic     : AMean
==================================================================
Case:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
  1-groups     1.00 [ -0.00]( 9.88)     1.09 [ -9.19](11.57)
  2-groups     1.00 [ -0.00]( 3.49)     0.97 [  2.91]( 4.51)
  4-groups     1.00 [ -0.00]( 1.22)     0.99 [  1.04]( 2.47)
  8-groups     1.00 [ -0.00]( 0.80)     1.01 [ -1.10]( 1.81)
16-groups     1.00 [ -0.00]( 1.40)     1.01 [ -0.50]( 0.92)


==================================================================
Test          : tbench
Units         : Normalized throughput
Interpretation: Higher is better
Statistic     : AMean
==================================================================
Clients:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
     1     1.00 [  0.00]( 1.14)     0.99 [ -1.46]( 0.41)
     2     1.00 [  0.00]( 1.57)     1.01 [  1.12]( 0.53)
     4     1.00 [  0.00]( 1.16)     0.99 [ -0.79]( 0.50)
     8     1.00 [  0.00]( 0.84)     0.98 [ -1.51]( 0.71)
    16     1.00 [  0.00]( 0.63)     0.97 [ -3.20]( 0.82)
    32     1.00 [  0.00]( 0.96)     0.99 [ -1.36]( 0.86)
    64     1.00 [  0.00]( 0.52)     0.97 [ -2.95]( 3.36)
   128     1.00 [  0.00]( 0.83)     0.99 [ -1.30]( 1.00)
   256     1.00 [  0.00]( 0.67)     1.00 [ -0.45]( 0.49)
   512     1.00 [  0.00]( 0.03)     1.00 [ -0.20]( 0.67)
  1024     1.00 [  0.00]( 0.19)     1.00 [ -0.14]( 0.24)


==================================================================
Test          : stream-10
Units         : Normalized Bandwidth, MB/s
Interpretation: Higher is better
Statistic     : HMean
==================================================================
Test:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
  Copy     1.00 [  0.00](15.75)     1.21 [ 20.54]( 7.80)
Scale     1.00 [  0.00]( 7.43)     1.00 [  0.48]( 6.22)
   Add     1.00 [  0.00](10.35)     1.08 [  7.98]( 6.29)
Triad     1.00 [  0.00]( 9.34)     1.09 [  9.09]( 6.91)


==================================================================
Test          : stream-100
Units         : Normalized Bandwidth, MB/s
Interpretation: Higher is better
Statistic     : HMean
==================================================================
Test:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
  Copy     1.00 [  0.00]( 2.19)     1.05 [  5.06]( 2.16)
Scale     1.00 [  0.00]( 6.17)     1.02 [  1.65]( 4.07)
   Add     1.00 [  0.00]( 5.88)     1.04 [  3.81]( 1.07)
Triad     1.00 [  0.00]( 1.40)     1.00 [  0.06]( 3.79)


==================================================================
Test          : netperf
Units         : Normalized Througput
Interpretation: Higher is better
Statistic     : AMean
==================================================================
Clients:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
  1-clients     1.00 [  0.00]( 0.14)     0.98 [ -1.66]( 0.64)
  2-clients     1.00 [  0.00]( 0.85)     0.98 [ -1.52]( 0.82)
  4-clients     1.00 [  0.00]( 0.77)     0.98 [ -1.72]( 0.77)
  8-clients     1.00 [  0.00]( 0.53)     0.98 [ -1.60]( 0.59)
16-clients     1.00 [  0.00]( 0.91)     0.98 [ -1.79]( 0.74)
32-clients     1.00 [  0.00]( 0.99)     0.99 [ -1.32]( 0.99)
64-clients     1.00 [  0.00]( 1.35)     0.99 [ -1.43]( 1.39)
128-clients     1.00 [  0.00]( 1.20)     0.99 [ -1.17]( 1.22)
256-clients     1.00 [  0.00]( 4.41)     0.99 [ -1.07]( 4.95)
512-clients     1.00 [  0.00](59.74)     1.00 [ -0.17](59.70)


==================================================================
Test          : schbench
Units         : Normalized 99th percentile latency in us
Interpretation: Lower is better
Statistic     : Median
==================================================================
#workers:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
   1     1.00 [ -0.00]( 7.39)     1.02 [ -2.38](35.97)
   2     1.00 [ -0.00](10.14)     1.02 [ -2.22]( 7.22)
   4     1.00 [ -0.00]( 3.53)     1.08 [ -8.33]( 3.27)
   8     1.00 [ -0.00](11.48)     0.91 [  8.93]( 4.97)
  16     1.00 [ -0.00]( 7.02)     0.98 [  1.72]( 6.22)
  32     1.00 [ -0.00]( 3.79)     0.97 [  3.23]( 2.53)
  64     1.00 [ -0.00]( 8.22)     0.99 [  0.57]( 2.31)
128     1.00 [ -0.00]( 4.38)     0.92 [  8.25](87.57)
256     1.00 [ -0.00](19.81)     1.27 [-27.13](13.43)
512     1.00 [ -0.00]( 2.41)     1.00 [ -0.00]( 2.73)


==================================================================
Test          : new-schbench-requests-per-second
Units         : Normalized Requests per second
Interpretation: Higher is better
Statistic     : Median
==================================================================
#workers:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
   1     1.00 [  0.00]( 0.00)     0.97 [ -2.64]( 0.68)
   2     1.00 [  0.00]( 0.00)     1.00 [  0.00]( 0.15)
   4     1.00 [  0.00]( 0.15)     1.00 [  0.00]( 0.15)
   8     1.00 [  0.00]( 0.00)     1.00 [  0.00]( 0.15)
  16     1.00 [  0.00]( 0.00)     1.00 [  0.00]( 0.00)
  32     1.00 [  0.00]( 0.42)     0.99 [ -0.92]( 3.95)
  64     1.00 [  0.00]( 2.45)     1.03 [  3.09](15.04)
128     1.00 [  0.00]( 0.20)     1.00 [  0.00]( 0.00)
256     1.00 [  0.00]( 0.84)     1.01 [  0.92]( 0.54)
512     1.00 [  0.00]( 0.97)     0.99 [ -0.72]( 0.75)


==================================================================
Test          : new-schbench-wakeup-latency
Units         : Normalized 99th percentile latency in us
Interpretation: Lower is better
Statistic     : Median
==================================================================
#workers:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
   1     1.00 [ -0.00](12.81)     0.91 [  9.09](14.13)
   2     1.00 [ -0.00]( 8.85)     1.00 [ -0.00]( 4.84)
   4     1.00 [ -0.00](21.61)     0.86 [ 14.29]( 4.43)
   8     1.00 [ -0.00]( 8.13)     0.91 [  9.09](18.23)
  16     1.00 [ -0.00]( 4.08)     1.00 [ -0.00]( 8.37)
  32     1.00 [ -0.00]( 4.43)     1.00 [ -0.00](21.56)
  64     1.00 [ -0.00]( 4.71)     1.00 [ -0.00](10.16)
128     1.00 [ -0.00]( 2.35)     0.93 [  7.11]( 6.69)
256     1.00 [ -0.00]( 1.52)     1.02 [ -1.60]( 1.51)
512     1.00 [ -0.00]( 0.40)     1.01 [ -1.17]( 0.34)


==================================================================
Test          : new-schbench-request-latency
Units         : Normalized 99th percentile latency in us
Interpretation: Lower is better
Statistic     : Median
==================================================================
#workers:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
   1     1.00 [ -0.00]( 2.46)     1.04 [ -3.67]( 0.35)
   2     1.00 [ -0.00]( 3.16)     1.00 [ -0.26]( 0.13)
   4     1.00 [ -0.00]( 3.16)     0.95 [  4.60]( 2.82)
   8     1.00 [ -0.00]( 1.00)     1.05 [ -4.81]( 0.00)
  16     1.00 [ -0.00]( 3.77)     1.01 [ -0.80]( 2.44)
  32     1.00 [ -0.00]( 1.94)     1.06 [ -6.24](27.22)
  64     1.00 [ -0.00]( 1.07)     0.99 [  1.29]( 0.68)
128     1.00 [ -0.00]( 0.44)     1.01 [ -0.62]( 0.32)
256     1.00 [ -0.00]( 7.02)     1.04 [ -4.45]( 7.53)
512     1.00 [ -0.00]( 1.10)     1.01 [ -1.02]( 2.59)


==================================================================
Test          : longer running benchmarks
Units         : Normalized throughput
Interpretation: Higher is better
Statistic     : Median
==================================================================
Benchmark		pct imp
ycsb-cassandra          -1.14%
ycsb-mongodb            -0.84%
deathstarbench-1x       -4.13%
deathstarbench-2x       -3.93%
deathstarbench-3x       -1.27%
deathstarbench-6x       -0.10%
mysql-hammerdb-64VU     -0.37%
---

o Benchmark results (CONFIG_HZ=1000)

==================================================================
Test          : hackbench
Units         : Normalized time in seconds
Interpretation: Lower is better
Statistic     : AMean
==================================================================
Case:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
  1-groups     1.00 [ -0.00]( 8.66)     1.05 [ -5.30](16.73)
  2-groups     1.00 [ -0.00]( 5.02)     1.07 [ -6.54]( 7.29)
  4-groups     1.00 [ -0.00]( 1.27)     1.02 [ -1.67]( 3.74)
  8-groups     1.00 [ -0.00]( 2.75)     0.99 [  0.78]( 2.61)
16-groups     1.00 [ -0.00]( 2.02)     0.97 [  2.97]( 1.19)


==================================================================
Test          : tbench
Units         : Normalized throughput
Interpretation: Higher is better
Statistic     : AMean
==================================================================
Clients:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
     1     1.00 [  0.00]( 0.40)     1.00 [ -0.44]( 0.47)
     2     1.00 [  0.00]( 0.49)     0.99 [ -0.65]( 1.39)
     4     1.00 [  0.00]( 0.94)     1.00 [ -0.34]( 0.09)
     8     1.00 [  0.00]( 0.64)     0.99 [ -0.77]( 1.57)
    16     1.00 [  0.00]( 1.04)     0.98 [ -2.00]( 0.98)
    32     1.00 [  0.00]( 1.13)     1.00 [  0.34]( 1.31)
    64     1.00 [  0.00]( 0.58)     1.00 [ -0.28]( 0.80)
   128     1.00 [  0.00]( 1.40)     0.99 [ -0.91]( 0.51)
   256     1.00 [  0.00]( 1.14)     0.99 [ -1.48]( 1.17)
   512     1.00 [  0.00]( 0.51)     1.00 [ -0.25]( 0.66)
  1024     1.00 [  0.00]( 0.62)     0.99 [ -0.79]( 0.40)


==================================================================
Test          : stream-10
Units         : Normalized Bandwidth, MB/s
Interpretation: Higher is better
Statistic     : HMean
==================================================================
Test:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
  Copy     1.00 [  0.00](16.03)     0.98 [ -2.33](17.69)
Scale     1.00 [  0.00]( 6.26)     0.99 [ -0.60]( 7.94)
   Add     1.00 [  0.00]( 8.35)     1.01 [  0.50](11.49)
Triad     1.00 [  0.00]( 9.56)     1.01 [  0.66]( 9.25)


==================================================================
Test          : stream-100
Units         : Normalized Bandwidth, MB/s
Interpretation: Higher is better
Statistic     : HMean
==================================================================
Test:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
  Copy     1.00 [  0.00]( 6.03)     1.02 [  1.58]( 2.27)
Scale     1.00 [  0.00]( 5.78)     1.02 [  1.64]( 4.50)
   Add     1.00 [  0.00]( 5.25)     1.01 [  1.37]( 4.17)
Triad     1.00 [  0.00]( 5.25)     1.03 [  3.35]( 1.18)


==================================================================
Test          : netperf
Units         : Normalized Througput
Interpretation: Higher is better
Statistic     : AMean
==================================================================
Clients:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
  1-clients     1.00 [  0.00]( 0.06)     1.01 [  0.66]( 0.75)
  2-clients     1.00 [  0.00]( 0.80)     1.01 [  0.79]( 0.31)
  4-clients     1.00 [  0.00]( 0.65)     1.01 [  0.56]( 0.73)
  8-clients     1.00 [  0.00]( 0.82)     1.01 [  0.70]( 0.59)
16-clients     1.00 [  0.00]( 0.68)     1.01 [  0.63]( 0.77)
32-clients     1.00 [  0.00]( 0.95)     1.01 [  0.87]( 1.06)
64-clients     1.00 [  0.00]( 1.55)     1.01 [  0.66]( 1.60)
128-clients     1.00 [  0.00]( 1.23)     1.00 [ -0.28]( 1.58)
256-clients     1.00 [  0.00]( 4.92)     1.00 [  0.25]( 4.47)
512-clients     1.00 [  0.00](57.12)     1.00 [  0.24](62.52)


==================================================================
Test          : schbench
Units         : Normalized 99th percentile latency in us
Interpretation: Lower is better
Statistic     : Median
==================================================================
#workers:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
   1     1.00 [ -0.00](27.55)     0.81 [ 19.35](31.80)
   2     1.00 [ -0.00](19.98)     0.87 [ 12.82]( 9.17)
   4     1.00 [ -0.00](10.66)     1.09 [ -9.09]( 6.45)
   8     1.00 [ -0.00]( 4.06)     0.90 [  9.62]( 6.38)
  16     1.00 [ -0.00]( 5.33)     0.98 [  1.69]( 1.97)
  32     1.00 [ -0.00]( 8.92)     0.97 [  3.16]( 1.09)
  64     1.00 [ -0.00]( 6.06)     0.97 [  3.30]( 2.97)
128     1.00 [ -0.00](10.15)     1.05 [ -5.47]( 4.75)
256     1.00 [ -0.00](27.12)     1.00 [ -0.20](13.52)
512     1.00 [ -0.00]( 2.54)     0.80 [ 19.75]( 0.40)


==================================================================
Test          : new-schbench-requests-per-second
Units         : Normalized Requests per second
Interpretation: Higher is better
Statistic     : Median
==================================================================
#workers:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
   1     1.00 [  0.00]( 0.15)     1.00 [  0.00]( 0.46)
   2     1.00 [  0.00]( 0.15)     1.00 [  0.00]( 0.15)
   4     1.00 [  0.00]( 0.15)     1.00 [  0.00]( 0.15)
   8     1.00 [  0.00]( 0.00)     1.00 [  0.00]( 0.15)
  16     1.00 [  0.00]( 0.00)     1.00 [  0.00]( 0.00)
  32     1.00 [  0.00]( 0.43)     1.01 [  0.63]( 0.28)
  64     1.00 [  0.00]( 1.17)     1.00 [  0.00]( 0.20)
128     1.00 [  0.00]( 0.20)     1.00 [  0.00]( 0.20)
256     1.00 [  0.00]( 0.27)     1.00 [  0.00]( 1.69)
512     1.00 [  0.00]( 0.21)     0.95 [ -4.70]( 0.34)


==================================================================
Test          : new-schbench-wakeup-latency
Units         : Normalized 99th percentile latency in us
Interpretation: Lower is better
Statistic     : Median
==================================================================
#workers:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
   1     1.00 [ -0.00](11.08)     1.33 [-33.33](15.78)
   2     1.00 [ -0.00]( 4.08)     1.08 [ -7.69](10.00)
   4     1.00 [ -0.00]( 6.39)     1.21 [-21.43](22.13)
   8     1.00 [ -0.00]( 6.88)     1.15 [-15.38](11.93)
  16     1.00 [ -0.00](13.62)     1.08 [ -7.69](10.33)
  32     1.00 [ -0.00]( 0.00)     1.00 [ -0.00]( 3.87)
  64     1.00 [ -0.00]( 8.13)     1.00 [ -0.00]( 2.38)
128     1.00 [ -0.00]( 5.26)     0.98 [  2.11]( 1.92)
256     1.00 [ -0.00]( 1.00)     0.78 [ 22.36](14.65)
512     1.00 [ -0.00]( 0.48)     0.73 [ 27.15]( 6.75)


==================================================================
Test          : new-schbench-request-latency
Units         : Normalized 99th percentile latency in us
Interpretation: Lower is better
Statistic     : Median
==================================================================
#workers:      mainline[pct imp](CV)    new_base_slice[pct imp](CV)
   1     1.00 [ -0.00]( 1.53)     1.00 [ -0.00]( 1.77)
   2     1.00 [ -0.00]( 0.50)     1.01 [ -1.35]( 1.19)
   4     1.00 [ -0.00]( 0.14)     1.00 [ -0.00]( 0.42)
   8     1.00 [ -0.00]( 0.24)     1.00 [ -0.27]( 1.37)
  16     1.00 [ -0.00]( 0.00)     1.00 [  0.27]( 0.14)
  32     1.00 [ -0.00]( 0.66)     1.01 [ -1.48]( 2.65)
  64     1.00 [ -0.00]( 5.72)     0.96 [  4.32]( 5.64)
128     1.00 [ -0.00]( 0.10)     1.00 [ -0.20]( 0.18)
256     1.00 [ -0.00]( 2.52)     0.96 [  4.04]( 9.70)
512     1.00 [ -0.00]( 0.68)     1.06 [ -5.52]( 0.36)


==================================================================
Test          : longer running benchmarks
Units         : Normalized throughput
Interpretation: Higher is better
Statistic     : Median
==================================================================
Benchmark		pct imp
ycsb-cassandra          -0.64%
ycsb-mongodb             0.56%
deathstarbench-1x        0.30%
deathstarbench-2x        3.21%
deathstarbench-3x        2.18%
deathstarbench-6x       -0.40%
mysql-hammerdb-64VU     -0.63%
---

If folks are interested in how CONFIG_HZ=250 vs CONFIG_HZ=1000 stack up,
here you go (Note, there is slight variation between the two kernels
since CONFIG_HZ=250 version is closer to v6.14-rc1 and CONFIG_HZ=1000
results are based on v6.14-rc2)

o Benchmark results (CONFIG_HZ=250 vs CONFIG_HZ=1000)

==================================================================
Test          : hackbench
Units         : Normalized time in seconds
Interpretation: Lower is better
Statistic     : AMean
==================================================================
Case:      mainline[pct imp](CV)    mainline_1000HZ[pct imp](CV)
  1-groups     1.00 [ -0.00]( 9.88)     1.02 [ -1.57]( 8.66)
  2-groups     1.00 [ -0.00]( 3.49)     0.95 [  4.57]( 5.02)
  4-groups     1.00 [ -0.00]( 1.22)     0.99 [  0.62]( 1.27)
  8-groups     1.00 [ -0.00]( 0.80)     1.00 [ -0.31]( 2.75)
16-groups     1.00 [ -0.00]( 1.40)     0.99 [  1.17]( 2.02)


==================================================================
Test          : tbench
Units         : Normalized throughput
Interpretation: Higher is better
Statistic     : AMean
==================================================================
Clients:      mainline[pct imp](CV)    mainline_1000HZ[pct imp](CV)
     1     1.00 [  0.00]( 1.14)     1.00 [ -0.45]( 0.40)
     2     1.00 [  0.00]( 1.57)     1.01 [  1.40]( 0.49)
     4     1.00 [  0.00]( 1.16)     1.01 [  1.16]( 0.94)
     8     1.00 [  0.00]( 0.84)     1.01 [  1.24]( 0.64)
    16     1.00 [  0.00]( 0.63)     1.00 [ -0.33]( 1.04)
    32     1.00 [  0.00]( 0.96)     1.00 [ -0.30]( 1.13)
    64     1.00 [  0.00]( 0.52)     1.00 [  0.27]( 0.58)
   128     1.00 [  0.00]( 0.83)     1.00 [ -0.45]( 1.40)
   256     1.00 [  0.00]( 0.67)     1.00 [  0.15]( 1.14)
   512     1.00 [  0.00]( 0.03)     0.99 [ -0.73]( 0.51)
  1024     1.00 [  0.00]( 0.19)     0.99 [ -1.29]( 0.62)


==================================================================
Test          : stream-10
Units         : Normalized Bandwidth, MB/s
Interpretation: Higher is better
Statistic     : HMean
==================================================================
Test:      mainline[pct imp](CV)    mainline_1000HZ[pct imp](CV)
  Copy     1.00 [  0.00](15.75)     0.93 [ -6.67](16.03)
Scale     1.00 [  0.00]( 7.43)     0.97 [ -2.70]( 6.26)
   Add     1.00 [  0.00](10.35)     0.94 [ -6.42]( 8.35)
Triad     1.00 [  0.00]( 9.34)     0.92 [ -8.26]( 9.56)


==================================================================
Test          : stream-100
Units         : Normalized Bandwidth, MB/s
Interpretation: Higher is better
Statistic     : HMean
==================================================================
Test:      mainline[pct imp](CV)    mainline_1000HZ[pct imp](CV)
  Copy     1.00 [  0.00]( 2.19)     0.96 [ -3.52]( 6.03)
Scale     1.00 [  0.00]( 6.17)     1.00 [ -0.22]( 5.78)
   Add     1.00 [  0.00]( 5.88)     0.99 [ -1.05]( 5.25)
Triad     1.00 [  0.00]( 1.40)     0.96 [ -3.64]( 5.25)


==================================================================
Test          : netperf
Units         : Normalized Througput
Interpretation: Higher is better
Statistic     : AMean
==================================================================
Clients:      mainline[pct imp](CV)    mainline_1000HZ[pct imp](CV)
  1-clients     1.00 [  0.00]( 0.14)     0.99 [ -0.94]( 0.06)
  2-clients     1.00 [  0.00]( 0.85)     1.00 [ -0.43]( 0.80)
  4-clients     1.00 [  0.00]( 0.77)     0.99 [ -0.63]( 0.65)
  8-clients     1.00 [  0.00]( 0.53)     1.00 [ -0.49]( 0.82)
16-clients     1.00 [  0.00]( 0.91)     0.99 [ -0.55]( 0.68)
32-clients     1.00 [  0.00]( 0.99)     0.99 [ -1.01]( 0.95)
64-clients     1.00 [  0.00]( 1.35)     0.98 [ -1.58]( 1.55)
128-clients     1.00 [  0.00]( 1.20)     0.99 [ -1.38]( 1.23)
256-clients     1.00 [  0.00]( 4.41)     0.99 [ -0.68]( 4.92)
512-clients     1.00 [  0.00](59.74)     0.99 [ -1.16](57.12)


==================================================================
Test          : schbench
Units         : Normalized 99th percentile latency in us
Interpretation: Lower is better
Statistic     : Median
==================================================================
#workers:      mainline[pct imp](CV)    mainline_1000HZ[pct imp](CV)
   1     1.00 [ -0.00]( 7.39)     0.74 [ 26.19](27.55)
   2     1.00 [ -0.00](10.14)     0.87 [ 13.33](19.98)
   4     1.00 [ -0.00]( 3.53)     0.92 [  8.33](10.66)
   8     1.00 [ -0.00](11.48)     0.93 [  7.14]( 4.06)
  16     1.00 [ -0.00]( 7.02)     1.02 [ -1.72]( 5.33)
  32     1.00 [ -0.00]( 3.79)     1.02 [ -2.15]( 8.92)
  64     1.00 [ -0.00]( 8.22)     1.05 [ -4.60]( 6.06)
128     1.00 [ -0.00]( 4.38)     0.91 [  9.48](10.15)
256     1.00 [ -0.00](19.81)     1.01 [ -0.60](27.12)
512     1.00 [ -0.00]( 2.41)     0.91 [  9.45]( 2.54)


==================================================================
Test          : new-schbench-requests-per-second
Units         : Normalized Requests per second
Interpretation: Higher is better
Statistic     : Median
==================================================================
#workers:      mainline[pct imp](CV)    mainline_1000HZ[pct imp](CV)
   1     1.00 [  0.00]( 0.00)     0.99 [ -0.59]( 0.15)
   2     1.00 [  0.00]( 0.00)     1.00 [ -0.29]( 0.15)
   4     1.00 [  0.00]( 0.15)     1.00 [ -0.29]( 0.15)
   8     1.00 [  0.00]( 0.00)     1.00 [ -0.29]( 0.00)
  16     1.00 [  0.00]( 0.00)     1.00 [ -0.29]( 0.00)
  32     1.00 [  0.00]( 0.42)     0.98 [ -1.54]( 0.43)
  64     1.00 [  0.00]( 2.45)     1.03 [  3.09]( 1.17)
128     1.00 [  0.00]( 0.20)     0.98 [ -1.51]( 0.20)
256     1.00 [  0.00]( 0.84)     1.02 [  1.53]( 0.27)
512     1.00 [  0.00]( 0.97)     1.02 [  2.16]( 0.21)


==================================================================
Test          : new-schbench-wakeup-latency
Units         : Normalized 99th percentile latency in us
Interpretation: Lower is better
Statistic     : Median
==================================================================
#workers:      mainline[pct imp](CV)    mainline_1000HZ[pct imp](CV)
   1     1.00 [ -0.00](12.81)     1.09 [ -9.09](11.08)
   2     1.00 [ -0.00]( 8.85)     1.18 [-18.18]( 4.08)
   4     1.00 [ -0.00](21.61)     1.00 [ -0.00]( 6.39)
   8     1.00 [ -0.00]( 8.13)     1.18 [-18.18]( 6.88)
  16     1.00 [ -0.00]( 4.08)     1.00 [ -0.00](13.62)
  32     1.00 [ -0.00]( 4.43)     1.08 [ -8.33]( 0.00)
  64     1.00 [ -0.00]( 4.71)     1.16 [-15.79]( 8.13)
128     1.00 [ -0.00]( 2.35)     0.96 [  3.55]( 5.26)
256     1.00 [ -0.00]( 1.52)     0.80 [ 19.58]( 1.00)
512     1.00 [ -0.00]( 0.40)     0.92 [  8.09]( 0.48)


==================================================================
Test          : new-schbench-request-latency
Units         : Normalized 99th percentile latency in us
Interpretation: Lower is better
Statistic     : Median
==================================================================
#workers:      mainline[pct imp](CV)    mainline_1000HZ[pct imp](CV)
   1     1.00 [ -0.00]( 2.46)     0.99 [  0.52]( 1.53)
   2     1.00 [ -0.00]( 3.16)     0.95 [  5.11]( 0.50)
   4     1.00 [ -0.00]( 3.16)     0.94 [  5.62]( 0.14)
   8     1.00 [ -0.00]( 1.00)     0.99 [  0.80]( 0.24)
  16     1.00 [ -0.00]( 3.77)     0.99 [  0.53]( 0.00)
  32     1.00 [ -0.00]( 1.94)     1.01 [ -1.00]( 0.66)
  64     1.00 [ -0.00]( 1.07)     0.95 [  5.38]( 5.72)
128     1.00 [ -0.00]( 0.44)     1.02 [ -1.65]( 0.10)
256     1.00 [ -0.00]( 7.02)     1.19 [-19.01]( 2.52)
512     1.00 [ -0.00]( 1.10)     0.89 [ 10.56]( 0.68)

==================================================================
Test          : longer running benchmarks
Units         : Normalized throughput
Interpretation: Higher is better
Statistic     : Median
==================================================================
Benchmark		pct imp
ycsb-cassandra          -1.25%
ycsb-mongodb            -1.33%
deathstarbench-1x       -2.27%
deathstarbench-2x       -4.85%
deathstarbench-3x       -0.25%
deathstarbench-6x       -0.86%
mysql-hammerdb-64VU     -1.78%
---

With that overwhelming amount of data out of the way, please feel free
to add:

Tested-by: K Prateek Nayak <kprateek.nayak@....com>

> ---
>   kernel/sched/fair.c | 6 +++---
>   1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
> index 1e78caa21436..34e7d09320f7 100644
> --- a/kernel/sched/fair.c
> +++ b/kernel/sched/fair.c
> @@ -74,10 +74,10 @@ unsigned int sysctl_sched_tunable_scaling = SCHED_TUNABLESCALING_LOG;
>   /*
>    * Minimal preemption granularity for CPU-bound tasks:
>    *
> - * (default: 0.75 msec * (1 + ilog(ncpus)), units: nanoseconds)
> + * (default: 0.70 msec * (1 + ilog(ncpus)), units: nanoseconds)
>    */
> -unsigned int sysctl_sched_base_slice			= 750000ULL;
> -static unsigned int normalized_sysctl_sched_base_slice	= 750000ULL;
> +unsigned int sysctl_sched_base_slice			= 700000ULL;
> +static unsigned int normalized_sysctl_sched_base_slice	= 700000ULL;
>   
>   const_debug unsigned int sysctl_sched_migration_cost	= 500000UL;
>   

-- 
Thanks and Regards,
Prateek


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ