作者dces4212 ()
看板LinuxDev
標題[問題] 核心模組使用 isolcpus
時間Sat Apr 18 17:50:07 2020
大家好,請問核心模組可以使用用 isolcpus 隔離開的 CPU 嗎?
或是有什麼辦法可以讓核心模組使用獨立(沒有被排程器使用)的 CPU 呢?
還是説只能用 smp_call_function_single() 來達成這個目的呢?
但 smp_call...() 的註解有提到它做的事不能太久,可是我要做的事在某些情境下會..QQ
還是説可以使用 isolcpus 搭配 kthread_craeate_on_cpu() 來達成呢?
最近寫的作業有涉及到效能分析,想做出更平順的分析結果,
但最多只用到 taskset 去跑 usermode 的測試程式,想看看 kernel code 也
使用獨立 CPU 的效果。
麻煩各位前輩指點了。感謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.160.64.55 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/LinuxDev/M.1587203412.A.28D.html
1F:推 aweilin: isolcpus可以用阿 你把系統設定只吃一個cpu,另外一個04/21 08:47
2F:→ aweilin: cpu就用指定的方式去跑,就可以自己決定哪些user space04/21 08:48
3F:→ aweilin: or kernel space 自己決定哪些要放過去cpu2跑04/21 08:49
4F:→ aweilin: cmdline=isolcpus=1, 那你的core0會拿來跑系統,core1空04/21 08:50
5F:→ aweilin: 下來,透過taskset可以做綁定user space,或是透過04/21 08:51
6F:→ aweilin: smp_affinity可以綁定isr,tasklet也類似。04/21 08:51
感謝大大回覆!所以我只要在kernelmode指定(使用queue_work_on 或是
kthread_create_on)使用被區隔開的vcore就可以直接使用了對吧?謝謝!
※ 編輯: dces4212 (118.168.108.147 臺灣), 04/22/2020 05:45:58
※ 編輯: dces4212 (118.168.108.147 臺灣), 04/22/2020 05:51:38
※ 編輯: dces4212 (118.168.108.147 臺灣), 04/22/2020 05:52:15
7F:→ aweilin: 差不多! 不難,Google一下就可以知道細節 05/01 13:41
8F:→ dces4212: 這樣我懂了 感謝 05/03 05:27