由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - java就是andriod慢的原因,为什么总有人要争呢? (转载)
相关主题
Java的performanceJava 写的程序在server端也是在JVM上run吗?
Hejlsberg比Gosling牛10倍Scala higher-kind type和jvm弱type system
古狗研究新出炉:C++ Is The Best Performing Language我来尽量客观地谈谈GC/ref count,还有RAII
Sun当年设计Java的败笔蜥蜴和好虫掐起来了
Java 9 and beyondscala vs clojure ?
java是最好的语言java大概还有多久才能和C++一样快呢?
C++确实不适合做大项目没觉得Java比Python和Perl有啥优点
用java写的用户界面速度慢,用户体验很差.为什么还这么多人用java写GUI的软件?RAII和GC对应的两条技术路线
相关话题的讨论汇总
话题: java话题: c++话题: android话题: gc话题: language
进入Programming版参与讨论
1 (共1页)
t*****n
发帖数: 4908
1
【 以下文字转载自 PDA 讨论区 】
发信人: vtechusa (影子与回旋), 信区: PDA
标 题: java就是andriod慢的原因,为什么总有人要争呢?
发信站: BBS 未名空间站 (Mon Nov 19 00:03:57 2012, 美东)
随意查了几个网站的benchmarks,结果大相径庭,有的java比c还快,你信啊?在仔细
看看程序,简单几行,java里连几个类啊对象都没有,这种比较有意义?更何况实际使
用的时候还不时的给你gc一下。根据实际经验,fortran, c++, c, java里面毫无疑问c
++/c速度最快啊,java在复杂一点的系统里会慢很多。
看这篇paper
https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf
b*******s
发帖数: 5216
2
java要是快,高频交易系统就用java而不是c++写了,c++很重要的特性是编译期多态,
这个兼顾了设计灵活和运行时效率
h****r
发帖数: 2056
3
我算服了,下面那个link里那种语言比较性的东西也值得发篇文章?
对程序员来说那就是个常识。没别的事可做吗?

问c

【在 t*****n 的大作中提到】
: 【 以下文字转载自 PDA 讨论区 】
: 发信人: vtechusa (影子与回旋), 信区: PDA
: 标 题: java就是andriod慢的原因,为什么总有人要争呢?
: 发信站: BBS 未名空间站 (Mon Nov 19 00:03:57 2012, 美东)
: 随意查了几个网站的benchmarks,结果大相径庭,有的java比c还快,你信啊?在仔细
: 看看程序,简单几行,java里连几个类啊对象都没有,这种比较有意义?更何况实际使
: 用的时候还不时的给你gc一下。根据实际经验,fortran, c++, c, java里面毫无疑问c
: ++/c速度最快啊,java在复杂一点的系统里会慢很多。
: 看这篇paper
: https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf

g*****g
发帖数: 34805
4
Java比C/C++没人争。但谁说Android慢了?各大主流评测网站都说很流畅。
买个$100刀的prepaid,还装一堆垃圾软件,那当然慢了。
m*******l
发帖数: 12782
5
fortran最快

问c

【在 t*****n 的大作中提到】
: 【 以下文字转载自 PDA 讨论区 】
: 发信人: vtechusa (影子与回旋), 信区: PDA
: 标 题: java就是andriod慢的原因,为什么总有人要争呢?
: 发信站: BBS 未名空间站 (Mon Nov 19 00:03:57 2012, 美东)
: 随意查了几个网站的benchmarks,结果大相径庭,有的java比c还快,你信啊?在仔细
: 看看程序,简单几行,java里连几个类啊对象都没有,这种比较有意义?更何况实际使
: 用的时候还不时的给你gc一下。根据实际经验,fortran, c++, c, java里面毫无疑问c
: ++/c速度最快啊,java在复杂一点的系统里会慢很多。
: 看这篇paper
: https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf

m*******l
发帖数: 12782
6
板凳

【在 g*****g 的大作中提到】
: Java比C/C++没人争。但谁说Android慢了?各大主流评测网站都说很流畅。
: 买个$100刀的prepaid,还装一堆垃圾软件,那当然慢了。

N***m
发帖数: 4460
7
都什么年代了,还纠结快慢啥的

问c

