動作環境:ubuntu16.04のQEMU +のarm64バージョン
ブログの前にはUbuntuのファイルシステムを実行しているQEMUを使用して-構築されたSVEの学習環境(2) QEMUにのみubuntu16.04システム上で実行し、インストールArmIE、SVEは、命令の実行をシミュレートする場所。ArmIEについての詳細は、インストールの簡単なArmIE方法に続いて、ARMの公式ウェブサイトを参照してください:ARM命令エミュレータを
最初のステップは、インストールモジュールパッケージ(リンク)
sudoの apt-getのインストール環境モジュール
第二段階、ArmIEは、インストールパッケージ(ダウンロードリンクを)
であるために、ここで ArmIEのインストールパッケージをダウンロードするには、ここからダウンロードするARM命令-Emulator_19.2_AArch64_Ubuntu_16.04_aarch64.tar.gz
第3のステップは、インストールArmIEを抽出することです
タール ARM命令-Emulator_19.2_AArch64_Ubuntu_16.04_aarch64 -xvf。タール.gzを
CD ARM -Instruction- Emulator_19.2_AArch64_Ubuntu_16.04_aarch64
sudoの ./arm-instruction-emulator- 19 .2_Generic-AArch64_Ubuntu- 16 .04_aarch64-linuxの-DEB。SH
デフォルトでは、パスが別のパラメータで置き換えることができるマウント/ OPT /アームに取り付け-i
第四の工程は、環境変数を設定することであるのModulePath
輸出のModulePath = $のModulePathます。/ opt /腕/ modulefiles /
第五の工程は、そのモジュールとモジュールのロードArmIEを参照するモジュールを使用し、システムに再度ログイン
pengdl @ホタル:〜$のモジュールの無駄
------------------------------------------ --------------------は/ opt /腕/ modulefiles ------------------------ --------------------------------------
汎用 -AArch64 / Ubuntuの/ 16.04 /アームインストラクション-エミュレータ/ 19.2ジェネリック-AArch64 / Ubuntuの/ 16.04 / gcc_runtimes / 8.2。0
------------------------------------------------- ---------は、/ usr / share /モジュール/バージョン--------------------------------- -------------------------- 3.2。10
------------------------------------------------- --------は、/ usr / share /モジュール/ modulefiles ---------------------------------- -----------------------
ドットモジュールモジュール- -git 情報は、モジュール ヌル use.ownを
-------------------------------------- -----------------------は/ opt /腕/ modulefiles / -------------------- ------------------------------------------
ジェネリック -AArch64 / Ubuntuの/ 16.04 /アーム-命令エミュレータ/ 19.2ジェネリック-AArch64 / Ubuntuの/ 16.04 / gcc_runtimes / 8.2。0
ホタルpengdlの@:〜$ モジュールのロードジェネリック-AArch64 / Ubuntuの / 16.04 / アーム-命令エミュレータ / 19.2
ホタルpengdlの@:〜$ エコーの$ PATH
/opt/arm/arm-instruction-emulator-19.2_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin64:/ホーム/ pengdl / binに:/home/pengdl/.local/bin:/ホーム/ pengdl / sve_acle_cross / binに:/ OPT / gstreamerの/ binに:は/ usr / local / sbinに:は/ usr / local / binにします。/ usr / sbinにします。/ usr / binに:/ sbinに:/ binにします。/ usr /ゲーム:は/ usr / local /ゲーム
pengdl @ホタル:〜$
第6のステップ、テスト
pengdl@firefly:~$ armie
Execute binaries containing SVE instructions on Armv8-A hardware
Usage:
armie [emulation parameters] -- <command to execute>
Examples:
armie -msve-vector-bits=256 -- ./sve_program
armie -msve-vector-bits=2048 --iclient libinscount.so -- ./sve_program --opt foo
armie -e libmemtrace_sve_512.so -i libmemtrace_simple.so -- ./sve_program
Flags:
-m<string> Architecture specific options. Supported options:
-msve-vector-bits=<uint> Vector length to use. Must be a multiple of 128 bits up to 2048 bits
-mlist-vector-lengths List all valid vector lengths
-e, --eclient <client> An emulation client based on the DynamoRIO API
If this is not specified, the default SVE client is used
-i, --iclient <client> An instrumentation client based on the DynamoRIO API
-x, --unsafe-ldstex Enables a workaround which avoids an exclusive load/store bug on certain AArch64 hardware
(See 'Known Issues' inRelease_Notes.txt ため詳細)
-s、--show-drrun- cmdはstderrにArmIEを実行するために使用されるフルDynamoRIOのdrrunコマンドを書き込み
、デバッグや開発クライアントがときに便利することができ
、-h - ヘルププリントは、このヘルプメッセージ
-V、 --versionバージョンを印刷します
仕上がり。