Jump to content
Steve Maughan

Any Benchmarks Comparing Executable Speeds for MacOS 64 vs Win 64?

Recommended Posts

Guest
40 minutes ago, RonaldK said:

This difference will no longer exist when Windows also gets this LLVM compiler :classic_biggrin:

WHAT??!? Wait... i do not understand. Will the Win32/64 compiler in Delphi be "switched" to something else? I that even possible? I may be dumb, but... eh.

Share this post


Link to post
10 minutes ago, Dany Marmur said:

WHAT??!? Wait... i do not understand. Will the Win32/64 compiler in Delphi be "switched" to something else? I that even possible? I may be dumb, but... eh.

If I remember correctly, Allen Bauer said that this is the goal.
 

Share this post


Link to post
3 hours ago, Dany Marmur said:

WHAT??!? Wait... i do not understand. Will the Win32/64 compiler in Delphi be "switched" to something else? I that even possible? I may be dumb, but... eh.

There are currently no plans to do that as far as I know. Apart from them being way to busy with the tasks already at hand as you can see it would not only bring benefits but the disadvantage that the LLVM compiler is slower than the classic Delphi compilers.

I am no compiler engineer so I can't say if that is just poor coding in the frontend (which Embarcadero developed) or the backend. My personal guess: a mixture of both. For example I don't know if the developers of the Delphi frontend are following all the guidelines given. Also the LLVM compiler has some issues with exception handling (source).

 

IMO as much as I like the idea of the LLVM architecture which gives incredible flexibility it still has some way to go. The linker for example I have been told is not as good as the linker in the classic compiler when it comes to unused code removal - but I have no personal knowledge about that. What you certainly can see is that the LLVM based compilers produce quite some big intermediate and also sometimes final binaries (even more so when a lot of generics come into play)

Edited by Stefan Glienke

Share this post


Link to post
14 hours ago, Stefan Glienke said:

What you certainly can see is that the LLVM based compilers produce quite some big intermediate and also sometimes final binaries

This occurs not only with the Delphi/LLVM  compiler. The Oxygen compiler show this too:

https://talk.remobjects.com/t/updated-benchmarking-oxygene-island-versus-delphi-c-c-and-net/19499

 

Quote

... but the disadvantage that the LLVM compiler is slower than the classic Delphi compilers.
I am no compiler engineer so I can't say if that is just poor coding in the frontend (which Embarcadero developed) or the backend. 

A compile time comparison is also given under the link above:

Quote

Also finally - Compiling Time (if you do care about it) - for this little program (< 80 lines)
Oxygene/Island compiling time: 4.29 sec
Delphi compiling time: 0.9 sec

Other LLVM compiler show the same problems, but do have a better code generation.

Edited by RonaldK
  • Like 1

Share this post


Link to post

I have a silly idea about LLVM codegen,

we should "translate" CLANG into PLANG at high level, instead to try to do a LLVM low level compiler.

C++17 of CLANG can do anything we need in modern pascal, generics too.

And should be a matter of syntax parsing instead to do low level stuff.

Agree? 

Share this post


Link to post
6 hours ago, RDP1974 said:

I have a silly idea about LLVM codegen,

we should "translate" CLANG into PLANG at high level, instead to try to do a LLVM low level compiler.

C++17 of CLANG can do anything we need in modern pascal, generics too.

And should be a matter of syntax parsing instead to do low level stuff.

Agree? 

What the hell are you talking about? CLANG is the LLVM frontend for C++ - so basically what Embarcadero did for Delphi.

The difference is that I don't know how many people are working on CLANG (including people from Apple, Microsoft, Google, ARM, Sony, Intel and AMD) instead of one and a half men for the Delphi one...

Edited by Stefan Glienke
  • Like 1

Share this post


Link to post

So is better if emba buy remobjects and leverage the big quality of their llvm Island for the whole new platforms

Share this post


Link to post
7 hours ago, RDP1974 said:

So is better if emba buy remobjects and leverage the big quality of their llvm Island for the whole new platforms