【在 t*****n 的大作中提到】
: 【 以下文字转载自 PDA 讨论区 】
: 发信人: vtechusa (影子与回旋), 信区: PDA
: 标 题: java就是andriod慢的原因,为什么总有人要争呢?
: 发信站: BBS 未名空间站 (Mon Nov 19 00:03:57 2012, 美东)
: 随意查了几个网站的benchmarks,结果大相径庭,有的java比c还快,你信啊?在仔细
: 看看程序,简单几行,java里连几个类啊对象都没有,这种比较有意义?更何况实际使
: 用的时候还不时的给你gc一下。根据实际经验,fortran, c++, c, java里面毫无疑问c
: ++/c速度最快啊,java在复杂一点的系统里会慢很多。
: 看这篇paper
: https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf

r*******n
发帖数: 3020
8
现在手机pad竞争白热化,看谁的用户体验好,速度还是很关键的因素。

【在 N***m 的大作中提到】
: 都什么年代了,还纠结快慢啥的
:
: 问c

w***u
发帖数: 17713
9
慢的后面是不是意味着耗电也多?屁大点事情绕几个弯才实现。
t*****n
发帖数: 4908
10
汇编最快。fortran已经被历史遗忘了。。。。

【在 m*******l 的大作中提到】
: fortran最快
:
: 问c

相关主题
java是最好的语言Java 写的程序在server端也是在JVM上run吗?
C++确实不适合做大项目Scala higher-kind type和jvm弱type system
用java写的用户界面速度慢,用户体验很差.为什么还这么多人用java写GUI的软件?我来尽量客观地谈谈GC/ref count,还有RAII
进入Programming版参与讨论
D****r
发帖数: 309
11
This is an obvious fact, since java is not not a (deeply enough) compiled
language and easily be decoded, as mention @wiki, java is " Java is
translated to a form that is intended to be interpreted", so more close to
be called a "interpreted language".
C/C++ programs are impossible to be decompiled into Assembly level, which
tells how close the code to machine/chips, where it is to be interpreted and
executed.
That is a efficiency/speed of execution.
In a word, java is focus on understandable, compatible and cross-platform, C
is focus on execution.
d***q
发帖数: 1119
12
android现在不慢,2.3之后都不错了
r*******n
发帖数: 3020
13
你这个 not not是什么意思

and
C

【在 D****r 的大作中提到】
: This is an obvious fact, since java is not not a (deeply enough) compiled
: language and easily be decoded, as mention @wiki, java is " Java is
: translated to a form that is intended to be interpreted", so more close to
: be called a "interpreted language".
: C/C++ programs are impossible to be decompiled into Assembly level, which
: tells how close the code to machine/chips, where it is to be interpreted and
: executed.
: That is a efficiency/speed of execution.
: In a word, java is focus on understandable, compatible and cross-platform, C
: is focus on execution.

c*****a
发帖数: 808
14
机器快就行了吧....
D****r
发帖数: 309
15
Sorry for the typo.( I mean java is not a (deeply enough) compiled
language ...)
In fact, I would compare java/js/php/cgi/perl/python/shell script for high
speed execution. That would make sense.
In so far, if also include SQL vs. various DB access speed would be much
more useful.

【在 r*******n 的大作中提到】
: 你这个 not not是什么意思
:
: and
: C

r*******n
发帖数: 3020
16
但从语言来说,我认为java是compiled language.
执行是JVM解释执行。

【在 D****r 的大作中提到】
: Sorry for the typo.( I mean java is not a (deeply enough) compiled
: language ...)
: In fact, I would compare java/js/php/cgi/perl/python/shell script for high
: speed execution. That would make sense.
: In so far, if also include SQL vs. various DB access speed would be much
: more useful.

c***r
发帖数: 4631
17
应该是GC优化的不够好吧?
g*****g
发帖数: 34805
18
It's a compiled language with JIT. In average it's 50%-100% slower than C/C+
+.
http://shootout.alioth.debian.org/ has
C++ 1.21
C 1.33
java 1.93
for benchmarks.
Most scripting languages, PHP/PERL/Python etc. are one magnitude order
slower. That's big difference.

【在 r*******n 的大作中提到】
: 但从语言来说,我认为java是compiled language.
: 执行是JVM解释执行。

D****r
发帖数: 309
19
thanks for the linked comparison.
very interesting to find that php is faster than perl/python and js8 is
faster than all of them. Those are all script languages. shell script has
not in test, but I think could be even faster.
One question still what is exactly the php code? in shell script or in perl
or in c++ code?

C+

【在 g*****g 的大作中提到】
: It's a compiled language with JIT. In average it's 50%-100% slower than C/C+
: +.
: http://shootout.alioth.debian.org/ has
: C++ 1.21
: C 1.33
: java 1.93
: for benchmarks.
: Most scripting languages, PHP/PERL/Python etc. are one magnitude order
: slower. That's big difference.

