参考:https://developer.arm.com/tools-and-software/server-and-hpc/arm-architecture-tools/arm-instruction-emulator/installing-arm-instruction-emulator

运行环境:Qemu+arm64版本的ubuntu16.04

  前面一篇博客使用Qemu运行Ubuntu文件系统 —— 搭建SVE学习环境(2)中才Qemu上运行了一个ubuntu16.04的系统,然后再在其中安装了ArmIE,来模拟SVE指令的执行。下面简单介绍一下ArmIE的安装方法,关于ArmIE的详细介绍,请参考ARM官网:Arm Instruction Emulator

第一步,安装module软件包(链接

sudo apt-get install environment-modules

第二步、下载ArmIE安装包(链接

  可以到这里下载ArmIE安装包,这里下载ARM-Instruction-Emulator_19.2_AArch64_Ubuntu_16.04_aarch64.tar.gz

  

第三步、解压安装ArmIE

tar -xvf  ARM-Instruction-Emulator_19.2_AArch64_Ubuntu_16.04_aarch64.tar.gz 

cd ARM-Instruction-Emulator_19.2_AArch64_Ubuntu_16.04_aarch64

sudo ./arm-instruction-emulator-.2_Generic-AArch64_Ubuntu-.04_aarch64-linux-deb.sh

  默认会安装到/opt/arm下,也可以通过参数-i换成别的安装路径

第四步、设置环境变量MODULEPATH

export MODULEPATH=$MODULEPATH:/opt/arm/modulefiles/

第五步、重新登录系统,使用module查看哪些模块,并加载ArmIE模块

pengdl@firefly:~$ module avail

-------------------------------------------------------------- /opt/arm/modulefiles --------------------------------------------------------------
Generic-AArch64/Ubuntu/16.04/arm-instruction-emulator/19.2 Generic-AArch64/Ubuntu/16.04/gcc_runtimes/8.2. ---------------------------------------------------------- /usr/share/modules/versions -----------------------------------------------------------
3.2. --------------------------------------------------------- /usr/share/modules/modulefiles ---------------------------------------------------------
dot module-git module-info modules null use.own ------------------------------------------------------------- /opt/arm/modulefiles/ --------------------------------------------------------------
Generic-AArch64/Ubuntu/16.04/arm-instruction-emulator/19.2 Generic-AArch64/Ubuntu/16.04/gcc_runtimes/8.2.0 pengdl@firefly:~$ module load Generic-AArch64/Ubuntu/16.04/arm-instruction-emulator/19.2
pengdl@firefly:~$ echo $PATH
/opt/arm/arm-instruction-emulator-19.2_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin64:/home/pengdl/bin:/home/pengdl/.local/bin:/home/pengdl/sve_acle_cross/bin:/opt/gstreamer/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
pengdl@firefly:~$

为了实现以后每次开机都可以直接使用ArmIE,可以将 module load Generic-AArch64/Ubuntu/16.04/arm-instruction-emulator/19.2 加到.bashrc中。

第六步、测试

pengdl@firefly:~$ armie
Execute binaries containing SVE instructions on Armv8-A hardware Usage:
armie [emulation parameters] -- <command to execute> Examples:
armie -msve-vector-bits= -- ./sve_program
armie -msve-vector-bits= --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 bits up to 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' in RELEASE_NOTES.txt for details)
-s, --show-drrun-cmd Writes the full DynamoRIO drrun command used to execute ArmIE to stderr
This can be useful when debugging or developing clients
-h, --help Prints this help message
-V, --version Prints the version

完。

ArmIE的安装的更多相关文章

  1. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  2. 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法

    如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...

  3. Sublime Text3安装JsHint

    介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...

  4. Fabio 安装和简单使用

    Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...

  5. gentoo 安装

    加载完光驱后 1进行ping命令查看网络是否通畅 2设置硬盘的标识为GPT(主要用于64位且启动模式为UEFI,还有一个是MBR,主要用于32位且启动模式为bois) parted -a optima ...

  6. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...

  7. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...

  8. 【原】nodejs全局安装和本地安装的区别

    来微信支付有2年多了,从2年前的互联网模式转变为O2O模式,主要的场景是跟线下的商户去打交道,不像以往的互联网模式,有产品经理提需求,我们帮忙去解决问题. 转型后是这样的,团队成员更多需要去寻找业务的 ...

  9. tLinux 2.2下安装Mono 4.8

    Tlinux2.2发行版基于CentOS 7.2.1511研发而成,内核版本与Tlinux2.0发行版保持完全一致,更加稳定,并保持对Tlinux2.0的完全兼容.Mono 4版本要求CentOS 7 ...

随机推荐

  1. 成神之Java之路

    既然励志在java路上走的更远,那就必须了解java的路径.先看图 image.png 更加细化的细节如下 一: 编程基础 不管是C还是C++,不管是Java还是PHP,想成为一名合格的程序员,基本的 ...

  2. <Random> 380 381(hard) 138

    380. Insert Delete GetRandom O(1) class RandomizedSet { ArrayList<Integer> nums; HashMap<In ...

  3. mariadb指定10.2版本安装及修改默认端口

    原文链接: https://www.cnblogs.com/operationhome/p/9141881.html 延申, mongodb, mariadb:  https://www.cnblog ...

  4. Attention篇(二)

    主要是对<Attention is all you need>的分析 结合:http://www.cnblogs.com/robert-dlut/p/8638283.html  以及自己的 ...

  5. [LeetCode] 899. Orderly Queue 有序队列

    A string S of lowercase letters is given.  Then, we may make any number of moves. In each move, we c ...

  6. python之函数filter、reduce

    ---恢复内容开始--- 一.filter函数 filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表. 该接收两个参数,第一个为函数,第二个为序列,对序列中每个元 ...

  7. forever帮助node应用后台运行

    windows系统下,运行node应用的时候,会有个命令窗存在,看着就碍眼,而且一不小心就关掉了,那有没有方法让node应用也可以运行在后台呢?方法也不止一种,我这里就选forever了,因为安装使用 ...

  8. RocketMQ 使用情况梳理

    个人梳理有限:欢迎大家 丰富此文档 2018年 12 月 RocketMQ 版本  不适用于 新版关系请勿参考目前规划原则:          topic 创建基于业务  消费者基于模块 多对多关系 ...

  9. MAC安装Node.js

    官网下载Node.js Node.js v10.16.3 to /usr/local/bin/node • npm v6.9.0 to /usr/local/bin/npm Make sure tha ...

  10. ASP.Net Core中设置JSON中DateTime类型的格式化(解决时间返回T格式)

    最近项目有个新同事,每个API接口里返回的时间格式中都带T如:[2019-06-06T10:59:51.1860128+08:00],其实这个主要是ASP.Net Core自带时间格式列化时间格式设置 ...