Perhaps they could buy Greenland as well

  • Haha 12

Share this post


Link to post
Guest

@David Heffernan... your "brilliance" - i have never questioned. Your "bedside manners"... though... stop. Now i have to re-evaluate my view on "your" humour. I stand corrected once more.

Share this post


Link to post

Not so much humour as a comment about the arrogance of imagining that the big company can just decide to buy the small company. Perhaps the small company is happy to be independent. 

  • Like 3

Share this post


Link to post

sorry, indeed bad humour (and this last is hard to replicate in a globalized citadel, emoticons too  hardly can be categorized inside a international ISO or Madrid protocol; we need a truly "clever" semantic translator? or maybe more realistic choice, I should study english better way, finally will stop my stupid topics). Big esteem to you and Emba of course.

Share this post


Link to post

Not bad humor, but reality.

I remember Mark Hoffman's attitude and I think he will never ever sold RemObjects to EMBT. Maybe after Greenland will be sold there will be a chance.

  • Like 1

Share this post


Link to post
On 8/31/2019 at 4:19 PM, David Heffernan said:

Not so much humour as a comment about the arrogance of imagining that the big company can just decide to buy the small company. Perhaps the small company is happy to be independent. 

Define "big company".  
I'm not really sure, that Emba is the bigger company?  
[sarcasm off]

Share this post


Link to post
On 8/14/2019 at 2:49 AM, Sherlock said:

If it's too slow for you, buy a faster computer

:classic_ninja:

"We can't afford a faster computer because Delphi is so expensive".😞

  • Sad 1

Share this post


Link to post
On 8/29/2019 at 2:13 PM, Stefan Glienke said:

I am no compiler engineer

Don't worry; they don't have any more of those either so you're at least on equal footing.

Share this post


Link to post

This is simply not true. You might feel uncomfortable with the current situation, but please refrain from spreading wrong information. Thanks 😉

Share this post


Link to post
On 8/31/2019 at 10:19 AM, David Heffernan said:

Not so much humour as a comment about the arrogance of imagining that the big company can just decide to buy the small company. Perhaps the small company is happy to be independent. 

There's no "perhaps" about it. On the RemObjects forum a comment came up about perhaps RemObjects would buy Delphi if it was up for sale (this may have been around the time it became clear Idera was going to buy Embarcadero). Marc Hoffman then replied, asking what made the poster think they'd even want it. He went on to say that he wouldn't want anything to do with Embarcadero after his experiences with them. He also revealed that at one point during their discussions someone from Embarcadero said "We own Pascal".

Share this post


Link to post
On 9/2/2019 at 5:03 AM, RonaldK said:

I'm not really sure, that Emba is the bigger company? 

Embarcadero sold to Idera for $600 million. Idera was said to be about the same size as Embarcadero at the time of acquisition, putting the worth of the combined entity at approximately $1.2 billion dollars. For perspective, Embarcadero bought CodeGear for $30 million. As Jolyon Duranko-Smith once observed, if we're extremely generous and assume that the worth of Delphi doubled under its time with Embarcadero, that puts its contribution to the worth of Idera at 5%. It's not a particularly important asset for them.

Share this post


Link to post

Sure they do. The Win32-compiler is still maintained.

And even a LLVM-compiler is not an out-of-the-box product.

But sure - just ranting might be more easier for you. Sorry for you.

  • Like 1

Share this post


Link to post
2 hours ago, Daniel said:

Sure they do. The Win32-compiler is still maintained.

There are some more:

+ Win64

+ macOS32

+ iOS Simulator

Share this post


Link to post

To make this clear - there are

- the "classic" compilers where everything is done by Embarcadero: Win32, Win64, OSX32, iOS Simulator

- the "nextgen" compilers that use the LLVM architecture - that means they have to write the so called frontend which translates the code into LLVM IR - what they don't have to do themselves is the backends for all the various platforms and the linker.

 

Now before anyone asks "well if they don't have to do the backend and can just use all the supported platforms from LLVM" - they still have to do all the system/platform specific code in the RTL for every platform.

  • Like 2

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×