Opened 16 years ago
Closed 15 years ago
#3535 closed bug (fixed)
Scheduling stops on extra cores
Reported by: | jonas.kirilla | Owned by: | axeld |
---|---|---|---|
Priority: | normal | Milestone: | R1 |
Component: | System/Kernel | Version: | R1/pre-alpha1 |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
Running Haiku hrev29436 on a Core 2 Quad 6600 with 4 cores:
- Stress the system with 4 Terminals running "cat /dev/zero > /dev/null"
- Observe Pulse indicate near 100% CPU use on all four cores.
- Open the Applications folder, Alt-A, Alt-O and wait for them to load
- Observe in Pulse how scheduling stops on some cores. If you pause scheduling on the remaining/working cores Haiku freezes.
This has also been seen in VMware by Phadin on #Haiku.
Attachments (2)
Change History (5)
comment:1 by , 16 years ago
comment:2 by , 16 years ago
It happens also on hrev29503, gcc2.
Step 3 is likely redundant.
A while after having started 4 cat threads, Pulse shows one core at 100% activity and 3 idle cores. KDL output looks to me as if all four cat processes are alive and running each on its own core. The only difference I can see, post vs pre, is that some flags and fault handlers differ. (Maybe these differ between when a process runs in the kernel and when in runs in userland?)
The cat processes can be stopped by ctr-c, which appears to release the "idle" cores, from Pulse´s point of view. Whether they are truly idle I can´t say.
Pulse and ProcessController sometimes display differently. Post-issue and post-killing the cat threads, ProcessController may show some cores pinned at 100% even when there is clearly no load anymore.
(I don´t know if this is related at all, but I just tried opening all preferences while having all four cores loaded, resulting in multiple errors of this kind: "Could not open X with application X (Unknown Application Error (-2147418110)".)
Having 4 cat processes and Pulse showing 1 core loaded and 3 cores "idle", turning off the loaded core makes Haiku freeze, but F12 can still be pressed. In KDL, "running" shows 3 cat processes running on the supposedly idle cores and an idle thread running on the previously loaded, now turned off, first core.
See KDL output.
comment:3 by , 15 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Any change in behavior whatsoever in hrev29484 or newer? Specifically with the last step? Either way, a visit to KDL + a dump of the thread states would be most helpful prior to it actually freezing. Offhand though this smells like it could possibly be a duplicate of ticket #2710.