d*****l
发帖数: 300
20
其实java跟android一毛钱关系都没有,所以android快慢跟java也毫无关系。
android只是借用了JAVA的API来做开发,就象GWT也用JAVA做开发,开
发出来的东西跟JAVA也没有一毛钱的关系一样。
相关主题
蜥蜴和好虫掐起来了没觉得Java比Python和Perl有啥优点
scala vs clojure ?RAII和GC对应的两条技术路线
java大概还有多久才能和C++一样快呢?typescript -- c# 软软的末路
进入Programming版参与讨论
l*******b
发帖数: 2586
21
???? 愿闻其详

【在 d*****l 的大作中提到】
: 其实java跟android一毛钱关系都没有,所以android快慢跟java也毫无关系。
: android只是借用了JAVA的API来做开发,就象GWT也用JAVA做开发,开
: 发出来的东西跟JAVA也没有一毛钱的关系一样。

t*****n
发帖数: 4908
22
测简单的程序没什么用。什么时候商用数值分析软件,特别是有限元和有限差分软件,
用java写了,才有说服力。
java老老实实在服务器端泡泡就行了,用不着到处显摆吧。

C+

【在 g*****g 的大作中提到】
: It's a compiled language with JIT. In average it's 50%-100% slower than C/C+
: +.
: http://shootout.alioth.debian.org/ has
: C++ 1.21
: C 1.33
: java 1.93
: for benchmarks.
: Most scripting languages, PHP/PERL/Python etc. are one magnitude order
: slower. That's big difference.

d*****l
发帖数: 300
23
android 只是用JAVA语言及API来做开发,因为会JAVA的人实在太多了。而android上并
没有JVM,android应用也不是以java bytecode安装到android
上的,而是dek executable,由一个叫dAlvik的VM执行,DALVIK与JVM完全
两码事,与JAVA完全无关,根本不同的架构。android也只实现了部分的JAVA
API,如进程,线程,IO,网络,UTIL等。ORACL与GOOGLE打了
几年的官司,一根毛都没捞着,法官说API不受产权保护,也没有专利。
ORACLE看着android风生水起,只能干吹胡子瞎瞪眼。

【在 l*******b 的大作中提到】
: ???? 愿闻其详
g*****g
发帖数: 34805
24
Android实现了AWT/Swing以外所有JDK5的API,本来就是从Apache Harmony拿过来的。
不同的JDK实现一直就有,比如IBM的J9,BEA的JRockit。商业上说, Android不能叫
Java因为没有得到Oracle的授权。但对JVM之上的应用开发者是一样的,唯一的区别是
不同的UI类库。

【在 d*****l 的大作中提到】
: android 只是用JAVA语言及API来做开发,因为会JAVA的人实在太多了。而android上并
: 没有JVM,android应用也不是以java bytecode安装到android
: 上的,而是dek executable,由一个叫dAlvik的VM执行,DALVIK与JVM完全
: 两码事,与JAVA完全无关,根本不同的架构。android也只实现了部分的JAVA
: API,如进程,线程,IO,网络,UTIL等。ORACL与GOOGLE打了
: 几年的官司,一根毛都没捞着,法官说API不受产权保护,也没有专利。
: ORACLE看着android风生水起,只能干吹胡子瞎瞪眼。

d****i
发帖数: 4809
25
这个数据好像不对,根据我们在嵌入式实时操作系统的测试,C比C++快一点点,大概85
-90%的差别,当然还有code不同导致的因素。这个网站的测试好像也给出相似结果:
C: 1.01
C++: 1.28
不过我们用的C/C++ compiler不是gcc, 是芯片生产商自己提供的。

C+

【在 g*****g 的大作中提到】
: It's a compiled language with JIT. In average it's 50%-100% slower than C/C+
: +.
: http://shootout.alioth.debian.org/ has
: C++ 1.21
: C 1.33
: java 1.93
: for benchmarks.
: Most scripting languages, PHP/PERL/Python etc. are one magnitude order
: slower. That's big difference.

c*********e
发帖数: 16335
26
android的编程模式是非常时尚的,把数据存储在xml文件里,和.java文件分开。编译
时创建一个r文件。

【在 d*****l 的大作中提到】
: 其实java跟android一毛钱关系都没有,所以android快慢跟java也毫无关系。
: android只是借用了JAVA的API来做开发,就象GWT也用JAVA做开发,开
: 发出来的东西跟JAVA也没有一毛钱的关系一样。

t***t
发帖数: 6066
27
这个法官太扯蛋。烂苹果长方形圆角都能专利,API为毛不能?技术含量大多了吧?

