Pab*_*ect 21 c++ math performance computation node.js
我必须编写一个实现一些模糊逻辑的服务器程序,我选择在Node.js中编写它以利用它的事件方向.我必须处理困难的数学计算问题,我不知道什么是获得性能的最佳方法:
在这两个平台上都有这类计算经验的人吗?
Tob*_*ner 41
既然你需要Node.js部分,请继续,在Node.js中实现所有内容.如果它足够快,这很容易维护.很难预测虚拟机/ JIT编译器的强大功能.
如果速度不够快,首先要考虑算法的改进.如果这没有帮助,并且如果分析显示计算是问题,那么继续,在C++中重新实现它.但请注意,编写高性能的C++代码并非易事.确保你有一个好的剖析器,并经常测量.
一般来说,如果写得正确,我会说C++代码更快.棘手的部分是正确地写它.有关更多信息,请查看本文关于C++,Java,Scala,Go的Google论文.要点是 - 托管语言使编写和维护代码变得更加容易,但如果您需要原始性能,C++是最好的.但它需要大量专业知识并且代码难以维护.
回答这类问题几乎是不可能的.对于这些事情,答案总是取决于您的技能以及您愿意投入多少时间和精力.
C++始终具有更快,更高效的潜力,因为您可以更加密切地控制所有重要事项.你必须做所有重要的事情和其他语言的通用实现的缺点可能是由一个知道他们正在做什么的人完成的,并且可能比c ++中的天真或快速实现更好.
另外,你经常会发现瓶颈并不是你认为的那样,例如,如果读数据的结果是计算时间的20倍,这是不可能的,那么几乎不会有多快计算是.即使是经验丰富的开发人员,关于瓶颈所在的直觉也常常是错误的.
http://benchmarksgame.alioth.debian.org/u64q/compare.php?lang=node&lang2=gpp
Run Code Online (Sandbox Code Playgroud)
上面的链接已消失,现在在回溯中-
C ++使用CPU并比执行数学运算的Node.js快10倍。
该站点移至此处 https://benchmarksgame-team.pages.debian.net/benchmarksgame/which-programs-are-fastest.html
归档时间: |
|
查看次数: |
24276 次 |
最近记录: |