gem5相关内容

gem5 syscall emulation arm C hello world 因“致命:syscall gettid (#224) unimplemented"而失败

我在 gem5 中遇到以下错误.这仅在 ARM 中发生.在 X86 中,我看到一些系统调用被忽略,但没有一个会导致致命错误. tomas@ubuntu:~/gem5$ ./build/ARM/gem5.opt configs/example/arm/starter_se.py ../tests_gem5/hellogem5模拟器系统.http://gem5.orggem5 是受版权保护的软件;使 ..
发布时间:2022-01-17 13:32:45 服务器开发

为什么Linux内核在全系统模式下看不到gem5模拟器中的缓存大小?

我想在我的 gem5 模拟器中调整缓存大小,看看它如何影响程序的性能,并可能在运行时调整程序. 作为健全性检查,我尝试检查我使用的命令行参数是否有效,因此我尝试了以下建议的各种方法:https://superuser.com/questions/55776/finding-l2-cache-size-in-linux/1298808#1298808 cat/sys/devices/syst ..
发布时间:2022-01-04 22:36:37 其他开发

为什么一个简单的 C 程序需要系统调用?

与这个其他问题有关.我正在尝试在 gem5 中运行这个简单的 C 程序: int main() {int a=1, b=2;int c=a+b;返回 c;} 它失败了,因为 gem5 没有实现一些系统调用. 我的问题是,为什么像这样的简单程序需要系统调用?这应该可以毫无问题地运行裸机.有没有办法编译它以避免系统调用?我正在使用 arm-linux-gnueabi-gcc -static ..
发布时间:2021-11-17 22:14:18 其他开发

将 perf_event 与 gem5 中的 ARM PMU 一起使用

由于 gem5 源代码和一些出版物,我知道 ARM PMU 已部分实现. 我有一个二进制文件,它使用 perf_event 访问基于 Linux 的操作系统上的 PMU,在 ARM 处理器下.它可以在 ARM ISA 下,在带有 Linux 内核的 gem5 全系统模拟中使用 perf_event 吗? 到目前为止,我还没有找到正确的方法.如果有人知道,我将不胜感激! 解决方案 ..
发布时间:2021-11-17 22:01:16 服务器开发

gem5 系统调用仿真臂 C hello world 失败,“致命:系统调用 gettid (#224) 未实现"

我在 gem5 中遇到以下错误.这仅发生在 ARM 中.使用 X86,我看到一些系统调用被忽略,但没有导致致命错误. tomas@ubuntu:~/gem5$ ./build/ARM/gem5.opt configs/example/arm/starter_se.py ../tests_gem5/hellogem5模拟器系统.http://gem5.orggem5 是受版权保护的软件;使用 -- ..
发布时间:2021-11-17 21:40:36 服务器开发

如何在 gem5 Full System 中编译和运行 C 程序(使用 OpenMP)?

我是一名本科生,正在撰写有关并行编程的论文.我正在使用 OpenMP 模型.现在我想使用 gem5 来衡量性能.这就是我通过以下链接成功安装 gem5 Full System 的原因: http://cearial01.kaist.ac.kr/index.php/2016/08/26/gem5-documentation/ 现在我想编译 &使用 gem5 运行带有 OpenMP (ma ..
发布时间:2021-06-12 20:19:21 其他开发

从 GEM5 获取物理地址跟踪

我一直在尝试提取应用程序访问的物理地址以分析行命中. 这样做时,我关注了此页面 由于版本变化而变化很小. 我将 CacheConfig.py 修正为: system.monitor2 = CommMonitor()system.monitor2.trace = MemTraceProbe(trace_file = "CT_mon2.trc.gz")system.monitor2.sl ..
发布时间:2021-06-02 19:41:26 其他开发

启动 gem5 X86 Ubuntu 全系统模拟

我需要在gem5上运行相对较新版本的x86磁盘映像.从本指南开始,我将Ubuntu 12.04磁盘映像与Kernel v3.2.1作为该组合适用于其他人. 在某些时候,模拟器刚刚挂起,请分享有关原因和可能解决方案的任何想法.谢谢! 您可以在下面的m5term/telnet上找到输出.之后,是准备磁盘映像和内核以供参考的过程. gem5终端的最后一部分(m5term/telnet) ..
发布时间:2021-05-30 18:35:29 其他开发

x86中未使用或使用最少的MOV指令,可用于自定义MOV扩展

我正在gem5模拟器中的X86体系结构中对自定义MOV指令进行建模,以测试其在模拟器上的实现,我需要使用内联汇编来编译我的C代码以创建一个二进制文件.但是由于它是GCC编译器中尚未实现的自定义指令,因此编译器将抛出错误.我知道一种方法是扩展GCC编译器以接受我的自定义X86指令,但是我不想这样做,因为它比较耗时(但是以后会这样做). 作为一个临时技巧(只是检查我的实现是否值得).我想在模拟器 ..
发布时间:2021-05-16 18:35:03 其他开发

schedBreak(< tick>)gdb调试功能不起作用

我试图使用gdb创建断点并调试gem5.我提到了 http://www.gem5.org/Debugger_Based_Debugging . 与上面链接中的官方文档一样,我尝试了`call schedBreak(),但是它不起作用.以下是完整的命令: ➜test-gem5-x86 git:(master)✗gdb --args ./build/X86/gem5.opt configs/l ..
发布时间:2021-05-10 18:37:19 其他开发

在gem5中将perf_event与ARM PMU结合使用

由于gem5源代码和一些出版物,我知道ARM PMU是部分实现的. 我有一个二进制文件,该文件使用perf_event在ARM处理器下基于Linux的OS上访问PMU.它可以在ARM ISA下在具有Linux内核的gem5全系统仿真中使用perf_event吗? 到目前为止,我还没有找到正确的方法.如果有人知道,我将非常感激! 解决方案 上下文 由于 gem5的未实现的功 ..
发布时间:2021-04-09 19:23:54 服务器开发

如何在gem5中启用ARM半主机?

我尝试运行对QEMU起作用的半主机退出指令: mov r0, #0x18 ldr r1, =#0x20026 svc 0x00123456 但是gem5似乎无法正确处理它并崩溃了. 解决方案 以下修补程序将其添加到裸金属.py中,而不是fs.py中(2020年3月): .com/c/public/gem5/+/26993/4"rel =" nofollow noreferrer“ ..
发布时间:2020-06-16 18:37:16 其他开发

如何在具有多核的ARM上的KVM上运行gem5?

单核与fs.py一起使用,地址为a5bc2291391b0497fdc60fdc960e07bcecebfb8f(2018年11月),但多核在启动过程中早期挂起. ARM是否支持多核KVM 解决方案 截至2019年10月,gem5的ARM KVM通常不够坚固,无法普遍推荐. 多核在某些设置上有效,而在其他设置上失败,因此可能存在未解决的错误. GICv2与GICv3版本不兼容也 ..
发布时间:2020-06-16 18:37:13 其他开发

如何用树来构建gem5?

正常的构建命令: scons build/ARM/gem5.opt 将构建版本放置在源代码树中的位置: build/ 如何将其放置在自定义位置? 我找不到任何相关的scons选项. 解决方案 我scons /any/path/that/you/want/build/ARM/gem5.opt gem5的构建系统只是神奇地解析了路径,并从中提取了拱门和opt. ..
发布时间:2020-06-16 18:37:11 其他开发

如何设置Eclipse IDE进行gem5开发?

由于: 广泛使用代码自动生成功能(尤其是.isa指令和解码器子语言) 将原始资源符号链接到构建树中,尤其是符号链接src/arch/ARCH到src/ARCH 设置Eclipse以使其与gem5配合使用变得非常困难. 有人成功实现了良好的设置吗?对Linux主机特别感兴趣. 解决方案 通过以下可怕的技巧,我已经实现了很好的设置:在build/ARM目录本身内定义Ecli ..
发布时间:2020-06-16 18:37:07 其他开发