java - 关于Java重数学计算的问题

标签 java performance native

我在我的项目中使用 Java,它进行了大量的数学计算。在项目的下一次迭代中,将添加更多的计算。根据我对 Java 的了解,我怀疑这会导致性能问题。将繁重的计算委托(delegate)给 Fortran 或 C 等低级语言是否是明智的决定?我可以触发 native 调用以与低级语言进行通信。一旦由 Fortran 或 C 执行计算,Java 将接管控制权。 这会提高性能吗?

最佳答案

请注意不要低估现代 Java 虚拟机。第一代的速度非常慢,尤其是在浮点运算方面,但现代的确实非常快。

话虽如此,其他选项可能会更快。

可以肯定的是,您应该运行一些基准测试。不要假设一个会比另一个更快,获取一些具体的性能测量结果并在此基础上做出决定。

还要考虑“ native ”解决方案的额外性能(如果有的话)是否值得编写和集成它的额外麻烦。

关于java - 关于Java重数学计算的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4172288/

相关文章:

java - 从 zipFile 的 byteArray 获取 XML 数据

java - 切换 JPanels 和 keyListeners

java - java jackson 的不同序列化/反序列化名称

Java:如何使用 ObjectOutputStream 将静态文本添加到文件

mysql - 优化sql请求统计

performance - YSlow 和 Google Page Speed 关于 .htaccess 冲突的建议

javascript - 如何优化/调试性能不佳的 JavaScript 代码

java-native-interface - jdk1.0 为何缺乏原生代码和 Java 代码之间的清晰分离?

JavaScript 对象 (JSON) 到 URL 字符串格式

google-maps - 如何从移动 Safari 浏览器链接到 native Google Maps iOS 应用程序