繁体   English   中英

Scala等与C / C ++ / Fortran之间的性能比较?

[英]Comparison of performance between Scala etc. and C/C++/Fortran?

我想知道在“现代”多线程专用语言(例如scala)和“经典”“低级”语言(如C,C ++,Fortran)之间是否有可靠的性能比较,使用MPI,Posix甚至Open-MP等并行库。

任何链接和建议欢迎。

鉴于Java,以及Scala,可以调用外部库,并且考虑到那些高度专业化的外部库将完成大部分工作,那么只要使用相同的库,性能就是相同的。

除此之外,任何这样的比较基本上都是毫无意义的。 Scala代码在具有运行时优化的虚拟机上运行。 这种优化可以推动长期运行的程序比使用其他语言编译的程序更好的性能 - 或者不是。 这取决于用每种语言编写的特定程序。

这是另一个非答案:转到您当地的超级计算机中心,询问您感兴趣的每种语言使用的CPU负载的比例。这只会给您一个代理问题的答案,它会告诉您哪些人是谁关注这类机器在解决他们所处理的问题时的高性能。 但是,对于这样一个广泛的问题,你可能得到的任何其他答案都具有指导性。

PS答案是Fortran,C和C ++消耗的CPU周期超过95%。

我认为这种比较只是一个分数。 分子是一个常数(我相信大约0.00001)。 分母是线程数乘以逻辑处理器的数量。

IOW,对于一个单独的线程,这个比较在一百万个含义中有一个机会。 对于运行具有(例如)16个线程的应用程序的四核处理器,在6400万有意义的结果中,你只有一次机会。

简而言之,毫无疑问,有很多人在研究它,但是即使是任何一个提供有用且有意义的结果的单一结果的可能性仍然非常低。 更糟糕的是,即使其中一个确实有意义,也几乎不可能找到,甚至更难以验证到你实际上知道它意味着什么。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM