You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Google Benchmark参数值自定义命名?

为Google Benchmark参数值自定义命名的方法

要实现将基准测试名称从数字后缀改为自定义名称,你可以利用Google Benchmark的Apply方法,结合Arg和Name来批量设置参数对应的名称。修改后的代码如下:

inline constexpr auto names = std::array{ "Alex", "Bob", "Charles" };

static void NameTest(benchmark::State& state)
{
    const auto name = names[state.range(0)];
    // 这里添加你的基准测试逻辑
}

// 替换原有的DenseRange,通过Apply批量设置参数和名称
BENCHMARK(NameTest)->Apply([](benchmark::internal::Benchmark* b) {
    for (int i = 0; i < names.size(); ++i) {
        b->Arg(i)->Name(names[i]);
    }
});

原理说明

  • Apply方法允许我们对基准测试实例进行批量配置,这里通过遍历names数组,为每个索引值创建对应的参数项。
  • Arg(i)添加参数值i,Name(names[i])将该参数对应的测试名称后缀替换为自定义的字符串,最终生成NameTest/Alex、NameTest/Bob这类符合需求的名称。

内容的提问来源于stack exchange,提问作者Don Reba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 14:21:01