【问题标题】:Does Encog has good perfomance at multisocket motherboards with multiple processors?Encog 在多处理器的多插槽主板上是否具有良好的性能?
【发布时间】:2015-04-03 11:55:33
【问题描述】:

Encog 支持多线程。但据我了解,最好在一个处理器上并行处理,例如 8 个内核。如果我购买带有 4 个插槽的 motherboard 并在那里安装四个 Intel Xeon E5-4600,它会更快地工作吗?有没有人尝试过类似的东西?请仅在您真正知道或真正尝试过的情况下回答。

【问题讨论】:

    标签: c# multithreading neural-network encog


    【解决方案1】:

    我认为这个问题很大程度上取决于您使用的是哪个版本的 Encog(Java.NETC++),以及您自己的代码是如何编写的。

    如您所见,.NET 版本的 Encog actively using 有它自己的IMultiThreadable 接口,并且有一个lot of classes 使用Parallel 类进行学习。

    对于 Java,接口的名称是 MultiThreadableC++版本没有接口,但代码仍然使用object.c文件中的threadCount参数。如我所见,Javascript version 没有在javascript 中使用任何多线程支持(即使它具有多线程支持也不能说)。

    所以我可以肯定地说,是的,如果您使用正确的类,它会在机器上可用的更多内核的情况下更快地工作(因为它使用可以获得硬件优势的内核类)示例(在C#):

    更多关于 Encog 上的多线程应用可以在这里找到:
    Applying Multithreading to Resilient Propagation and Backpropagation

    【讨论】:

    • 我对 C# 版本特别感兴趣。换句话说,如果 C# 中的 Parallel 可以使用 4 个处理器和 4 个内核,那么 C# 版本的 Encog 会运行得更快
    • 如果 CLR 从 Parallel 类生成 IL 代码,能够在 JIT 编译期间使用该硬件,如果您想完全正确的话。如果您要预编译您的应用程序,则可能会出现性能问题。
    猜你喜欢
    • 2014-04-25
    • 1970-01-01
    • 2012-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-18
    相关资源
    最近更新 更多