关于 Delphi 及 VC 效率的评测……(100)

H

hgyNo7

Unregistered / Unconfirmed
GUEST, unregistred user!
Delphi 的 Compiler 太 old 了,生成的代码效率太差,绝大多数情况下其优化和 VC 没得比,两者不在一个档次。这几天给 Barry Kelly 及 Michael J. Rozlog 发了邮件,前者的回复几乎可算是客套话,后者则较详细回复了……具体内容列出如下,感觉算是很认真,也很专业。其中 MJR 打头的为其回复,算是逐一对我的邮件进行了“指正”:Hi Michael, First of all, Please forgive me for my poor English, 'cause I'm from China, and English 's not my native language. MJR: You English is great! But, as you can see, I'm a crazy Delphi programmer, I love Delphi more than any other program languages such as C Plus Plus, and/or Java/C# but, as I've said, I am very disappointed with the optimization of Delphi! Of course we can say that Delphi is just a tool for application development, not for System-Level Development, so it do
es not need as highly optimized as some other tools such as Visual C++;
maybe that's true(I do
think that you'd know the code "VB Killer"), but we all know that Delphi's powerful, it can do
almost everything other tools can do
, and would not do
worse than others! However, after the departure of those genius like Anders, like Chuck, like Danny, Delphi's getting worse and worse...There is a general feeling that Delphi is just a thing of the past, and I agree. Now I'd not complain about those VCL / RTL / IDE BUGs, I just very disappointed with the optimization of Delphi!!! From Delphi 3 to Delphi 2010, even to Delphi 2011(or Delphi XE), the compiler actually do
not have any optimization improvements! This is surprising, and more depressingly!!! We can have a look at Visual C++, the guys in Visual Studio at Microsoft are really do
ing a good job, whenever I feel the quality with Visual Studio, enjoy the High-Quality of VC Compiler, I do
really feel very frustrated: why my delphi's so bad? ——Can you just tell me, why? 'Cause the bucking Ficrosoft has the most top talent? MJR: Sorry you feel that way, we believe that employees come and go and while Anders, Chuck, and Danny are great developers and added a lot to the product, we still have awesome developers do
ing great work on Delphi and C++Builder today. I can tell you that we have had a lot of changes to the product since Delphi 3 and that the expectations of developers has changed over the years. In the latest Delphi XE we have increased the speed of the compiler by more than 20% over the Delphi 2010 version. We have also changed the language in ways to keep it up to date with the latest trends and best practices in the industry, by supporting things like Anonymous Methods, Generics, UniCode, and advanced RTTI. Each of these things has changed the Delphi compiler and how it generate code and what it needs to generate to work properly. One of the things that you may notice and think it is not optimized is the fact that the .exe, .obj, and .dll files are larger than they used to be and that is correct especially if you use the new reflection abilities found in the RTTI. While the executable files are larger than before, the speed in-which the execute is very close to the same before the updated RTTI. However, what the update to the RTTI gives the Delphi developer is the same reflection capabilities that .NET and Java developers enjoy, so the size issue was really not a major concern because the overall advantages to most Delphi programmers was a very positive thing. Now, in Delphi XE we also had a set of major optimizations and bug fixes with the Generics (87 issues resolved), so again optimization happens all the time. You guys say that, the latest Delphi version, the Delphi XE, has "Compiler performance improvements", but the truth's that, it ONLY raise some compilation speed, it do
es not do
ANY Compiler Optimization——and even, It's SILLY——Can't it MUCH MORE efficient?!! MJR: Again, that is not a true statement, the compiler has been optimized and the code generation has been optimize in XE (and many versions before that). It is true that certain areas of the compiler have been updated, but that is true for any compiler optimizations. You have to remember, compare Delphi's compile time to VC compile time for the same application on the same machine and the last I checked, a few weeks ago, Delphi still compiles faster, a lot faster! I think another question you are asking, can the compiler be faster? Sure, we could most likely cut a few milli-seconds here and a few milli-seconds there, but the overall affect would not be that great and when the compiler team finds a optimization that can be made, they usually make that change. But please keep in mind that there are other features the compiler team works on to make the product better... generics, anonymous methods, etc... So it may be that people do
n't see all the other things that are going on and only think that it is staying the same. I can say with certainty that there are major changes to the compiler happening in each release. I just can't understand that, to do
some more effctive optimization measures to the compiler, do
esn't it have any sense? Or you guys even just think to improve the compilation speed in spite of OPTIMIZATION??? MJR: Again, I do
n't think this statement is true and I hopefully explained it above. Or, nowadays, you guys just do
not have the ability to do
any compiler optimization! MJR: We have a very good compiler team and again they make optimizations when we find them. I use Delphi for online game development(I think I can say that, nowadays using Delphi to develop the game is really a heterogeneous, and you just know WHY), so I'm very care about the compiler optimization. Many times, I can hear other guys complain that the DCC32 just do
nothing in floating point calculate——It's so Depressingly! MJR: Can you give me an example of a VC program that you believe is optimized and a Delphi program that you believe is not optimized? It would be great if you could include: Version of Delphi Compiler used:Version of VC compiler used:Any compiler switches you maybe using for Delphi:Any compiler switches you maybe using for VC: The speed of the compile of the Delphi App:The speed of the compile of the VC app:What type of hardware are you running it on?The time it takes to execute each application for comparison: Please send the example and the above information and I will turn it over to the compiler team for more analysis. Also keep in mind that in Delphi XE we now include AQtime profilers for better optimization on the end products. Let's just stop here, and I do
think you guys do
know what we really want from Delphi! MJR: If you have other things please let me know, I'm hear to listen and hopefully find solutions to today's programming issues. Finally, please forgive my manners, and I'm sorry! MJR: Your manners are fine, all you did was ask a few questions, not a problem here. Please send me that sample application and the some data and I will try to get any issues found, fixed! Best wishes to you, and Delphi! yours truly, adelphicoder信中 MJR 明确表示希望我能给出相关实例(代码)及具体环境以供易博龙评测,所以恳请大家能提供我一些事实,我打算将大家提供的资源整理一下,然后再发给 MJR。毕竟我一个人肯定能力水平有限,所以希望大家能一起协作,谢谢。我的 QQ:395588677。
 
