• Status Closed
  • Percent Complete
  • Task Type Bugs
  • Category Operating System/Drivers
  • Assigned To No-one
  • Operating System iriver H10
  • Severity High
  • Priority Very Low
  • Reported Version
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by Lazerman - 2006-09-21
Last edited by nls - 2007-07-08

FS#6040 - CPU Timing/Boost on H10

As far as I can remember, the CPU boost feature has been disabled on the H10 because it could cause the system to hang. It would really be useful to get this to work properly, because otherwise the playback will be interupted by anything from scrolling through long lists to using most of the plugins.

I am wondering if the original problem was an incorrect setting for the CPU speed (this was addressed in a later fix, I think). For example, currently zbox runs at about 40% speed, and the speed-boost option (in zbox, not rockbox) pushes that speed to 200%. These kind of strange numbers (it seems normal mode for zbox should be 100%, not 40%), makes me think that either rockbox is reporting an incorrect clock speed, or zbox is computing something incorrectly.

As a general idea (not having looked at the code in detail) I am wondering if it would be possible to boost CPU not by default, but on a need-to-boost basis. As in: If the play buffer gets below x1 percent, fill the play buffer in normal CPU mode. If it gets below x2(<x1), fill it in CPU-boost mode. Shouldn’t add much more code and might save some battery, particularly on powerful CPUs.

Closed by  nls
2007-07-08 15:37
Reason for closing:  Fixed
Additional comments about closing:   Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407

cpu fequency scaling is now enabled and stable on the h10

Your “general idea” is the way how boosting works in Rockbox. It’s intended to make Rockbox work equally on all targets, so boosting will get implemented. The thing is it hasn’t been adressed yet. Please take into account that that the h10 port is still in its early stages.

I don’t believe submitting “bug” reports on issues that simply haven’t been addressed because the port is still in its early stages are helpful. It’s things the devs are already aware of.

I wasn’t talking about the fact that only certain parts of the code run boosted, but that some of the boosting is done independently of the current system load, or play-buffer drain-rate. When looking through the code I’ve only seen the encoders use a conditional boost strategy, most other cpu_boost calls are not protected by conditionals. I was thinking that this might be worthwhile doing because e.g. the H10 plays quite well unboosted (if you don’t do anything else at the time). This might save a fair amount of power when boosting isn’t really required, and also prevent clock stabilization issues after each boost switch. For this to work nicely it might be useful to have a function that you can query to see if current play-buffer drain is greater than realtime.

Otherwise, the idea wasn’t to “bug” the devs about a problem they are aware of, but to provide some usage info that might be helpful in solving the problem. If there is a better way to do that I am all for it.

Out of curiosity, I thought that with boosting disabled the H10 ran permanently boosted right now? That’s what we did with the iPods at least, the speed changing allowed it to run at lower speeds, not higher ones, primarily to save battery life.

I think the H10 does currently always run boosted. So enabling CPU boost will not affect performance, but will save some battery life.
I have added  FS#6095  as a related task. Once that has been solved, we should be able to enable boosting straight away.

it happens on my sansa e200 when i’m playing a song, everything goes really slow: scrolling menus, changing a song, pausing, stoping…(it only happends when playing songs, on every plugins(video,rockboy,images) that ive tried, it works fast and good) should i add a new bug? or to comment in here is fine?


Available keyboard shortcuts


Task Details

Task Editing