On Tue, 23 Feb 2016, Maciej Izak wrote:

Hi!

I am active user of mORMot and Zeos, I'd like to forward here important
message from Google+:

https://plus.google.com/+ABouchez/posts/eGyvNBsrM9b

Any chance to improve this? :

Original message (author: A. Bouchez):

FPC 3.0 Strings are SLOW...
Did you experience this? After introducing of code pages to the String
process, we discovered a huge slowdown at execution.
http://wiki.freepascal.org/FPC_Unicode_support is confusing... We were not
able to find a compilation mode in which the behavior was close to Delphi.

Define 'close to Delphi', because what exactly do you expect ? The implementation, to our knowledge, is Delphi compatible.

(except that in recent Delphis, string = widestring)

For instance, the code page of the string constants in source code are
broken. Or in case of string comparison, RawByteString are converted to the
current system code page, so are dead slow, and broke most of existing code.
We had some discussion with ZEOS authors, and they are as concerned as we
are. See http://synopse.info/forum/viewtopic.php?pid=19498#p19498
The FPC RTL introduced clearly some performance regressions. A lot of
hidden charset conversion is done at runtime, for no benefit, and breaking
all code expectations.

This is definitely something to take into account.

But we cannot simply work out of the blue:

Please submit bug reports with simple examples of cases where you think
unnecessary code conversions are done.

Michael.
_______________________________________________
fpc-devel maillist  -  [email protected]
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to