s*****e 发帖数: 16824 | 1 以前都说差很多,现在又据说有了JIT以后差不多了,甚至有说java更快的。根据大家
的经验,现在到底怎么样?之所以问这个问题,是因为现在在写一个程序,需要跟另外
一个C++写的程序比较速度,目前我的程序要慢一些,我在考虑要不要把程序编译成本
地代码或用c++重写。顺便问一下,如果要把java编译成本地代码,应该用什么工具? |
w***g 发帖数: 5958 | 2 速度差一倍的样子,一般可以忽略不计。问题是绝大多数java程序根本不肯能用C++重
写,所以比较速度基本上没有意义。
【在 s*****e 的大作中提到】 : 以前都说差很多,现在又据说有了JIT以后差不多了,甚至有说java更快的。根据大家 : 的经验,现在到底怎么样?之所以问这个问题,是因为现在在写一个程序,需要跟另外 : 一个C++写的程序比较速度,目前我的程序要慢一些,我在考虑要不要把程序编译成本 : 地代码或用c++重写。顺便问一下,如果要把java编译成本地代码,应该用什么工具?
|
c********1 发帖数: 5269 | 3 It depends on the type of application.
We converted a c++ embedded processor simulator to java about 3 years ago.
We only get about 1% of original speed at the first cut. The best we can get
is about 10% of original speed.
【在 w***g 的大作中提到】 : 速度差一倍的样子,一般可以忽略不计。问题是绝大多数java程序根本不肯能用C++重 : 写,所以比较速度基本上没有意义。
|
z****e 发帖数: 54598 | 4 看你的程序怎么写的
大多数人手写的c++程序其实运行效率还要低于java程序
假设java的程序跑在hotspot上
另外如果你要把java compile成native的话
应该最新版的javafx就可以做到
当然这样的话你就无法用很多现成的server
比如tomcat之类的,只能从main开始写
所以说到底还是你写的是啥程序? |
s*****e 发帖数: 16824 | 5 以前都说差很多,现在又据说有了JIT以后差不多了,甚至有说java更快的。根据大家
的经验,现在到底怎么样?之所以问这个问题,是因为现在在写一个程序,需要跟另外
一个C++写的程序比较速度,目前我的程序要慢一些,我在考虑要不要把程序编译成本
地代码或用c++重写。顺便问一下,如果要把java编译成本地代码,应该用什么工具? |
w***g 发帖数: 5958 | 6 速度差一倍的样子,一般可以忽略不计。问题是绝大多数java程序根本不肯能用C++重
写,所以比较速度基本上没有意义。
【在 s*****e 的大作中提到】 : 以前都说差很多,现在又据说有了JIT以后差不多了,甚至有说java更快的。根据大家 : 的经验,现在到底怎么样?之所以问这个问题,是因为现在在写一个程序,需要跟另外 : 一个C++写的程序比较速度,目前我的程序要慢一些,我在考虑要不要把程序编译成本 : 地代码或用c++重写。顺便问一下,如果要把java编译成本地代码,应该用什么工具?
|
c********1 发帖数: 5269 | 7 It depends on the type of application.
We converted a c++ embedded processor simulator to java about 3 years ago.
We only get about 1% of original speed at the first cut. The best we can get
is about 10% of original speed.
【在 w***g 的大作中提到】 : 速度差一倍的样子,一般可以忽略不计。问题是绝大多数java程序根本不肯能用C++重 : 写,所以比较速度基本上没有意义。
|
z****e 发帖数: 54598 | 8 看你的程序怎么写的
大多数人手写的c++程序其实运行效率还要低于java程序
假设java的程序跑在hotspot上
另外如果你要把java compile成native的话
应该最新版的javafx就可以做到
当然这样的话你就无法用很多现成的server
比如tomcat之类的,只能从main开始写
所以说到底还是你写的是啥程序? |
F****n 发帖数: 3271 | 9 In your benchmarking,
did you
1. warm up your java code
2. use java -server option
3. use Java7 or later
Normally Java is faster than most C++ code without smart pointer and memory
pool.
But if your C++ code is in fact C functions, Java should be slower by 1.4
times or more, depending on how you implement the Java code.
cygwin has a native Java compiler, but the native code it generates could be
slower if you use a lot of objects.
【在 s*****e 的大作中提到】 : 以前都说差很多,现在又据说有了JIT以后差不多了,甚至有说java更快的。根据大家 : 的经验,现在到底怎么样?之所以问这个问题,是因为现在在写一个程序,需要跟另外 : 一个C++写的程序比较速度,目前我的程序要慢一些,我在考虑要不要把程序编译成本 : 地代码或用c++重写。顺便问一下,如果要把java编译成本地代码,应该用什么工具?
|