«前の日記(2021年01月05日) 最新 次の日記(2021年01月07日)» 編集

2021年01月06日 年始なので色々スムーズに稼動するような [長年日記]

_ 年始なので色々スムーズに稼動するような

ストレッチ

どうも昨日から調子の悪い腰の調子だが脚とかを強めにストレッチ
してだいたい解消した感じ.
なんとなく腱を強めに延ばしてを繰替えしていたら直ったのでやはり
引き摺られていたのではないかと.

S7150

突発的に買ってみた.
何年か前から GPU の仮想化というのとなんとかならんのかな
と思って調べては nVidia のプロプライエタリなソリューションが
いちおうあるっぽい, でもどうもエンタープライズでプロプライエタリ
な系列っぽい, てかそもそも GPU って複数コンテクストへのあつかい
なんて出来んのかい? というところであきらめていたのだが,
今回の backbone 10Gbps にするときに SR-IOV 対応の
インターフェースにしたというのもあってこちらの切り口から
調べてみたら

https://www.slideshare.net/zgock/gpu-kvmgtvirtiogpu

というドキュメントに遭遇.
SUSE は正直どうでもいいが, GPU の仮想化での取扱については
知見として自身のものとよくあっていてまとまっている印象.
ここを起点に芋蔓でおっていくとなんとなくやれそうな気分になる.
更に掘るとどうも, AMD は SR-IOV ベースの拡張で S7150 とかボードを
提供してるっぽい (intel のコンテクストベースのやりかたも素直だ
と思うんだが intel は GPU 系は微妙だし).
今一つ gim とか現行のボードとの間の整合性とかで疑念がないでは
ないのだが, eBay あさっているとちょっとした GPU と同じくらい
の値段で手にはいりそうなのでとりあえずトライしてみるのはよいか
という気分にってポチる.

raspberry pi boot

raspberry pi の boot 関連を年末読んでいたらなんとなく簡単では
という気分になったのだがどうも raspberry pi 4 は色々変わったらしい.
boot sequence 概略
https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/bootflow.md
https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/bootflow_2711.md
なんとなく raspberry pi 4 は更に簡略になって SD に適当なファイルおけば
大丈夫ぽい.
以前どっかの repository で EEPROM で UEFI 的なことをやっているところが
あったはずなので上手くすれば UEFI でもいけるかもしれないがちょっと不明.
ここだけみる限り aarch64 で nostdc, origin を合わせたものをおけば行けるの
ではないか?

とりあえず, start4XX.elf という形らしいので elf format parse まではいけそう
な雰囲気.
ただ kernel も bootfolder に別途 kernelX.img ではいっているのを想定している
っぽいのでこのあたりの関係がちょっとわからない.

start4XX.elf と kernel image の関係性がよくわからん, と思っていたが,
適当に google 先生に聞いてみると,

https://github.com/pftf/RPi4/releases

とかいうのを発見. どうも公開物品ではないが binary を解いてみると,
中に start4.elf とか発見する. 今一つこれの位置付けがよくわからないが
前後のファイルをみるとなんとなく UEFI の関連物品ぽいのは想像がつく.
解いた start4.elf をみてみると,

start4.elf: ELF 32-bit LSB executable, Broadcom VideoCore III, version 1 (SYSV), statically linked, stripped

とか表示される. bootsequence のドキュメントには起動後, SoC の VC が先に動いて
こいつが bootcode.bin を読んだあとに SD から image を, というフローが書いてある
が raspberry pi 4 からは bootcode.bin は不要になった, というのが理解だったのだが
このバイナリが標準品だとすると eeprom + start4.elf で UEFI と近い構造を実装して
image.elf をロードする, というようなフローなのでは? と予想しているのだがどうも
linux の distro 解いてみてみると root に kernel と思われる image が.
このあたりの配布物と仕様の関係を調べるがみつからない. ソースもなさげだしどうしたもんか.