--- tags: 論文メモ --- # Shedding Light on Static Partitioning Hypervisors for Arm-based Mixed-Criticality Systems ## 背景 ### 問題意識 - armベースのMCS上のSPH(static partitioning hypervisor)の特徴や要件の理解 ### 問題への貢献 - 著名なOSS: Jailhouse, Xen (Dom0-less), Bao, and seL4 CAmkES VMMについてrealtime & safty評価 - (i) performance, (ii) interrupt latency, (iii) inter-VM communication, (iv) boot time, and (v) code size ## 具体的な手法など - SPHはVMへの資源割当を静的に行う代わりにレイテンシ,isolationなどを頑張る - 実際のシステムを利用する際の設定の参考にもなる - e.g. superpageを使ってTLB missを許容可能なオーバーヘッドで著しく減らすことができるが,page coloringを有効にすることで無効になってしまう - hardware: zcu104, coretex-a53 1.2GHz, GICv2, SMUv2, 32KiB L1/core, L2 1MiB - hypervisor: default config disabling logging features etc. - for seL4 timer tick to 5s - for Xen use null scheduler to disable WFI trap - all hypervisor compiled with gcc11.2, default opt for each buildsystem - VM config: - large linux vm - small vm running freertos - measuremetn tools: arm pmu, perf for linux vm, arm generic timer tick=10ns for freertos and baremetal apps - MiBench Embedded Bench- marks’ Automotive and Industrial Control Suite - best performance overhead(performance delegation) - seL4 camkes vmmは~7%でそれ以外は1%未満 - bench中のイベントを見るとL2 refillとguest TLB missが相関係数0.95超え - seL4遅くね? - 2MiB superpageがない→TLB miss - 割り込み処理,VMスイッチでipcやってるせいもありそう - 命令数のhyp/gstとhyp側の命令数を見ると段違いに多く↑がわかる - 以上からSPHではTLB missとpt workに気をつけるべき - cache coloringはinter-core conflict missが消えるがオーバヘッドもあり銀の弾丸ではない - 4KiBページをつかうためにTLB missが増える - 割り込みレイテンシ - 10msごとにtimer interrupt handlerで時間を読み出して経過時間を図る - bao/jailhouseはいいがXenは汎用向けで割り込み処理管理周りが最適化されていない - sel4が最も遅く割り込み管理のIPCのせい - 割り込みレイテンシは干渉で10倍くらいになる - coloringは役に立つがhypervisor levelでやるとなおよい