1
我想比較兩個linux內核版本之間的調度延遲。以下是我迄今爲止嘗試:如何測量Linux內核中的調度延遲?
- 配置的Ftrace在跟蹤打開了SCHED事件內核
- 兩者。
- 啓用喚醒示蹤器。
但是,喚醒只顯示最高優先級進程的結果,而不是我的c程序。我嘗試使用很好,並從跟蹤中捕獲它。它仍然顯示其他同樣高的過程的日誌。我是否錯過了其他一些步驟來捕獲我的過程日誌?有沒有更好的方法,通過修改我的程序的源代碼而不是在啓動時使用nice來將我的進程的優先級設置爲最高?
我試過的下一步是禁用喚醒跟蹤器並啓用sched事件。我得到的日誌看起來是這樣的
0 1dNh3 3us+: sched wakeup : task hald : 1952 [120] success=1
−0 1d..3 7us! : sched switch : task swapper : 0 [140] (R) ==>
hald : 1952 [120]
的+
和!
顯示延遲(簡稱ftrace的內核文檔知道號碼)。這是否意味着調度喚醒的延遲時間爲'+',並且調度了女巫'!'微秒分別?
還有其他比較linux調度延遲的方法嗎?