Z

znj_326

Unregistered / Unconfirmed
GUEST, unregistred user!
前段时间翻译了个C++的代码,主要是视频录像的,delphi的效率就是要比C++的低很多,我找找看,代码还在不
 
F

fengfan

Unregistered / Unconfirmed
GUEST, unregistred user!
对于编程高手来说,使用delphi和c++开发出来的产品效率应该是差不多的。因为算法一样。另外,对Delphi的编译器有问题似乎应该给.net项目的开发着那个人发邮件啊。
 
Z

zyong.home

Unregistered / Unconfirmed
GUEST, unregistred user!
人家都离开那个公司了,不过我想在他那个位置上,要是有时间的话还是很乐意的回答你的问题得!
 
W

www.ynxbs.com

Unregistered / Unconfirmed
GUEST, unregistred user!
看明白了,你的结论就是: delphi 烂,用delphi的人更烂
 

程序开发

Unregistered / Unconfirmed
GUEST, unregistred user!
开始变味了
 
A

autumn

Unregistered / Unconfirmed
GUEST, unregistred user!
>Delphi 的 Compiler 太 old 了,生成的代码效率太差,绝大多数情况下其优化和 VC 没>得比,两者不在一个档次。你说这句话的时候,就应该有充分论据支持你的观点。现在反过来请大家帮忙提供例子。纳闷。。。。。>这几天给 Barry Kelly 及 Michael J. Rozlog 发了邮件,前者的回复几乎可算是客套>话,后者则较详细回复了……还是那句话,没有提供严谨和大量测试用例的情况下,凭一个简单结论说delphi compiler很old。人家肯回复你就已经是礼貌的了。
 

不能没有你

Unregistered / Unconfirmed
GUEST, unregistred user!
delphi编译生成的代码效率确实比C++生成的要慢,在历史上最好记录也就是能达到70%的样子。这个问题根本就不需要争论,因为ex_borland不是傻子,看看delphi和C++ Builder的报价就知道了。虽然C++ Builder问题很多,很差劲但是还是比delphi贵。编译速度快并不代表运行速度快。
 
C

coaco

Unregistered / Unconfirmed
GUEST, unregistred user!
楼主触及到一个很有意思的问题,就是DELPHI开发游戏这类对效率有较高要求的软件,可能是不合适的DELPHI可能确实没有什么优势吧? 开发游戏? 想不出VCL构架在这方面有什么优势
 
Q

qq0879

Unregistered / Unconfirmed
GUEST, unregistred user!
delphi编写的 无论是exe还是dll都很大,即使压缩后也偏大就可以证明这一点
 
H

heyongya

Unregistered / Unconfirmed
GUEST, unregistred user!
坚持用delphi,写程序
 

Similar threads

A
回复
0
查看
833
Andreas Hausladen
A
A
回复
0
查看
707
Andreas Hausladen
A
A
回复
0
查看
958
Andreas Hausladen
A
I
回复
0
查看
714
import
I
顶部