[fpc-devel] The 15k bounty: Optimizing executable speed for Linux x86 / LLVM

Florian Klämpfl florian at freepascal.org
Fri Nov 23 16:53:18 CET 2018

Am 23.11.2018 um 14:36 schrieb Simon Kissel:
> Hi Adriaan,
>> I find the phrase. "FPC's terrible multi-threading performance"
>> unjust.
> Well, see the complete thread to better understand what this
> is about, and what progress is being made. So far a 20%
> improvement has been made, which kinda is like a proof that
> there was something to improve ;)
>>  When I do multi-threading
>> with FPC, I get a near N speed improvement (on i386 and x86_64) where N is the number of cores,
>> including hyper-threaded cores ....
> This isn't about FPC's code not scaling with N cores, it does.
> It is about it being slow as soon as threads are used *at all*,
> due to TLS stuff and exception handling. It's slow in a linear
> fashion, so to say...

Actually, most of the improvements so far are no related to threading. In particular r40339 helped a lot, it was a bug
fix: the compiler assumed that a certain sub expression was written while it not was and this prevented CSE.

More information about the fpc-devel mailing list