| From | Sent On | Attachments |
|---|---|---|
| Alexander Motin | Feb 5, 2012 11:04 pm | |
| David Xu | Feb 5, 2012 11:59 pm | |
| Gary Jennejohn | Feb 6, 2012 2:08 am | |
| Alexander Best | Feb 6, 2012 8:01 am | |
| Alexander Motin | Feb 6, 2012 8:28 am | |
| Tijl Coosemans | Feb 6, 2012 9:37 am | |
| Alexander Motin | Feb 6, 2012 9:54 am | |
| Florian Smeets | Feb 6, 2012 11:07 am | |
| Alexander Best | Feb 6, 2012 11:10 am | |
| Alexander Motin | Feb 6, 2012 11:18 am | |
| Julian Elischer | Feb 6, 2012 10:10 pm | |
| Ivan Voras | Feb 8, 2012 3:06 am | |
| Andriy Gapon | Feb 11, 2012 5:34 am | |
| Alexander Motin | Feb 11, 2012 6:21 am | |
| Konstantin Belousov | Feb 11, 2012 7:35 am | |
| Andriy Gapon | Feb 11, 2012 9:04 am | |
| Alexander Motin | Feb 13, 2012 11:56 am | |
| Jeff Roberson | Feb 13, 2012 12:23 pm | |
| Alexander Motin | Feb 13, 2012 12:54 pm | |
| Jeff Roberson | Feb 13, 2012 1:39 pm | |
| Alexander Motin | Feb 13, 2012 2:38 pm | |
| Alexander Motin | Feb 15, 2012 11:46 am | |
| Jeff Roberson | Feb 15, 2012 11:54 am | |
| Alexander Motin | Feb 15, 2012 12:06 pm | |
| Alexander Motin | Feb 15, 2012 8:41 pm | |
| Alexander Motin | Feb 16, 2012 12:48 am | |
| Alexander Motin | Feb 16, 2012 2:58 am | |
| Florian Smeets | Feb 16, 2012 1:28 pm | |
| Alexander Motin | Feb 17, 2012 8:29 am | |
| Arnaud Lacombe | Feb 17, 2012 8:52 am | |
| Alexander Motin | Feb 17, 2012 9:02 am | |
| George Mitchell | Feb 26, 2012 4:32 pm | |
| George Mitchell | Feb 26, 2012 4:37 pm | |
| Olivier Smedts | Feb 27, 2012 2:34 am | |
| George Mitchell | Feb 27, 2012 3:23 am | |
| Olivier Smedts | Feb 27, 2012 3:27 am | |
| Andriy Gapon | Feb 27, 2012 4:41 am | |
| George Mitchell | Feb 27, 2012 3:54 pm | |
| Adrian Chadd | Mar 2, 2012 3:05 pm | |
| George Mitchell | Mar 2, 2012 4:14 pm | |
| Adrian Chadd | Mar 2, 2012 7:24 pm | |
| Alexander Motin | Mar 2, 2012 11:40 pm | |
| Ivan Klymenko | Mar 3, 2012 12:18 am | |
| Adrian Chadd | Mar 3, 2012 12:59 am | |
| Alexander Motin | Mar 3, 2012 1:12 am | |
| Alexander Motin | Mar 3, 2012 4:53 am | |
| Ivan Klymenko | Mar 3, 2012 7:25 am | |
| Alexander Motin | Mar 3, 2012 8:30 am | |
| Mario Lobo | Mar 3, 2012 8:56 am | |
| Alexander Motin | Mar 3, 2012 9:56 am | |
| Ivan Klymenko | Mar 3, 2012 11:15 am | |
| Arnaud Lacombe | Apr 5, 2012 11:11 am | |
| Alexander Motin | Apr 5, 2012 11:45 am | |
| Attilio Rao | Apr 6, 2012 7:12 am | |
| Alexander Motin | Apr 6, 2012 7:26 am | |
| Attilio Rao | Apr 6, 2012 7:30 am | |
| Alexander Motin | Apr 6, 2012 7:40 am | |
| Alexander Motin | Apr 9, 2012 12:57 pm | |
| Arnaud Lacombe | Apr 10, 2012 9:57 am | |
| Alexander Motin | Apr 10, 2012 10:18 am | |
| Alexander Motin | Apr 10, 2012 10:53 am | |
| Arnaud Lacombe | Apr 10, 2012 11:45 am | |
| Alexander Motin | Apr 10, 2012 12:13 pm | |
| Mike Meyer | Apr 10, 2012 1:04 pm | |
| Arnaud Lacombe | Apr 10, 2012 1:50 pm | |
| Mike Meyer | Apr 10, 2012 2:19 pm | |
| Adrian Chadd | Apr 11, 2012 3:19 pm |
| Subject: | Re: [RFT][patch] Scheduling for HTT and not only | |
|---|---|---|
| From: | Ivan Klymenko (fid...@ukr.net) | |
| Date: | Mar 3, 2012 7:25:38 am | |
| List: | org.freebsd.freebsd-hackers | |
В Sat, 03 Mar 2012 14:54:17 +0200 Alexander Motin <ma...@FreeBSD.org> пишет:
On 03/03/12 11:12, Alexander Motin wrote:
On 03/03/12 10:59, Adrian Chadd wrote:
Right. Is this written up in a PR somewhere explaining the problem in as much depth has you just have?
Have no idea. I am new at this area and haven't looked on PRs yet.
And thanks for this, it's great to see some further explanation of the current issues the scheduler faces.
By the way I've just reproduced the problem with compilation. On dual-core system net/mpd5 compilation in one stream takes 17 seconds. But with two low-priority non-interactive CPU-burning threads running it takes 127 seconds. I'll try to analyze it more now. I have feeling that there could be more factors causing priority violation than I've described below.
On closer look my test appeared not so clean, but instead much more interesting. Because of NFS use, there is not just context switches between make, cc and as, that are possibly optimized a bit now, but many short sleeps when background process gets running. As result, in some moments I see such wonderful traces for cc:
wait on runq for 81ms, run for 37us, wait NFS for 202us, wait on runq for 92ms, run for 30us, wait NFS for 245us, wait on runq for 53ms, run for 142us,
About 0.05% CPU time use for process that supposed to be CPU-bound. And while for small run/sleep times ratio process could be nominated on interactivity, with so small absolute sleep times it will need ages to compensate 5 seconds of "batch" run history, recorded before.
On 2 March 2012 23:40, Alexander Motin<ma...@freebsd.org> wrote:
On 03/03/12 05:24, Adrian Chadd wrote:
mav@, can you please take a look at George's traces and see if there's anything obviously silly going on? He's reporting that your ULE work hasn't improved his (very) degenerate case.
As I can see, my patch has nothing to do with the problem. My patch improves SMP load balancing, while in this case problem is different. In some cases, when not all CPUs are busy, my patch could mask the problem by using more CPUs, but not in this case when dnets consumes all available CPUs.
I still not feel very comfortable with ULE math, but as I understand, in both illustrated cases there is a conflict between clearly CPU-bound dnets threads, that consume all available CPU and never do voluntary context switches, and more or less interactive other threads. If other threads detected to be "interactive" in ULE terms, they should preempt dnets threads and everything will be fine. But "batch" (in ULE terms) threads never preempt each other, switching context only about 10 times per second, as hardcoded in sched_slice variable. Kernel build by definition consumes too much CPU time to be marked "interactive". exo-helper-1 thread in interact.out could potentially be marked "interactive", but possibly once it consumed some CPU to become "batch", it is difficult for it to get back, as waiting in a runq is not counted as sleep and each time it is getting running, it has some new work to do, so it remains "batch". May be if CPU time accounting was more precise it would work better (by accounting those short periods when threads really sleeps voluntary), but not with present sampled logic with 1ms granularity. As result, while dnets threads each time consume full 100ms time slices, other threads are starving, getting running only 10 times per second to voluntary switch out in just a few milliseconds.
On 2 March 2012 16:14, George Mitchell<george+free...@m5p.com> wrote:
On 03/02/12 18:06, Adrian Chadd wrote:
Hi George,
Have you thought about providing schedgraph traces with your particular workload?
I'm sure that'll help out the scheduler hackers quite a bit.
THanks,
Adrian
I posted a couple back in December but I haven't created any more recently:
http://www.m5p.com/~george/ktr-ule-problem.out http://www.m5p.com/~george/ktr-ule-interact.out
To the best of my knowledge, no one ever examined them. -- George
-- Alexander Motin
I have FreeBSD 10.0-CURRENT #0 r232253M
Patch in r232454 broken my DRM
My system patched http://people.freebsd.org/~kib/drm/all.13.5.patch
After build kernel with only r232454 patch Xorg log contains:
...
[ 504.865] [drm] failed to load kernel module "i915"
[ 504.865] (EE) intel(0): [drm] Failed to open DRM device for
pci:0000:00:02.0: File exists
[ 504.865] (EE) intel(0): Failed to become DRM master.
[ 504.865] (**) intel(0): Depth 24, (--) framebuffer bpp 32
[ 504.865] (==) intel(0): RGB weight 888
[ 504.865] (==) intel(0): Default visual is TrueColor
[ 504.865] (**) intel(0): Option "DRI" "True"
[ 504.865] (**) intel(0): Option "TripleBuffer" "True"
[ 504.865] (II) intel(0): Integrated Graphics Chipset: Intel(R) Sandybridge
Mobile (GT2)
[ 504.865] (--) intel(0): Chipset: "Sandybridge Mobile (GT2)"
and black screen...
do not even know why it happened ... :(
_______________________________________________ free...@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "free...@freebsd.org"





