It's why I like going for optimisations that try to reduce code size without sacrificing speed, because of reducing the number of 16-byte or 32-byte sections.  Anyhow, back to work with optimising!

Gareth aka. Kit

On 04/01/2022 19:33, Martin Frb via fpc-devel wrote:
On 04/01/2022 18:43, Jonas Maebe via fpc-devel wrote:
On 03/01/2022 12:54, Martin Frb via fpc-devel wrote:
not sure if this is of interest to you, but I see you do a lot on the optimizer....

It's very likely unrelated to anything the optimiser does or does not do, and more regarding random differences in code layout. Charlie posted the following video on core just yesterday, and it touches on exactly this subject: https://www.youtube.com/watch?v=r-TLSBdHe1A

Choice quote: code layout and environment variables can produce up to 40% differences in performance, which is more than what even the best optimizing compilers can achieve do in most cases.

Interesting...

And yes, see my previous post. It seems to be which "sub-section" of a loop falls into a 32 byte aligned 32 byte block. It's not even the entire loop (not about the begin of the loop), but a certain code block within.

This also goes along with one optimization that (even though still chance) in my test improved the timing (both worst and best time, though those are only *my" worst/best)
=> reducing the byte size of the loop code.
That way there are less 32byte sections.
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


--
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus

_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to