mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Re: [patch/backport] CFS scheduler, -v22, for v2.6.23-rc8, v2.6.22.8, v2.6.21.7, v2.6.20.20
@ 2007-09-29 11:11 Matthew
  2007-09-30 15:43 ` Ingo Molnar
  2007-09-30 23:54 ` Bill Davidsen
  0 siblings, 2 replies; 6+ messages in thread
From: Matthew @ 2007-09-29 11:11 UTC (permalink / raw)
  To: linux-kernel; +Cc: mingo

Hi Ingo & everbody on the list,

first of all: many thanks for developing this great scheduler (also:
kudos to Con Kolivas for having developed SD & CK-patchset)

(this is my second mail to this list and I hope I'm doing everything right)

I'm doing some backup during work right now: rsyncing my home
partition (nearly 180 GB) to another harddrive locally &
since I'm running compiz-fusion, openoffice and gnome, therefore am in
some real "working environment" I thought:
give Ingo's new scheduler a test-ride during heavy load ;)

first some impressions:
cpu load balancing looks great again (pretty symmetrical loading on
both cores - it looks pretty similar to 19.1 if not better if I recall
right),
v20 wasn't that "good-looking" ;) (with gnome-system-monitor)

both cpus have a continous load of ~  70% right now so I'll be
starting up 9 instances of glxgears, below are some output & details
of my system
(cpu frequency switching is disabled since it doesn't work right now
with the current bios version)

short summary: unfortunately after starting glxgears everything
stuttered a lot, don't know if it's expactable during that heavy load
- just wanted to let you know; after having closed each instance of
glxgears, everything was fine again ...

cat /proc/sched_debug
Sched Debug Version: v0.05-v22, 2.6.23-rc8-cfs-v22 #1
now at 3890590.670323 msecs
  .sysctl_sched_latency                    : 20.000000
  .sysctl_sched_nr_latency                 : 0.000020
  .sysctl_sched_wakeup_granularity         : 2.000000
  .sysctl_sched_batch_wakeup_granularity   : 25.000000
  .sysctl_sched_child_runs_first           : 0.000001
  .sysctl_sched_features                   : 3

cpu#0, 2404.249 MHz
  .nr_running                    : 4
  .load                          : 4096
  .nr_switches                   : 7648325
  .nr_load_updates               : 2103023
  .nr_uninterruptible            : 58007
  .jiffies                       : 3590591
  .next_balance                  : 3.590615
  .curr->pid                     : 4942
  .clock                         : 2102704.853484
  .idle_clock                    : 0.000000
  .prev_clock_raw                : 3939505.166968
  .clock_warps                   : 0
  .clock_overflows               : 1525057
  .clock_deep_idle_events        : 0
  .clock_max_delta               : 0.999846
  .cpu_load[0]                   : 3072
  .cpu_load[1]                   : 3148
  .cpu_load[2]                   : 3448
  .cpu_load[3]                   : 3598
  .cpu_load[4]                   : 3612

cfs_rq
  .exec_clock                    : 0.000000
  .MIN_vruntime                  : 705800.821444
  .min_vruntime                  : 705800.818396
  .max_vruntime                  : 705800.821444
  .spread                        : 0.000000
  .spread0                       : 0.000000
  .nr_running                    : 2
  .load                          : 3072
  .nr_spread_over                : 0

cfs_rq
  .exec_clock                    : 0.000000
  .MIN_vruntime                  : 114142.324354
  .min_vruntime                  : 705800.818396
  .max_vruntime                  : 114142.460206
  .spread                        : 0.135852
  .spread0                       : 0.000000
  .nr_running                    : 3
  .load                          : 3072
  .nr_spread_over                : 0

cfs_rq
  .exec_clock                    : 0.000000
  .MIN_vruntime                  : 0.000001
  .min_vruntime                  : 705800.818396
  .max_vruntime                  : 0.000001
  .spread                        : 0.000000
  .spread0                       : 0.000000
  .nr_running                    : 0
  .load                          : 0
  .nr_spread_over                : 0

cfs_rq
  .exec_clock                    : 0.000000
  .MIN_vruntime                  : 0.000001
  .min_vruntime                  : 705800.818396
  .max_vruntime                  : 0.000001
  .spread                        : 0.000000
  .spread0                       : 0.000000
  .nr_running                    : 0
  .load                          : 0
  .nr_spread_over                : 0

cfs_rq
  .exec_clock                    : 0.000000
  .MIN_vruntime                  : 0.000001
  .min_vruntime                  : 705800.818396
  .max_vruntime                  : 0.000001
  .spread                        : 0.000000
  .spread0                       : 0.000000
  .nr_running                    : 1
  .load                          : 1024
  .nr_spread_over                : 0

runnable tasks:
            task   PID         tree-key  switches  prio
exec-runtime         sum-exec        sum-sleep
----------------------------------------------------------------------------------------------------------
               X  4043    114142.410694   1413252   120
0               0               0.000000               0.000000
       0.000000
        glxgears  4938    114142.460206    251121   120
0               0               0.000000               0.000000
       0.000000
        glxgears  4939    114142.324354    418180   120
0               0               0.000000               0.000000
       0.000000
R            cat  4942    373113.531317        11   120
0               0               0.000000               0.000000
       0.000000

cpu#1, 2404.249 MHz
  .nr_running                    : 4
  .load                          : 4096
  .nr_switches                   : 9227086
  .nr_load_updates               : 2014314
  .nr_uninterruptible            : 4294909290
  .jiffies                       : 3590591
  .next_balance                  : 3.590623
  .curr->pid                     : 4932
  .clock                         : 2014009.406851
  .idle_clock                    : 0.000000
  .prev_clock_raw                : 3939505.462830
  .clock_warps                   : 0
  .clock_overflows               : 1490105
  .clock_deep_idle_events        : 0
  .clock_max_delta               : 0.999845
  .cpu_load[0]                   : 4096
  .cpu_load[1]                   : 4096
  .cpu_load[2]                   : 4102
  .cpu_load[3]                   : 4148
  .cpu_load[4]                   : 4210

cfs_rq
  .exec_clock                    : 0.000000
  .MIN_vruntime                  : 0.000001
  .min_vruntime                  : 582740.765855
  .max_vruntime                  : 0.000001
  .spread                        : 0.000000
  .spread0                       : -123060.052541
  .nr_running                    : 1
  .load                          : 1024
  .nr_spread_over                : 0

cfs_rq
  .exec_clock                    : 0.000000
  .MIN_vruntime                  : 127569.587650
  .min_vruntime                  : 582740.768735
  .max_vruntime                  : 127573.669809
  .spread                        : 4.082159
  .spread0                       : -123060.049661
  .nr_running                    : 4
  .load                          : 4096
  .nr_spread_over                : 0

cfs_rq
  .exec_clock                    : 0.000000
  .MIN_vruntime                  : 0.000001
  .min_vruntime                  : 582740.771821
  .max_vruntime                  : 0.000001
  .spread                        : 0.000000
  .spread0                       : -123060.046575
  .nr_running                    : 0
  .load                          : 0
  .nr_spread_over                : 0

cfs_rq
  .exec_clock                    : 0.000000
  .MIN_vruntime                  : 0.000001
  .min_vruntime                  : 582740.774902
  .max_vruntime                  : 0.000001
  .spread                        : 0.000000
  .spread0                       : -123060.043494
  .nr_running                    : 0
  .load                          : 0
  .nr_spread_over                : 0

cfs_rq
  .exec_clock                    : 0.000000
  .MIN_vruntime                  : 0.000001
  .min_vruntime                  : 582740.777696
  .max_vruntime                  : 0.000001
  .spread                        : 0.000000
  .spread0                       : -123060.040700
  .nr_running                    : 0
  .load                          : 0
  .nr_spread_over                : 0

runnable tasks:
            task   PID         tree-key  switches  prio
exec-runtime         sum-exec        sum-sleep
----------------------------------------------------------------------------------------------------------
        glxgears  4932    127569.592544    440228   120
0               0               0.000000               0.000000
       0.000000
        glxgears  4933    127569.593334    555188   120
0               0               0.000000               0.000000
       0.000000
        glxgears  4934    127569.593355    713648   120
0               0               0.000000               0.000000
       0.000000
        glxgears  4935    127573.669809    419649   120
0               0               0.000000               0.000000
       0.000000


cat /proc/meminfo
MemTotal:      2074264 kB
MemFree:         52624 kB
Buffers:         38704 kB
Cached:        1468288 kB
SwapCached:          0 kB
Active:         565544 kB
Inactive:      1378496 kB
HighTotal:     1179136 kB
HighFree:         1976 kB
LowTotal:       895128 kB
LowFree:         50648 kB
SwapTotal:     2698912 kB
SwapFree:      2698516 kB
Dirty:           38508 kB
Writeback:           0 kB
AnonPages:      437052 kB
Mapped:         116140 kB
Slab:            33768 kB
SReclaimable:    16652 kB
SUnreclaim:      17116 kB
PageTables:       3704 kB
NFS_Unstable:        0 kB
Bounce:              0 kB
CommitLimit:   3736044 kB
Committed_AS:   817652 kB
VmallocTotal:   118776 kB
VmallocUsed:     56224 kB
VmallocChunk:    60916 kB

hardware: NVIDIA 7600GT, P5W DH Deluxe, Core2 Duo 6600 "Conroe", 2048
MB Ram (DDR2-800, 6400)
GNU/Gentoo hardened x86 2.6 profile, gcc-4.2.1 hardened; glibc 2.6.1
kernel: 2.6.23-rc8-git3 (+ cfs-devel v22)

9 instances of glxgears, 1 instance of openoffice, 1 instance of
screen, 1 window firefox, gnome-2.20 running
compiz-fusion running (via nvidia GLX_EXT_texture_from_pixmap) ,
nvidia-drivers-100.14.19-r10

/dev/dm-1 reiserfs    213G  175G   38G  83% /home
/dev/dm-2 reiserfs    213G   56G  157G  27% /bak    <== rsync -aur
--delete /home/ /bak/
(1st hdd on Intel ICH7R, 2nd hdd on Jmicron; both S-ATA2, ahci)

readahead-cache for both harddrives: 4 MB (via blockdev --setra), 16
MB internal harddisk cache (seagate 7200.10)
I/O-scheduler: deadline scheduler; partition-type: reiserfs v3.6;
mount-options: noatime,nodiratime,data=writeback,commit=120
SLAB: slub

result: most times only 2-3 of the glxgears-windows were running, the
rest was stuttering / halting (no motion)
mouse movement was pretty discountinous, keyboard input was also delayed

Please keep up the good work !

Cheers
Mat

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [patch/backport] CFS scheduler, -v22, for v2.6.23-rc8, v2.6.22.8, v2.6.21.7, v2.6.20.20
  2007-09-29 11:11 [patch/backport] CFS scheduler, -v22, for v2.6.23-rc8, v2.6.22.8, v2.6.21.7, v2.6.20.20 Matthew
@ 2007-09-30 15:43 ` Ingo Molnar
       [not found]   ` <e85b9d30709300943rded9801xddc6ca0a4773ff53@mail.gmail.com>
  2007-09-30 23:54 ` Bill Davidsen
  1 sibling, 1 reply; 6+ messages in thread
From: Ingo Molnar @ 2007-09-30 15:43 UTC (permalink / raw)
  To: Matthew; +Cc: linux-kernel


* Matthew <jackdachef@gmail.com> wrote:

> both cpus have a continous load of ~ 70% right now so I'll be starting 
> up 9 instances of glxgears, below are some output & details of my 
> system (cpu frequency switching is disabled since it doesn't work 
> right now with the current bios version)
> 
> short summary: unfortunately after starting glxgears everything 
> stuttered a lot, don't know if it's expactable during that heavy load 
> - just wanted to let you know; after having closed each instance of 
> glxgears, everything was fine again ...

> cpu#0, 2404.249 MHz
> cpu#1, 2404.249 MHz

> result: most times only 2-3 of the glxgears-windows were running, the 
> rest was stuttering / halting (no motion) mouse movement was pretty 
> discountinous, keyboard input was also delayed

how does it behave without the cfs patch applied? Does it work better 
under v20.5? The best debug output for me to look at would be to 
download these two scripts:

 http://people.redhat.com/mingo/cfs-scheduler/tools/cfs-debug-info.sh
 http://people.redhat.com/mingo/cfs-scheduler/tools/cfs-debug-info-clear.sh

first run cfs-debug-info-clear.sh, then use the system for a few minutes 
and make sure apps are behaving in a 'stutter-free' way. Then run 
cfs-debug-info.sh (still no glxgears running) - it will produce a "no 
load" debug info file. Then start the 9x glxgears instances, reproduce 
the "stuttering" behavior in the apps, and run cfs-debug-info.sh - this 
will produce a second "under load" output file. Please send me both 
output files.

also, what's the output of "glxgears -info" - does it render on real 3D 
hardware, or uses the sw-mesa fallback?

	Ingo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Fwd: [patch/backport] CFS scheduler, -v22, for v2.6.23-rc8, v2.6.22.8, v2.6.21.7, v2.6.20.20
       [not found]   ` <e85b9d30709300943rded9801xddc6ca0a4773ff53@mail.gmail.com>
@ 2007-09-30 16:45     ` Matthew
  2007-09-30 17:27     ` Ingo Molnar
  1 sibling, 0 replies; 6+ messages in thread
From: Matthew @ 2007-09-30 16:45 UTC (permalink / raw)
  To: linux-kernel

Thanks for your answer (sorry, I didn't know your email had changed)

well, this will take some time since I don't work every day & it's
turned off most of the time, hope that is OK

before I proceed with that data-collection:

do you think it is possible that it might be related to "Fair group
CPU scheduler" being selected ?

I think that one and another additional option (don't know right now
its name, but will look for it later) was the only difference on the
.config-file between 2.6.23-rc8 & 2.6.23-rc8-git3 (+ sched-devel)

Mat

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [patch/backport] CFS scheduler, -v22, for v2.6.23-rc8, v2.6.22.8, v2.6.21.7, v2.6.20.20
       [not found]   ` <e85b9d30709300943rded9801xddc6ca0a4773ff53@mail.gmail.com>
  2007-09-30 16:45     ` Fwd: " Matthew
@ 2007-09-30 17:27     ` Ingo Molnar
  1 sibling, 0 replies; 6+ messages in thread
From: Ingo Molnar @ 2007-09-30 17:27 UTC (permalink / raw)
  To: Matthew; +Cc: linux-kernel


* Matthew <jackdachef@gmail.com> wrote:

> Thanks for your answer (sorry, I didn't know your email had changed)
> 
> well, this will take some time since I don't work every day & it's 
> turned off most of the time, hope that is OK
> 
> before I proceed with that data-collection:
> 
> do you think it is possible that it might be related to "Fair group 
> CPU scheduler" being selected ?

i think if you are relatively sure that the box does not have any real 
3D hardware in it (supported by X) then glxgears will interact badly 
with X and can cause such symptoms. In that case glxgears 'spams' the X 
server with requests and everyone else suffers from that. The fair-group 
scheduler indeed could shift CPU usage of X just enough (in X's favor!) 
that might trigger such problems. Such "spam X" workloads often react in 
a paradoxial way: a scheduler that gives X _more_ CPU time will appear 
to be "less interactive".)

	Ingo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [patch/backport] CFS scheduler, -v22, for v2.6.23-rc8, v2.6.22.8, v2.6.21.7, v2.6.20.20
  2007-09-29 11:11 [patch/backport] CFS scheduler, -v22, for v2.6.23-rc8, v2.6.22.8, v2.6.21.7, v2.6.20.20 Matthew
  2007-09-30 15:43 ` Ingo Molnar
@ 2007-09-30 23:54 ` Bill Davidsen
  2007-10-02  9:06   ` Matthew
  1 sibling, 1 reply; 6+ messages in thread
From: Bill Davidsen @ 2007-09-30 23:54 UTC (permalink / raw)
  To: Matthew; +Cc: linux-kernel, mingo

Matthew wrote:
> Hi Ingo & everbody on the list,
> 
> first of all: many thanks for developing this great scheduler (also:
> kudos to Con Kolivas for having developed SD & CK-patchset)
> 
> (this is my second mail to this list and I hope I'm doing everything right)
> 
> I'm doing some backup during work right now: rsyncing my home
> partition (nearly 180 GB) to another harddrive locally &
> since I'm running compiz-fusion, openoffice and gnome, therefore am in
> some real "working environment" I thought:
> give Ingo's new scheduler a test-ride during heavy load ;)
> 
> first some impressions:
> cpu load balancing looks great again (pretty symmetrical loading on
> both cores - it looks pretty similar to 19.1 if not better if I recall
> right),
> v20 wasn't that "good-looking" ;) (with gnome-system-monitor)
> 
> both cpus have a continous load of ~  70% right now so I'll be
> starting up 9 instances of glxgears, below are some output & details
> of my system
> (cpu frequency switching is disabled since it doesn't work right now
> with the current bios version)
> 
> short summary: unfortunately after starting glxgears everything
> stuttered a lot, don't know if it's expactable during that heavy load
> - just wanted to let you know; after having closed each instance of
> glxgears, everything was fine again ...
> 
> cat /proc/sched_debug
> Sched Debug Version: v0.05-v22, 2.6.23-rc8-cfs-v22 #1
> now at 3890590.670323 msecs
>   .sysctl_sched_latency                    : 20.000000
>   .sysctl_sched_nr_latency                 : 0.000020
>   .sysctl_sched_wakeup_granularity         : 2.000000
>   .sysctl_sched_batch_wakeup_granularity   : 25.000000
>   .sysctl_sched_child_runs_first           : 0.000001
>   .sysctl_sched_features                   : 3
> 
Try setting features to 14. That helps my similar issues.

-- 
Bill Davidsen <davidsen@tmr.com>
   "We have more to fear from the bungling of the incompetent than from
the machinations of the wicked."  - from Slashdot

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [patch/backport] CFS scheduler, -v22, for v2.6.23-rc8, v2.6.22.8, v2.6.21.7, v2.6.20.20
  2007-09-30 23:54 ` Bill Davidsen
@ 2007-10-02  9:06   ` Matthew
  0 siblings, 0 replies; 6+ messages in thread
From: Matthew @ 2007-10-02  9:06 UTC (permalink / raw)
  To: Bill Davidsen; +Cc: linux-kernel, mingo

> Try setting features to 14. That helps my similar issues.

Hi Bill,

thanks, but unfortunately that didn't help,

with 2.6.23-rc8 it's already set to 29,
it happens with 2.6.23-rc8 & with the new scheduler

what I found out so far:

it definitely is using 3D acceleration:
glxgears -info
GL_RENDERER   = GeForce 7600 GT/PCI/SSE2
GL_VERSION    = 2.1.1 NVIDIA 100.14.19
GL_VENDOR     = NVIDIA Corporation
GL_EXTENSIONS = GL_ARB_color_buffer_float GL_ARB_depth_texture
GL_ARB_draw_buffers GL_ARB_fragment_program
GL_ARB_fragment_program_shadow GL_ARB_fragment_shader
GL_ARB_half_float_pixel GL_ARB_imaging GL_ARB_multisample
GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_pixel_buffer_object
GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_shadow
GL_ARB_shader_objects GL_ARB_shading_language_100
GL_ARB_texture_border_clamp GL_ARB_texture_compression
GL_ARB_texture_cube_map GL_ARB_texture_env_add
GL_ARB_texture_env_combine GL_ARB_texture_env_dot3
GL_ARB_texture_float GL_ARB_texture_mirrored_repeat
GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle
GL_ARB_transpose_matrix GL_ARB_vertex_buffer_object
GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos
GL_ATI_draw_buffers GL_ATI_texture_float GL_ATI_texture_mirror_once
GL_S3_s3tc GL_EXT_texture_env_add GL_EXT_abgr GL_EXT_bgra
GL_EXT_blend_color GL_EXT_blend_equation_separate
GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract
GL_EXT_compiled_vertex_array GL_EXT_Cg_shader GL_EXT_depth_bounds_test
GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit
GL_EXT_framebuffer_multisample GL_EXT_framebuffer_object
GL_EXT_gpu_program_parameters GL_EXT_multi_draw_arrays
GL_EXT_packed_depth_stencil GL_EXT_packed_pixels
GL_EXT_pixel_buffer_object GL_EXT_point_parameters
GL_EXT_rescale_normal GL_EXT_secondary_color
GL_EXT_separate_specular_color GL_EXT_shadow_funcs
GL_EXT_stencil_two_side GL_EXT_stencil_wrap GL_EXT_texture3D
GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map
GL_EXT_texture_edge_clamp GL_EXT_texture_env_combine
GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic
GL_EXT_texture_lod GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp
GL_EXT_texture_object GL_EXT_texture_sRGB GL_EXT_timer_query
GL_EXT_vertex_array GL_IBM_rasterpos_clip
GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_blend_square
GL_NV_copy_depth_to_color GL_NV_depth_clamp GL_NV_fence
GL_NV_float_buffer GL_NV_fog_distance GL_NV_fragment_program
GL_NV_fragment_program_option GL_NV_fragment_program2
GL_NV_framebuffer_multisample_coverage GL_NV_half_float
GL_NV_light_max_exponent GL_NV_multisample_filter_hint
GL_NV_occlusion_query GL_NV_packed_depth_stencil
GL_NV_pixel_data_range GL_NV_point_sprite GL_NV_primitive_restart
GL_NV_register_combiners GL_NV_register_combiners2
GL_NV_texgen_reflection GL_NV_texture_compression_vtc
GL_NV_texture_env_combine4 GL_NV_texture_expand_normal
GL_NV_texture_rectangle GL_NV_texture_shader GL_NV_texture_shader2
GL_NV_texture_shader3 GL_NV_vertex_array_range
GL_NV_vertex_array_range2 GL_NV_vertex_program GL_NV_vertex_program1_1
GL_NV_vertex_program2 GL_NV_vertex_program2_option
GL_NV_vertex_program3 GL_NVX_conditional_render
GL_SGIS_generate_mipmap GL_SGIS_texture_lod GL_SGIX_depth_texture
GL_SGIX_shadow GL_SUN_slice_accum

it's some kind of AIGLX:
GLX_EXT_texture_from_pixmap -> nvidia-native handling of compiz

* there are no problems with the metacity window manager

* it only occurs with compiz being enabled

* and it also happens with disabled "fair group cpu scheduler" (with
the new scheduler)

so it might be a problem with either the graphics driver (tainted !)
or the window manager (compiz),
compiz-fusion 0.6 will be out soon so I'll check it out if that will help

if it gotten clear until now:
the old & new cfs scheduler work perfectly fine:
no hickups & the like with default window manager (== metacity)

so the problem might be somewhere else

I'll collect scheduler configuration with the script posted by Ingo in
the next following days

(pretty busy right now)

thanks

Mat

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2007-10-02  9:06 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-09-29 11:11 [patch/backport] CFS scheduler, -v22, for v2.6.23-rc8, v2.6.22.8, v2.6.21.7, v2.6.20.20 Matthew
2007-09-30 15:43 ` Ingo Molnar
     [not found]   ` <e85b9d30709300943rded9801xddc6ca0a4773ff53@mail.gmail.com>
2007-09-30 16:45     ` Fwd: " Matthew
2007-09-30 17:27     ` Ingo Molnar
2007-09-30 23:54 ` Bill Davidsen
2007-10-02  9:06   ` Matthew

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®