Browse thread
[Caml-list] Why must types be always defined at the top level?
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: | 2004-06-28 (20:26) |
From: | Christophe Raffalli <christophe.raffalli@u...> |
Subject: | Re: [Caml-list] Thread and kernel 2.6 pb still there in CVS |
Xavier Leroy wrote: >>I tried to submit a change in vouillon's entry in the bug tracking >>system (classed as not a bug because can not reproduce), but as I am not >>sure it worked, So I also post this here > > > You should be grateful to Olivier Andrieu, who actually cared to > submit a bug report along with useful info on 2.6 kernels. > Sorry, but I thought continuing an entry in the bug tracking was better than adding one (but I was unable tu actually make a comment in that entry !) > The question I'm currently investigating is whether the call to > sched_yield() can be omitted, as it's just a scheduling hint. Initial > experiments suggested that this would hurt fairness (in Caml thread > scheduling) quite a lot on all platforms other than Linux 2.6. > More careful experiments that I'm currently conducting suggest that it > might not be so bad. One can also play games where sched_yield() > isn't called if there are no other Caml threads waiting for the global > Caml mutex. Someone (I do not remember who) suggested a call to select in place of sched_yield. My thought about semantics in that - a system call saying schedule just now or later (like the semantics of sched_yield in 2.4) only lower the percentage of CPU a thread get, except if you manage to have your thread "in phase" (I do not know if this is proper english) with the scheduler. Then to lower your % of CPU you should use renice (but I do not know if the semantics of renice is per thread or per processus). However a system call saying "I do not not need CPU for a while" could be usefull ... but it should have another name not to break existing program ... and should have an (optional ?) argument saying how long is this while. So I think the 2.6 developper are right, but should have created a new system call. and let sched yield unchanged. Any one can feel free to forward my post to a kernel developpers list :-) > In summary, a solution will eventually be found, but please be > patient, and submit a bug report next time. > > - Xavier Leroy -- Christophe Raffalli Université de Savoie Batiment Le Chablais, bureau 21 73376 Le Bourget-du-Lac Cedex tél: (33) 4 79 75 81 03 fax: (33) 4 79 75 87 42 mail: Christophe.Raffalli@univ-savoie.fr www: http://www.lama.univ-savoie.fr/~RAFFALLI --------------------------------------------- IMPORTANT: this mail is signed using PGP/MIME At least Enigmail/Mozilla, mutt or evolution can check this signature --------------------------------------------- ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners