LLM_buildroot-external-m5stack/toolsのスクリプト何が違うか

ModuleLLMのLinuxカーネルをカスタマイズするLLM_buildroot-external-m5stackのリポジトリが公開されました。設定ファイルを確認してみます。
SHファイル
1. AX630C LITE向けスクリプト群
-
creat_AX630C_LITE_buidlroot_image.sh
は、AX630C LITE デバイス用の基本的なbuildrootイメージを作成します。これは他のAX630C LITEイメージの基盤となります。 -
creat_AX630C_LITE_ubuntu22_04_image.sh
は、最小構成のUbuntu 22.04イメージを作成します。基本的なシステムユーティリティとネットワーク管理機能のみを含みます。 -
creat_AX630C_LITE_ubuntu22_04_desktop_image.sh
は、デスクトップ環境(XFCE4)を含むUbuntu 22.04イメージを作成します。Firefoxブラウザや電源管理機能など、GUI関連の機能が追加されています。 -
creat_AX630C_LITE_ubuntu22_04_image_full.sh
は、開発ツール、Pythonパッケージ、システムユーティリティを含む包括的なUbuntu 22.04イメージを作成します。 -
creat_AX630C_LITE_ax_ubuntu22_04_image.sh
は、基本的なUbuntuイメージに近いものですが、AXプラットフォーム向けの特定のカスタマイズが含まれています。
2. Module LLM向けスクリプト群
-
creat_Module_LLM_buidlroot_image.sh
は、Module LLMデバイス用のbuildrootイメージを作成します。 -
creat_Module_LLM_buidlroot_image_4_8.sh
は、上記と同様ですが、カーネル4.8用に特別に設定されており、rootfsサイズが6GBに固定されています。 -
creat_Module_LLM_ubuntu22_04_image.sh
は、Module LLMデバイス用のUbuntu 22.04イメージを作成します。
これらのスクリプトの主な違いは以下の点にあります:
システム構成の違い
デスクトップ版はXFCE4やGUI関連パッケージを含み、フル版は開発ツールや追加ユーティリティを含みます。基本版は必要最小限のパッケージのみを含んでいます。
システムカスタマイズの範囲
デスクトップ版はディスプレイマネージャ(LXDM)の設定を含み、フル版は追加のシステムサービス設定を含みます。また、ネットワークインターフェースやシステムサービスの設定も各スクリプトで異なります。
リソース割り当て
Module LLM 4.8版では6GBのrootfsサイズが明示的に設定されているなど、含まれる機能に応じて必要なメモリやストレージの要件が異なります。
configファイル
2つのconfigファイルを比較分析した結果、主な違いは以下の3点です:
- オーバーレイとボードの設定
第一のファイル(m5stack_ax630c_lite)は"module_kit"向けに設定されているのに対し、第二のファイル(m5stack_module_llm)は"module_LLM"向けに設定されています。これは以下の行で確認できます:
# First file:
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_M5STACK_PATH)/board/m5stack/overlay/ $(BR2_EXTERNAL_M5STACK_PATH)/board/m5stack/module_kit/overlay/"
# Second file:
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_M5STACK_PATH)/board/m5stack/overlay/ $(BR2_EXTERNAL_M5STACK_PATH)/board/m5stack/module_LLM/overlay/"
- ネットワーク関連パッケージ
第一のファイルには、第二のファイルにない以下のネットワーク関連パッケージが含まれています:
- WPA_SUPPLICANT(無線ネットワーク接続用)
- LIBNL(ネットワークリンク管理用)
- SOCAT(多目的双方向通信用)
- U-BootとLinuxカーネルのソース
両ファイルで異なるGitHubリポジトリとコミットハッシュを参照しています:
U-Boot:
- 第一のファイル: module_kit_uboot (6741428e...)
- 第二のファイル: module_LLM_uboot (120d25a7...)
Linux Kernel:
- 第一のファイル: module_kit_linux (c030ff7b...)
- 第二のファイル: module_LLM_linux (7e780e66...)
これらの違いから、第一のファイルはより広範なネットワーク機能を持つ汎用的な設定であり、第二のファイルはLLM(おそらく大規模言語モデル)に特化した、よりシンプルな設定であることが推察されます。