gem5 - 构建 gem5 和 nvmain 时的 ModuleNotFoundError AbstractMemory
问题描述
遵循SEAL-UCSB/NVmain上的构建步骤后,当我运行
scons EXTRAS=../NVmain build/X86/gem5.opt
我收到以下错误。
ModuleNotFoundError: No module named 'AbstractMemory':
File "/project/gem5/SConstruct", line 1243:
SConscript('src/SConscript', variant_dir=variant_path,
File "/usr/lib/scons/SCons/Script/SConscript.py", line 660:
return method(*args, **kw)
File "/usr/lib/scons/SCons/Script/SConscript.py", line 597:
return _SConscript(self.fs, *files, **subst_kw)
File "/usr/lib/scons/SCons/Script/SConscript.py", line 286:
exec(compile(scriptdata, scriptname, 'exec'), call_stack[-1].globals)
File "/project/hsieh123/gem5/build/X86/SConscript", line 783:
exec('from m5.objects import %s' % modname)
File "<string>", line 1:
File "/project/hsieh123/gem5/build/X86/SConscript", line 763:
exec(compiled, mod.__dict__)
File "/project/hsieh123/NVmain/Simulators/gem5/NVMainMemory.py", line 34:
from AbstractMemory import *
解决方案
这是由于 gem5 版本更新和与 gem5 的 nvmain 集成已经过时了。NVmain/Simulators/gem5/NVMainMemory.py
我的解决方案是替换Ln: 34-35 处的两行
从
from AbstractMemory import *
from ClockDomain import *
至
from m5.objects.AbstractMemory import *
from m5.objects.ClockDomain import *
推荐阅读
- java - 过多的次要垃圾收集时间
- excel - 使用 Excel VBA 从基于 Java 的网页上的同一表类中提取特定数据
- symfony - 如何将 EasyAdmin 3.5 与单例实体一起使用
- spartacus-storefront - 处理不区分大小写的上下文值
- reactjs - 带有formik的验证字段
- python - 在 tensorflow 2.x 中分配给张量的更复杂的方法是什么
- html - 全屏模式下可见滚动条
- javascript - 确定 iFrame 元素是否作为包装器中的子元素存在
- sql-server - 测量运行 SQL 作业的时间,如果超过一定数量则启动另一个
- azure - Azure 数据工厂:当链接服务被参数化时,无法将内联数据集用于 Common Data Model