【在 d*****l 的大作中提到】
: android 只是用JAVA语言及API来做开发,因为会JAVA的人实在太多了。而android上并
: 没有JVM,android应用也不是以java bytecode安装到android
: 上的,而是dek executable,由一个叫dAlvik的VM执行,DALVIK与JVM完全
: 两码事,与JAVA完全无关,根本不同的架构。android也只实现了部分的JAVA
: API,如进程,线程,IO,网络,UTIL等。ORACL与GOOGLE打了
: 几年的官司,一根毛都没捞着,法官说API不受产权保护,也没有专利。
: ORACLE看着android风生水起,只能干吹胡子瞎瞪眼。

n******t
发帖数: 4406
28
不知道你再说什么。Android 用了java的api. 而且也跑虚拟机。这不算Java的实现就
有鬼了。

【在 d*****l 的大作中提到】
: 其实java跟android一毛钱关系都没有,所以android快慢跟java也毫无关系。
: android只是借用了JAVA的API来做开发,就象GWT也用JAVA做开发,开
: 发出来的东西跟JAVA也没有一毛钱的关系一样。

c*********e
发帖数: 16335
29
看来google要开发个语言,就叫F#
F已经有了,只好加个#

【在 n******t 的大作中提到】
: 不知道你再说什么。Android 用了java的api. 而且也跑虚拟机。这不算Java的实现就
: 有鬼了。

d**********x
发帖数: 4083
30
人家不是有Go嘛。。。

现就

【在 c*********e 的大作中提到】
: 看来google要开发个语言,就叫F#
: F已经有了,只好加个#

相关主题
这次vert.x 彻底输给NodeJX 了Hejlsberg比Gosling牛10倍
有时候我很好奇这些古怪的思想是怎么来的古狗研究新出炉:C++ Is The Best Performing Language
Java的performanceSun当年设计Java的败笔
进入Programming版参与讨论
m*******l
发帖数: 12782
31
F# is Microsoft's Functional language

【在 c*********e 的大作中提到】
: 看来google要开发个语言,就叫F#
: F已经有了,只好加个#

x****u
发帖数: 44466
32
差别很大,Android只是用了Java的语法,不过Java的语法问题也不少,和Objective C
比算是硬伤。

【在 n******t 的大作中提到】
: 不知道你再说什么。Android 用了java的api. 而且也跑虚拟机。这不算Java的实现就
: 有鬼了。

d****i
发帖数: 4809
33
展开说说,和Objective C比怎么硬伤了?

C

【在 x****u 的大作中提到】
: 差别很大,Android只是用了Java的语法,不过Java的语法问题也不少,和Objective C
: 比算是硬伤。

x****u
发帖数: 44466
34
Java语法上高度依赖并且滥用GC,而实际上大多数场合使用引用计数足够。Objective
C完全支持GC但在移动设备上默认是不开的。

【在 d****i 的大作中提到】
: 展开说说,和Objective C比怎么硬伤了?
:
: C

y*******g
发帖数: 6599
35
理论上是不需要的。。除了manifest.xml

【在 c*********e 的大作中提到】
: android的编程模式是非常时尚的,把数据存储在xml文件里,和.java文件分开。编译
: 时创建一个r文件。

m********5
发帖数: 17667
36
We do have a name for it:
Guava

【在 c*********e 的大作中提到】
: 看来google要开发个语言,就叫F#
: F已经有了,只好加个#

t***t
发帖数: 6066
37
叫外F吧,简称WF。

【在 c*********e 的大作中提到】
: 看来google要开发个语言,就叫F#
: F已经有了,只好加个#

s****0
发帖数: 117
38
说什么呢。那是google的库,相当于collections的扩展。

【在 m********5 的大作中提到】
: We do have a name for it:
: Guava

W*******e
发帖数: 1268
39
“Java语法上高度依赖并且滥用GC”- Gosling为移动设备设计Java语言的一个基本点
就是避免编程调用GC,你见过谁写Java程序要高度依赖和滥用GC吗?
现在的软件工程没有任何语言比Java更能保证代码的可靠性和可重用性,特别是Web系
统的开发。和C比较在performance上的一些tradeoff是非常值得的。现在很多项目中,
不能有效扩展和重用的代码都是不长久的。

Objective

【在 x****u 的大作中提到】
: Java语法上高度依赖并且滥用GC,而实际上大多数场合使用引用计数足够。Objective
: C完全支持GC但在移动设备上默认是不开的。

x****u
发帖数: 44466
40
说的就是后台依赖GC影响效率了。

