On 05/19/2017 04:11 AM, Nikolay Nikolov wrote:
On 05/19/2017 03:54 AM, Ryan Joseph wrote:
On May 18, 2017, at 10:40 PM, Jon Foster
<jon-li...@jfpossibilities.com> wrote:
62.44 1.33 1.33 fpc_frac_real
26.76 1.90 0.57 MATH_$$_FLOOR$EXTENDED$$LONGINT
10.33 2.12 0.22 FPC_DIV_INT64
Thanks for profiling this.
Floor is there as I expected and 26% is pretty extreme but the others
are floating point division? How does Java handle this so much better
than FPC and what are the work arounds? Just curious. As it stands I can
only reason that I need to avoid dividing floats in FPC like the plague.
[...] The default options for the i386 compiler is to target the Pentium
CPU, which does not have SSE. This gives most compatibility and least
performance, but that's what's appropriate for most users, because for
most desktop applications, CPU speed is no longer an issue. Only very
specific tasks, such as software 3D rendering need high CPU performance,
and people doing that stuff, usually know very well their compiler
options and how to enable support for modern instruction extensions for
maximum performance. Of course, people coming from a Java background
might not be used at all to having to do this kind of stuff, but it's
really not that hard.
As stated I tried *ALL* of the FPU settings and received the same result or
an "access violation", which I assumed meant my FPU did not support that
feature set. I even tried to enable emulation, to see what the difference
would be, but ppc386 said it was an invalid switch even though it lists it
in the help output.
--
Sent from my Debian Linux laptop -- http://www.debian.org/intro/about
Jon Foster
JF Possibilities, Inc.
j...@jfpossibilities.com
541-410-2760
Making computers work for you!
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal