gem5 - gem5中的乘以循环变量
问题描述
我想知道是否可以在 gem5 中乘以 Cycles 类型变量。我要表示的是一定的延迟,它被添加了 n 次。所以是这样的:
return lookupLatency * n;
我收到此错误:
error: could not convert '(((const BaseCache*)this)->BaseCache::lookupLatency.Cycles::operator uint64_t() * ((uint64_t)n))' from 'uint64_t {aka long unsigned int}' to 'Cycles'
有没有办法快速做到这一点?
解决方案
Cycles 只是 uint64_t 的一个包装类,您可以在 src/base/types.hh 中检查它的功能。
话虽如此,构造函数必须是显式的,并且您正试图从lookupLatency * n 隐式创建一个Cycles 变量,它是一个uint64_t。只需调用构造函数使其再次循环:
return Cycles(lookupLatency * n);
推荐阅读
- pyqt - PyQt5 修复 Qlabel 位置
- batch-file - Windows 更多命令要求用户输入
- google-chrome - cordova.InAppBrowser 返回 null url 事件'{type: "loadstop", url: null}'
- python - 为什么将数据框导出到 aws mysql 会导致空表?
- java - DateTimeFormatter 的 DateTimeParseException,模式为“yyyy[-MM[-d[HH[:mm[:ss[.SSS]]]]]”
- elasticsearch - AWS ElasticSearch 集群的堆大小
- spring-boot - 检索访问令牌后,Spring Boot OAuth2“访问此资源需要完全身份验证”
- excel - 更改数字中最后 3 位的字体颜色
- r - R闪亮:无法下载交互式报告
- excel - 根据下一列提取子字符串