Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
X
xv6-public
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
问题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
银宸时代
OS Lab Group
奖励实验
xv6-public
提交
58912c4c
提交
58912c4c
4月 29, 2012
创建
作者:
Silas Boyd-Wickizer
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
bench tweaks
上级
a05638cb
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
14 行增加
和
10 行删除
+14
-10
bench.cc
bin/bench.cc
+14
-10
没有找到文件。
bin/bench.cc
浏览文件 @
58912c4c
...
...
@@ -67,6 +67,17 @@ struct LoopsBench : public Bench
LoopsBench
(
const
char
*
cmd
,
int
nloops
,
int
cpuinc
)
:
Bench
(),
cmd_
(
cmd
),
nloops_
(
nloops
),
cpuinc_
(
cpuinc
)
{}
char
*
runone
(
int
ncore
,
const
char
**
argv
,
char
*
res
,
int
n
)
{
char
cores
[
16
];
snprintf
(
cores
,
sizeof
(
cores
),
"%u"
,
ncore
);
argv
[
1
]
=
cores
;
u64
r
=
time_this
(
argv
);
// r in usecs
r
=
(
r
*
(
1000
*
1000
))
/
cpuhz
();
snprintf
(
res
,
n
,
"%u %lu %lu
\n
"
,
ncore
,
r
,
nloops_
);
return
res
+
strlen
(
res
);
}
virtual
void
run
(
void
)
{
char
nloopstr
[
16
];
snprintf
(
nloopstr
,
sizeof
(
nloopstr
),
"%u"
,
nloops_
);
...
...
@@ -78,16 +89,9 @@ struct LoopsBench : public Bench
snprintf
(
res
,
q
-
res
,
"#cores usecs loops/core
\n
"
);
res
+=
strlen
(
res
);
for
(
int
i
=
cpuinc_
;
i
<=
NCPU
;
i
+=
cpuinc_
)
{
char
cores
[
16
];
snprintf
(
cores
,
sizeof
(
cores
),
"%u"
,
i
);
argv
[
1
]
=
cores
;
u64
r
=
time_this
(
argv
);
// r in usecs
r
=
(
r
*
(
1000
*
1000
))
/
cpuhz
();
snprintf
(
res
,
q
-
res
,
"%u %lu %lu
\n
"
,
i
,
r
,
nloops_
);
res
+=
strlen
(
res
);
}
res
=
runone
(
1
,
argv
,
res
,
q
-
res
);
for
(
int
i
=
cpuinc_
;
i
<=
NCPU
;
i
+=
cpuinc_
)
res
=
runone
(
i
,
argv
,
res
,
q
-
res
);
}
virtual
char
*
result
(
void
)
{
...
...
编写
预览
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论