Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-devel / 2009-08

FPC 64bit performance

5 messages · 3 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Graeme Geldenhuys

Hi,

I switched to a full 64bit system last Friday. Over the weekend I read the following in the MSEide&MSEgui newsgroup. Is this true or still the case wit FPC 64bit support? If so, does this apply to all 64bit supported platforms?

Earlier message 21 lines
-------- Original Message -------- >> Working with 64 bit is noticeable slower than 32 bit >> IMHO. >> > > Because of large executable & library files => more disk i/o which is a > bottle-neck on modern systems => more delays ? Probably mostly because of more cache misses I think. I read that FPC 64bit is not (yet) optimized to use the new registers efficiently so the 64bit benefits don't outperform the drawbacks. -------------- end ---------------------- Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/

Reply by email

Jonas Maebe
to Graeme Geldenhuys
Graeme Geldenhuys wrote
I switched to a full 64bit system last Friday. Over the weekend I read the following in the MSEide&MSEgui newsgroup. Is this true or still the case wit FPC 64bit support?

FPC does use all available registers on all platforms.

If so, does this apply to all 64bit supported platforms?

What does apply to all systems is that on 64 bit, all pointers are obviously twice as large as on 32 bit and hence the cache can contain fewer.

And at least on my Core2 Duo under Mac OS X, there is not really a speed difference at least as far as the compiler itself is concerned (with current trunk):

a) compiling an x86_64 compiler with an i386->x86_64 cross compiler (with -a -s, i.e., without assembling or linking):

real 0m6.375s
user 0m5.819s
sys 0m0.480s

b) the same, but with a native x86_64 compiler:

real 0m6.295s
user 0m5.719s
sys 0m0.489s

Jonas

Reply by email

Vincent Snijders
to Jonas Maebe: FPC does use all available registers on all platforms. What does apply to all systems is…
Jonas Maebe wrote 9 lines
On 24 Aug 2009, at 08:55, Graeme Geldenhuys wrote: > I switched to a full 64bit system last Friday. Over the weekend I read > the following in the MSEide&MSEgui newsgroup. Is this true or still the > case wit FPC 64bit support? FPC does use all available registers on all platforms.

Maybe what was hinted at is: earlier fpc version did not use regvars correctly and using regvars was disabled by default.

Vincent

Reply by email