gpt4 book ai didi

c# - 不同机器执行相同API的时间差

转载 作者:太空宇宙 更新时间:2023-11-04 12:37:04 24 4
gpt4 key购买 nike

我在 C# 中的应用程序,WPF 使用 C++ 库中的 API 进行图像处理。我需要一次处理六张图像,因为这六个对象可供使用。当图像准备好进行处理时,它将分配给线程池中的线程。下面的代码用于此目的。

ThreadPool.QueueUserWorkItem(ThreadPoolCallback, imageTuple);

在“ThreadPoolCallback”中调用图像处理 API。

关于我的问题,在我的开发笔记本电脑中,仅执行 API 的时间是 3 - 3.5 秒。但是,当在具有更好规范的 IPC 的自动化系统中执行相同的代码时,API 执行时间缩短为 8 - 9 秒。

我的开发机器有 8 核处理器和 16 GB 内存自动化系统工控机采用14核处理器,32GB内存。

我已经检查了一些基本的事情,比如内存激增、cpu 利用率升高等等。但他们都没有表现出任何值得担心的事情。两个系统的唯一区别是 IPC 安装了 NI Labview。

寻找一些建议来改进我的并行执行时间。我是否可以使用专用内核或任何其他内核。

提前致谢

ThreadPool.QueueUserWorkItem(ThreadPoolCallback, imageTuple);

public void ThreadPoolCallback(Object threadContext)
{
try
{

var result = visionProcessingUnit.ExecuteInspection(imageTuple.Item3, imageTuple.Item2.ImageData, VIBitmap.Width, VIBitmap.Height);;
}
catch (Exception ex)
{
Logger.Exception("VisionHandler.cs", ex);

}
}

最佳答案

首先,您应该确保您的实时系统能够真正更快地处理 6 个线程。您可以在两个系统上下载并解压缩 7zip,并从命令行使用 6 个线程运行一些基准测试:

7z b -mmt6

关于c# - 不同机器执行相同API的时间差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55964462/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com