CoreML推理时间会随着迭代增长吗?

问题描述 投票:0回答:1

我必须在Swift中测量我的ML模型的推理时间。为此,我想执行几次推理,然后平均所有推理时间以得到更精确的值。我注意到推理时间随迭代而增加。我一定做错了事,我对Swift不熟悉:

Duration :  4756 ms
Duration :  4879 ms
Duration :  5325 ms
Duration :  5712 ms
Duration :  5952 ms
Duration :  6059 ms
Duration :  6223 ms
Duration :  6244 ms
Duration :  6088 ms
Duration :  6286 ms

这是我的代码段:

for _ in 1...nb_it {

    // Timer
    let tic = CFAbsoluteTimeGetCurrent()

    // Inference    
    _ = try model.prediction(input: input, options: options)

    // Timer
    let toc = CFAbsoluteTimeGetCurrent()
    let duration = Int32(1000 * (toc - tic))

    // Report
    print(String(format: "Duration : %5d ms", duration))
}

这正常吗?知道不是吗?预先感谢!

swift coreml mlmodel
1个回答
0
投票

是的,如果电话变热,这是可能的。您的模型似乎很大(每个预测4秒),因此它正在做大量工作,从而使CPU和/或GPU发热。手机会变慢以避免过热。

© www.soinside.com 2019 - 2024. All rights reserved.