Comment #3 on issue 21884 by Robert.Bradbury: Parts of browser completely  
unresponsive (frozen) while CPU usage on 100%
http://code.google.com/p/chromium/issues/detail?id=21884

On Linux the commands you are looking for are "renice" (for running  
processes) and
"chrt" which can CHange the "Real-Time" scheduling attributes of a  
process.  In
practice I have found (on Linux) that niced processes will still not  
run "nicely"
with processes which frequently talk to the X server (Firefox, chrome,  
etc.).  I
believe this is due to interactions with the poll(), read() and writev()  
calls (which
I believe are process to X server exchanges of messages).

One sees more of the problem (on Linux) when trying to run a program like
"alsaplayer" to play music from on-the-disk mp3 files as a non-super-user  
in non-
real-time mode.  The music will occasionally "stutter" when other programs  
grab the
CPU.  In real-time mode (alsaplayer --realtime ...) as the superuser it  
will work
pretty well but I think its one of the few programs under Linux that takes  
advantage
of real-time features and from looking at the source code I'd say that even  
its
handling of priority setting and locking only the needed portions of itself  
in memory
is sub-optimal.

One can work around this through the clever use of chrt.  One can chrt  
--fifo to
increase the priority (of X, chrome, etc.) or use chrt --batch or chrt  
--idle to
decrease the priority of heavy CPU using processes.  It would seem best to  
run heavy
CPU use programs to use the "idle" scheduling class so they do not  
interfere with
user programs.


--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

-- 
Automated mail from issue updates at http://crbug.com/
Subscription options: http://groups.google.com/group/chromium-bugs

Reply via email to