【在 W*******e 的大作中提到】
: “Java语法上高度依赖并且滥用GC”- Gosling为移动设备设计Java语言的一个基本点
: 就是避免编程调用GC,你见过谁写Java程序要高度依赖和滥用GC吗?
: 现在的软件工程没有任何语言比Java更能保证代码的可靠性和可重用性,特别是Web系
: 统的开发。和C比较在performance上的一些tradeoff是非常值得的。现在很多项目中,
: 不能有效扩展和重用的代码都是不长久的。
:
: Objective

相关主题
Sun当年设计Java的败笔C++确实不适合做大项目
Java 9 and beyond用java写的用户界面速度慢,用户体验很差.为什么还这么多人用java写GUI的软件?
java是最好的语言Java 写的程序在server端也是在JVM上run吗?
进入Programming版参与讨论
g*****g
发帖数: 34805
41
从4.0起,主流的安卓手机没有流畅的问题。4.1之后更是如此。什么java GC影响效率
是扯谈。

【在 x****u 的大作中提到】
: 说的就是后台依赖GC影响效率了。
x****u
发帖数: 44466
42
搞一个Nexus 7玩玩?

【在 g*****g 的大作中提到】
: 从4.0起,主流的安卓手机没有流畅的问题。4.1之后更是如此。什么java GC影响效率
: 是扯谈。

g*****g
发帖数: 34805
43
你找个n7不流畅的review我看看先?

【在 x****u 的大作中提到】
: 搞一个Nexus 7玩玩?
x****u
发帖数: 44466
44
n7流畅度和iPad2差不多,有轻微停顿感。当然N7远比iPad2快了。

【在 g*****g 的大作中提到】
: 你找个n7不流畅的review我看看先?
y*******g
发帖数: 6599
45
3.0之前google不知道抽什么风,除了video和明确调用opengl外,其他的 drawing都是
纯software rendering 所以慢,
后来google io上自己说 tablet屏幕大像素多,software rendering不够快所以要改

【在 g*****g 的大作中提到】
: 从4.0起,主流的安卓手机没有流畅的问题。4.1之后更是如此。什么java GC影响效率
: 是扯谈。

W*******e
发帖数: 1268
46
GC一直是研究的热点,现在有很多算法和很多产品。听说过Sun Java RTS或者IBM
WebSphere RT吗?GC在这两个JVM里面几乎可以无pause time的实时运行。
现在的GC效率非常高,1.4的CMS,7推出G1,都不是CPU Intensive。另外还考虑到了数
据吞吐量。C语言做GC的算法性能也只能到这一步。相比之下,Java在JVM中运行才是速
度比C慢的主要因素。

【在 x****u 的大作中提到】
: 说的就是后台依赖GC影响效率了。
x****u
发帖数: 44466
47
jvm早都本地编译了。。。

【在 W*******e 的大作中提到】
: GC一直是研究的热点,现在有很多算法和很多产品。听说过Sun Java RTS或者IBM
: WebSphere RT吗?GC在这两个JVM里面几乎可以无pause time的实时运行。
: 现在的GC效率非常高,1.4的CMS,7推出G1,都不是CPU Intensive。另外还考虑到了数
: 据吞吐量。C语言做GC的算法性能也只能到这一步。相比之下,Java在JVM中运行才是速
: 度比C慢的主要因素。

W*******e
发帖数: 1268
48
JIT是runtime在JVM中动态完成的。C程序的一个简单循环翻译成机器吗大概6个指令左
右。Java的一个简单循环翻译成byte code,再变成机器码,即使优化后估计也会比C的
多一些。虚拟机系统出来的程序有些tradeoff是可以理解的吧。

【在 x****u 的大作中提到】
: jvm早都本地编译了。。。
1 (共1页)
进入Programming版参与讨论
相关主题
RAII和GC对应的两条技术路线Java 9 and beyond
typescript -- c# 软软的末路java是最好的语言
这次vert.x 彻底输给NodeJX 了C++确实不适合做大项目
有时候我很好奇这些古怪的思想是怎么来的用java写的用户界面速度慢,用户体验很差.为什么还这么多人用java写GUI的软件?
Java的performanceJava 写的程序在server端也是在JVM上run吗?
Hejlsberg比Gosling牛10倍Scala higher-kind type和jvm弱type system
古狗研究新出炉:C++ Is The Best Performing Language我来尽量客观地谈谈GC/ref count,还有RAII
Sun当年设计Java的败笔蜥蜴和好虫掐起来了
相关话题的讨论汇总
话题: java话题: c++话题: android话题: gc话题: language