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: <4354d3270705181407t6e2d6der396ea3d0fd06f790@mail.gmail.com>
Date:	Sat, 19 May 2007 00:07:28 +0300
From:	"Török Edvin" <edwintorok@...il.com>
To:	"Ingo Molnar" <mingo@...e.hu>
Cc:	mingo@...hat.com, linux-kernel@...r.kernel.org
Subject: Re: CFS Scheduler and real-time tasks

On 5/17/07, Ingo Molnar <mingo@...e.hu> wrote:
> hey, cool! Also try -v13 - it should be even more tighter.

I tried -v13. However the scheduling "error" is now 10% (vs 2% with -v12).

I also noticed strange behaviour with CPU hotplug. I offlined cpu1
(echo 0 >/sys/devices/system/cpu/cpu1/online), and the typing speed on
my terminal decreased noticably. I could hardly type something there.
The system was otherwise idle (running in Xorg, and gnome-terminal).
As soon as I started massive_intr.c workload, the keyboard typing
speed became normal again.  If I have a workload running, while I
offline a CPU the keyboard is fine after cpu1 is offlined.
Also the entire system froze once, when I offlined cpu1. I couldn't
reproduce this.

I don't know how -v12 behaved wrt to CPU hotplug.

> > ./massiv_new 9 300
> > 020860  00017782
> > 020858  00017774
> >
> > RT JOB:020865   00003785
> >
> > 020859  00017048
> > 020862  00017387
> > 020855  00017494
> > 020861  00017245
> > 020863  00017492
> > 020864  00017122

Results with -v13:

edwin@...alhost ~ $ ./mo 9 300
006203  00006071
006198  00005712
006201  00006088
006196  00006208
006200  00006166
006195  00006306
006199  00006403
006197  00006288
006202  00006237

./massiv_new 9 300
013803  00010073
013801  00009889
013804  00010303
013806  00009953
013800  00010010
013802  00010171
013807  00009956
013805  00010037

RT JOB:013808   00002230

Interesting, massiv_new has better precision than massiv_orig.

Just in case it helps, here's me /proc/sched_debug (when system is
idle, and later, when running the test):

Sched Debug Version: v0.02
now at 1187357967816 nsecs

cpu: 0
  .nr_running            : 0
  .raw_weighted_load     : 0
  .nr_switches           : 555712
  .nr_load_updates       : 221754
  .nr_uninterruptible    : 4294967190
  .jiffies               : 221839
  .next_balance          : 221835
  .curr->pid             : 0
  .clock                 : 755701854416
  .prev_clock_raw        : 871997978419
  .clock_warps           : 0
  .clock_unstable_events : 97254
  .clock_max_delta       : 4749235
  .fair_clock            : 184031607224
  .prev_fair_clock       : 0
  .exec_clock            : 749010316890
  .prev_exec_clock       : 0
  .wait_runtime          : 59753136705
  .wait_runtime_overruns : 2689
  .wait_runtime_underruns: 1141
  .cpu_load[0]           : 0
  .cpu_load[1]           : 0
  .cpu_load[2]           : 0
  .cpu_load[3]           : 0
  .cpu_load[4]           : 0
  .wait_runtime_rq_sum   : 0

runnable tasks:
            task   PID        tree-key         delta       waiting
switches  prio        sum-exec        sum-wait       sum-sleep
wait-overrun   wait-underrun
------------------------------------------------------------------------------------------------------------------------------------------------------------------

cpu: 1
  .nr_running            : 1
  .raw_weighted_load     : 1024
  .nr_switches           : 378755
  .nr_load_updates       : 202398
  .nr_uninterruptible    : 106
  .jiffies               : 221839
  .next_balance          : 221830
  .curr->pid             : 20421
  .clock                 : 794219468967
  .prev_clock_raw        : 874002443396
  .clock_warps           : 0
  .clock_unstable_events : 116368
  .clock_max_delta       : 4531475
  .fair_clock            : 175306014212
  .prev_fair_clock       : 0
  .exec_clock            : 718501418488
  .prev_exec_clock       : 0
  .wait_runtime          : -59753140134
  .wait_runtime_overruns : 1245
  .wait_runtime_underruns: 1604
  .cpu_load[0]           : 0
  .cpu_load[1]           : 0
  .cpu_load[2]           : 0
  .cpu_load[3]           : 0
  .cpu_load[4]           : 0
  .wait_runtime_rq_sum   : -34602

