Be my guest making https://github.com/spring4d/benchmark compatible for all platforms you need it for.
> On 10/10/2023 11:13 CEST J. Gareth Moreton via fpc-devel > <fpc-devel@lists.freepascal.org> wrote: > > > Thanks Tomas, > > Nothing is broken, but the timing measurement isn't precise enough. > > Normally I have a much higher iteration count (e.g. 1,000,000), but I > had reduced it to 10,000 because, coupled with the 1,000 iterations in > the subroutines themselves, would have led to 1,000,000,000 passes and > hence would take in the region of five to ten minutes to complete for a > 16 MHz 386, for example. Rika's suggestion of running as many > iterations as needed until, say, 5 seconds elapses, would help but the > timing measurements would cause a lot of latency and will be imprecise > on very slow routines. Still, let's see if 100,000 gives better results > for you. > > Kit > > On 10/10/2023 09:57, Tomas Hajny wrote: > > On 2023-10-09 20:51, J. Gareth Moreton via fpc-devel wrote: > > > > > > Hi Kit, > > > >> I updated the "blea" test in the merge request so it now displays the > >> processor brand name on x86_64; however, it is not fetched under i386 > >> because CPUID was not introduced until later 486 processors. I've > >> attached it to this e-mail if anyone wants to take a look to ensure I > >> haven't broken something. > > > > I don't know what's broken, but the results vary so much on a fast > > machine that they are unusable for any measurement from my point of > > view (standard 3.2.2 compiler, compiled with -O4 and running under MS > > Windows this time). Sometimes the ADD version shows 0.0 ns/call, > > sometimes the LEA version shows 0.0 ns/call (32-bits) or 0.1 ns/call > > (64-bits). See the attached results (the CPU is only displayed for the > > 64-bit compilation, but it's obviously the same CPU). > > > > Tomas > > > > > >> > >> On 09/10/2023 18:01, J. Gareth Moreton via fpc-devel wrote: > >>> Thank you very much! That processor is built on the Excavator > >>> architecture and lines up with the flag I put in the merge request > >>> (i.e. it has the "fast LEA" hint). > >>> > >>> I honestly didn't expect this much testing feedback, so thank you all! > >>> > >>> Gareth aka. Kit > >>> > >>> P.S. I'm tempted to extend the test slightly to actually name the > >>> CPU automatically. > >>> > >>> On 09/10/2023 15:40, Jean SUZINEAU via fpc-devel wrote: > >>>> My results: > >>>> jean@First-Boss:~/temp$ cat /proc/cpuinfo | grep "model name" > >>>> model name : AMD A6-7480 Radeon R5, 8 Compute Cores 2C+6G > >>>> jean@First-Boss:~/temp$ /usr/bin/fpc blea.pp > >>>> Free Pascal Compiler version 3.2.2 [2021/07/09] for x86_64 > >>>> Copyright (c) 1993-2021 by Florian Klaempfl and others > >>>> Target OS: Linux for x86-64 > >>>> Compiling blea.pp > >>>> Linking blea > >>>> 95 lines compiled, 0.2 sec > >>>> jean@First-Boss:~/temp$ ./blea > >>>> Pascal control case: 5.1 ns/call > >>>> Using LEA instruction: 0.5 ns/call > >>>> Using ADD instructions: 0.8 ns/call > >>>> jean@First-Boss:~/temp$ > >>>> > >>>> _______________________________________________ > >>>> fpc-devel maillist - fpc-devel@lists.freepascal.org > >>>> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel > >>>> > >>> _______________________________________________ > >>> fpc-devel maillist - fpc-devel@lists.freepascal.org > >>> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel > >>> > >> _______________________________________________ > >> fpc-devel maillist - fpc-devel@lists.freepascal.org > >> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel_______________________________________________ > fpc-devel maillist - fpc-devel@lists.freepascal.org > https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel