征集意见!!如果有人大谈特谈说java的效率不好,如何反驳他呢??100分,回答就有分!

fanocean 2004-11-12 07:02:11
这几天在实验室搞一个数据挖掘的项目,用户要求明明是用java写的,但是大家坚持用C++写挖掘算法,说C++比java效率高^_^害得我还要用JNI
如果有人大谈特谈说java的效率不好,如何反驳他呢??
100分,回答就有分!反驳得好在给!!
...全文
599 51 打赏 收藏 转发到动态 举报
写回复
用AI写文章
51 条回复
切换为时间正序
请发表友善的回复…
发表回复
nuclearfighter 2004-11-22
  • 打赏
  • 举报
回复
http://www.tommti-systems.de/go.html?http://www.tommti-systems.de/main-Dateien/reviews/languages/benchmarks.html
中前两个表格中都用了java 1.5 alpha测试版,所以我们只看第三个表格中的结果:

各种语言在各个方面中夺取的第一名:

java 1.4.2_03:
double math
trig Math
IO
exception
hashmap
hashmaps
list
nested loop


C#
string concat

C++ (MS 或 Intel)
int32 math
long 64 math
array
heapsort
matrix multiply

值得一提的是:
以上测试中,java在exception上的处理速度竟是C++的约18倍
======================

=================
http://kano.net/javabench/
中的14个不同的Benchmark程序中,java有9项第一,C++有5项第一

http://www.idiom.com/~zilla/Computer/javaCbenchmark.html
中5种Benchmark
java全胜

。。。。。。。
其它的大家自己看吧
nuclearfighter 2004-11-22
  • 打赏
  • 举报
回复
http://www.javaworld.com/javaworld/jw-02-1998/jw-02-jperf_p.html
中:
java和C++在以下方面打成平手(精确到小数点后一位,完全相同)
Integer division
Dead code
Dead code with Integer division
Floating-point division
Static method
Member method
Virtual member method

但java在以下方面的速度是C++的约3倍
Virtual member method with down cast and Run-Time Type Identification (RTTI)
glacier86400 2004-11-22
  • 打赏
  • 举报
回复
永远支持JAVA
nuclearfighter 2004-11-22
  • 打赏
  • 举报
回复
关于Java的真相,JAVAer一定要看
http://community.csdn.net/Expert/TopicView3.asp?id=3435149
nuclearfighter 2004-11-22
  • 打赏
  • 举报
回复
在全球最大的招聘网站www.monster.com上找到的信息:

美国3天之内新发布的招聘职位
Java 332个
C# 71个
C++ 个264

别的国家自己去查吧。中国的在www.51job.com上查吧
ameny 2004-11-22
  • 打赏
  • 举报
回复
做什么项目啊要用C++的啊!

只有科研才用到C++的,人家军事项目都不用C++呢
jiafcat 2004-11-21
  • 打赏
  • 举报
回复
1、汇编效率更高,你们为什么要用C++?
2、效率高低不是道听途说的,是测出来的。java, c++到底效率有多大差别,是要用科学的方法测出来的。
3、应用场合不同对效率的要求是不同的。3D游戏适合用C++,商业软件适合用java已经是共识。
4、系统是一个整体,应该先优化瓶颈。一般来说,程序语言对系统效率的影响远小于系统体系结构的影响。程序语言效率是内存级别的,如果系统涉及网络,磁盘访问,要把优化重点放在网络,磁盘访问上。
allenhe 2004-11-20
  • 打赏
  • 举报
回复
...
大谈特谈汇编多好...
前提是你汇编要比较强...

或者嵌入式也行
反正把代码弄得越复杂越好
fanocean 2004-11-20
  • 打赏
  • 举报
回复
FAX2U(FAX) 你的立场是很坚定呀,而且理由很充分,研究java几年了?
你说的文章我有时间卡鲁一看
FAX2U 2004-11-20
  • 打赏
  • 举报
回复
每个母亲都说自己的孩子漂亮!
====================
“漂亮”是艺术、是模乎的、难以衡量的。
但“速度”是科学的,是精确的、可以衡量的。
wonve 2004-11-20
  • 打赏
  • 举报
回复
每个母亲都说自己的孩子漂亮!
FAX2U 2004-11-20
  • 打赏
  • 举报
回复
又有人在说Java很慢,Java速度已经达到或超过C++了,请大家不要被偏见迷惑。如果再有人对你说同样的事情,请把这些文章给他看

The Java is Faster than C++ and C++ Sucks Unbiased Benchmark
http://kano.net/javabench/
Java与C++性能对比:
http://www.philippsen.com/JGI2001/finalpapers/18500097.pdf

Java pulling ahead? Performance of Java versus C++

http://www.idiom.com/~zilla/Computer/javaCbenchmark.html

http://www.tommti-systems.de/go.html?http://www.tommti-systems.de/main-Dateien/reviews/languages/benchmarks.html

http://mag.vchelp.net/200312/download/wdn200313.pdf
http://www.javaperformancetuning.com/news/qotm028.shtml
http://www.aceshardware.com/Spades/read.php?article_id=154
http://osnews.com/story.php?news_id=5602&page=3
http://cpp.student.utwente.nl/benchmark/
http://www.kano.net/javabench/data


=====================================
另外补充几篇数据和理论文章。



Performance tests show Java as fast as C++
http://www.javaworld.com/javaworld/jw-02-1998/jw-02-jperf_p.html


JIT Optimization techniques :

Dataflow analysis
Elimination of redundant tests
Translation from stack operations into register operations
Code scheduling
Reduction of memory accesses by register allocation
Method inlining
Dead-code elimination
Elimination of common sub-expression
Loop versioning
Versioning of virtual method calls
Constant propagation

http://www.trl.ibm.com/projects/jit/detail_e2.htm

新的JIT理论:

JIT compiler
– Method invocation optimization[OOPSLA00][JVM02]
– Exception optimization[ASPLOS00][OOPSLA01][PACT02]
– Profiling based optimization[JG00][PLDI03][PACT03]
– Float optimization[JVM02][ICS02]
– 64bit architecture optimization[PLDI02]
– Register allocation[PLDI02]
– Data prefetch[PLDI03]
– Instruction Scheduling[CGO03]
– Compiler overview[JG99][IBMSysJournal00][OOPSLA03]
􀂃 Runtime systems
– Fast lock[OOPSLA99][OOPSLA02][ECOOP04]
– Fast interpreter[ASPLOS02]

http://www.is.titech.ac.jp/ppl2004/proceedings/ishizaki_slides.pdf
http://act.it.sohu.com/book/chapter.php?id=51&volume=1&chapter=9
http://act.it.sohu.com/book/serialize.php?id=51
FAX2U 2004-11-20
  • 打赏
  • 举报
回复
终结者
FAX2U 2004-11-20
  • 打赏
  • 举报
回复
最强的武器在此
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
V

http://community.csdn.net/Expert/TopicView3.asp?id=3463579
qixiao 2004-11-20
  • 打赏
  • 举报
回复
just jf
cquwgy 2004-11-20
  • 打赏
  • 举报
回复
一句话,java在c++后产生,而且吸收了c++的精华,如果java比c++差,那不是说人类社会是在退步了.
御南 2004-11-20
  • 打赏
  • 举报
回复
就是啊,其实跟本就没必要去反驳他们
snow_oracle 2004-11-19
  • 打赏
  • 举报
回复
支持
zj_ok 2004-11-19
  • 打赏
  • 举报
回复
java有很多优点,效率恰恰是它的缺点,没法反驳,只有从其他java有优势的方面入手
classjava 2004-11-19
  • 打赏
  • 举报
回复
楼主要避开弱点,用那个跨平台的超级特性打败她
加载更多回复(31)

23,407

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