runnable tasks:
            task   PID        tree-key         delta       waiting
switches  prio        sum-exec        sum-wait       sum-sleep
wait-overrun   wait-underrun
------------------------------------------------------------------------------------------------------------------------------------------------------------------
R            cat 20421    175306048814         34602        -34602
    2   120           69205          -34602             853
   0               0


And sched_debug output while running the test:

Sched Debug Version: v0.02
now at 1261993795754 nsecs

cpu: 0
  .nr_running            : 5
  .raw_weighted_load     : 5120
  .nr_switches           : 588021
  .nr_load_updates       : 232164
  .nr_uninterruptible    : 4294967190
  .jiffies               : 240498
  .next_balance          : 240508
  .curr->pid             : 21096
  .clock                 : 770190363479
  .prev_clock_raw        : 895084968848
  .clock_warps           : 0
  .clock_unstable_events : 125214
  .clock_max_delta       : 0
  .fair_clock            : 190695995910
  .prev_fair_clock       : 0
  .exec_clock            : 763286081256
  .prev_exec_clock       : 0
  .wait_runtime          : 68703429598
  .wait_runtime_overruns : 2978
  .wait_runtime_underruns: 1273
  .cpu_load[0]           : 5120
  .cpu_load[1]           : 5119
  .cpu_load[2]           : 5110
  .cpu_load[3]           : 5077
  .cpu_load[4]           : 5037
  .wait_runtime_rq_sum   : -54771343

runnable tasks:
            task   PID        tree-key         delta       waiting
switches  prio        sum-exec        sum-wait       sum-sleep
wait-overrun   wait-underrun
------------------------------------------------------------------------------------------------------------------------------------------------------------------
R             mo 21096    190703231293       7235383      -7235383
  445   120      1813432308        -8250501       211806979
   0               1
              mo 21093    190704201003       8205093      -8472612
  450   120      1818737228       -12394371       206140729
   0               6
              mo 21094    190704732208       8736298      -9665761
  464   120      1816895620       -12925451       204333757
   0               4
              mo 21092    190704971831       8975921     -15574122
  456   120      1817099155       -16680247       208648471
   0               2
              mo 21091    190705631487       9635577     -13823465
  457   120      1816983212       -16160000       204693203
   0               4

cpu: 1
  .nr_running            : 5
  .raw_weighted_load     : 5120
  .nr_switches           : 415103
  .nr_load_updates       : 211674
  .nr_uninterruptible    : 106
  .jiffies               : 240498
  .next_balance          : 240516
  .curr->pid             : 21291
  .clock                 : 806335506481
  .prev_clock_raw        : 897090740058
  .clock_warps           : 0
  .clock_unstable_events : 150133
  .clock_max_delta       : 0
  .fair_clock            : 179777580248
  .prev_fair_clock       : 0
  .exec_clock            : 730473748729
  .prev_exec_clock       : 0
  .wait_runtime          : -68769955037
  .wait_runtime_overruns : 1250
  .wait_runtime_underruns: 1885
  .cpu_load[0]           : 4096
  .cpu_load[1]           : 4293
  .cpu_load[2]           : 5044
  .cpu_load[3]           : 7236
  .cpu_load[4]           : 8445
  .wait_runtime_rq_sum   : -11785269

runnable tasks:
            task   PID        tree-key         delta       waiting
switches  prio        sum-exec        sum-wait       sum-sleep
wait-overrun   wait-underrun
------------------------------------------------------------------------------------------------------------------------------------------------------------------
R            cat 21291    179777631414         51166        -51166
    2   120           66773          -51166           53218
   0               0
              mo 21095    179778195659        615411       -799325
  737   120      2088825958         -799325       201402067
   0               0
              mo 21090    179778267640        687392       -711781
  760   120      2094378519         -711781       208607795
   0               0
              mo 21097    179781627293       4047045      -5262328
  789   120      2090034861        -5262328       202105919
   0               0
              mo 21089    179782321359       4741111      -4960669
  757   120      2094677840        -4960669       202830299
   0               0
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