[Armadillo:08542] Re: armadillo440でのμsleep実行時の精度について
Yasushi SHOJI
email@hidden
2013年 1月 24日 (木) 14:06:29 JST
古い話ですが...
At Wed, 19 Dec 2012 15:50:38 +0900,
h.kondo wrote:
>
> High Resolution Timerを使っていても、結局は、HZの値に依存し、
> デフォルト値(10ms)で使用していると、10ms単位でしかスリープが
> できないということでしょうか。現状はデフォルト値です。
これは間違いです。最近のスケジューラーは HZ に依存せずにスケジュールし
ます。
linux/Documentation/scheduler/sched-design-CFS.txt
4. SOME FEATURES OF CFS
CFS uses nanosecond granularity accounting and does not rely
on any jiffies or other HZ detail. Thus the CFS scheduler has
no notion of "timeslices" in the way the previous scheduler
had, and has no heuristics whatsoever. There is only one
central tunable (you have to switch on CONFIG_SCHED_DEBUG):
/proc/sys/kernel/sched_min_granularity_ns
High Resolution Timer の精度は、実際にはいろいろなハードウェアタイマー
があるので、ハードウェア(とHRTのハードウェア依存部分の実装)に依存します。
また一般的な話としてですが、いくら High Resolution Timerが有効で高精度
のタイマーを持っていたとしても、同じプライオリティーに実行待ちのプロセ
スが多い場合は、指定時間では戻ってこれません。
--
yashi
armadillo メーリングリストの案内