【发布时间】:2016-05-10 15:32:13
【问题描述】:
我有一个程序,我在其中使用了一个庞大的神经网络来处理近 100 个物体,这些物体在进化状态下四处移动并相互作用。现在,我每次计算完屏幕后都会拍一张照片,这可能需要几个小时。在 youtube 上,我看到了足球神经网络示例和其他人们可以“直播”神经网络的示例。我有哪些方法可以非常快速地运行脚本?这与我当前的代码无关,因为我希望这适用于我所做的任何事情,比如我可以管理大量信息的视频游戏,我知道这是可能的,因为我玩管理大量信息的视频游戏.根据我的研究,似乎多线程可能是我的解决方案。是否有任何其他库可以为大规模计算提供支持? C# 对于大规模计算来说是一种糟糕的语言吗?感谢您的支持。
--编辑 1-- 它导致延迟的瓶颈是由于 for 循环每 1/10 秒进行大约 50,000 次。每次只计算几个字节。分析告诉我这是造成延迟的原因。
--编辑 2-- 回应评论,我未来的希望是做面部识别,有直播。
【问题讨论】:
-
你的问题太宽泛了。在开始提供帮助之前,我们需要查看一些实际代码。您是否自己对代码进行了任何分析以找出瓶颈所在?
-
您对如何提出这个问题有什么建议吗?经过数小时的研究,网上似乎没有人知道任何真正好的方法,除了线程和多 CPU 方法,我的目标计算机无法做到。
-
只需使用多线程和 SIMD 以及任何不是魔法的东西,如果您想要真正快速的东西,您将需要做更少的工作 - 即使用更小的网络。
-
@Evan_K2014 我知道你可能不想分享你的“秘诀”,但很难告诉你如何在没有看到问题代码的情况下优化某些东西。
标签: c# multithreading networking optimization