在gem5上运行Splash benchmarks
来源:互联网 发布:软件测试大纲 编辑:程序博客网 时间:2024/06/05 10:36
有2种方式在gem5上运行SPLASH-2,即FS(full-system)模式和SE(syscall-emulation)模式
- 使用FS模式
最稳定的方法是使用PARMACS macros的一个Pthreads实现来编译benchmarks,然后链接标准Linux Pthreads library并在M5上以FS模式运行此二进制文件。
优点:
现实:你获得实际的Linux线程调度器来调度你的线程。
稳定性(和目前的SE模式相反...详见下面)
你能编译一个交叉编译器来在非Alpha平台上编译二进制()
缺点:
CPU限制:我们模拟的Tsunami平台仅支持4个CPU,通过打补丁扩展到64个
开销:你已经下载一个disk image,获得disk image的二进制,在M5上启动Linux。
详细运行步骤
下载
下载splash2。从SPLASH2下载SPLASH的补丁。
编译
跟着UDEL网站的指导。许多benchmarchs很容易编译。一些需要额外的工作。
radiosity: descend into glibdumb and glibps and ‘make’.
volrend: unarchive and build the libtiff; I had to modify its makefile by adding -DBSDTYPES in the CFLAGS复制
挂载模拟中使用的disk image,例如
sudo mount -o loop,offset=32256 linux-arm-ael.img /mnt/tmp
执行
接下来是基本的默认方式来运行benchmarks。若你为你的主机体系结构编译,你应该能够直接测试。
barnes: ./BARNES < input
fmm: uncompress the files in the inputs directory, then ./FMM < inputs/input.16384
ocean: ./OCEAN
radiosity: ./RADIOSITY -batch
raytrace: uncompess the files in the inputs directory. I had to run with additional memory (probably a data sizing issue with 64-bit machinery): ./RAYTRACE -m64 inputs/car.env
volrend: Uncompress the files in the inputs directory, then ./VOLREND 1 inputs/head (omit the .den extension, it is automatically appended in the code).
water-nsquared: ./WATER-NSQUARED < input
water-spatial: ./WATER-SPATIAL < input
- 使用SE(syscall-emulation)模式
- 在gem5上运行Splash benchmarks
- splash-2在gem5 full system下的运行命令
- 在gem5中运行spec cpu2006
- Gem5在X64架构下运行SPEC2006
- Run SPLAHS2 under SE mode on gem5在gem5的SE模式下,运行SPLASH2程序
- gem5如何运行spec2006
- gem5中运行spec2006
- gem5运行cpu2006
- 运行gem5 ARM64 全系统
- 手动编译运行speccpu2000中的benchmarks
- 在gem5的full system下运行 alpha编译的测试程序 running gem5 on ubuntu in full system mode in alpha
- 在gem5的full system下运行 x86编译的测试程序 running gem5 on ubuntu in full system mode in x86
- gem5
- Gem5的编译及运行测试程序
- Gem5的编译及运行测试程序
- gem5运行后统计数据stats.txt含义
- gem5的安装编译及测试运行
- gem5: 可运行的spec2006 benchmark总结
- 基于子网的vlan划分配置要点及实例
- 使用递归实现霍纳法则
- 用Nand flash出现:Kernel panic - not syncing: No init found. Try passing init= option to kerne
- printf函数详解
- hihocoder:hiho一下第二十八周之二叉堆
- 在gem5上运行Splash benchmarks
- Oracle sql语句
- 修复ubuntu引导
- 如何理解正则表达式
- IXL506的时序驱动问题——项目问题2
- 嵌入式C语言OO编程方法
- 11 第十一天
- cortex_m3_stm32嵌入式学习笔记(十一):TFTLCD显示(初涉显示器)
- 164 東皐 李浚慶