Changes between Initial Version and Version 1 of Ticket #1216, comment 12


Ignore:
Timestamp:
May 25, 2015 5:10:51 PM (6 years ago)
Author:
tuna
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #1216, comment 12

    initial v1  
    1 Test run on an Raspberry Pi 2. Neon instructions don't seem to provide any benefit as of this moment. I might get on the gmp mailinglist and ask if they will.
     1Test run on an Raspberry Pi 2 (armcortexa7neon hw suppport).
    22
     3Conclusions:
     4 - The armv5/armv7 libs we ship are flat out broken (can't be loaded)
     5 - NEON support in the lib does not improve performance on gmp6 nor gmpdev (trunk of gmp repo)
     6 - gmp is going to add (armcortexa5, armcortexa7, armcortexa7neon) and rename (armv7a -> armv7) a few libs. We might aswell use the upcoming naming scheme in what we're writing for NBI now.
     7 - Some archs are performance incompatible, A7 and A15 for example.
     8 - From following the gmp mailing list, ARM NEON and A15 improvemens are being worked on.
    39{{{
    4 armcortexa8 gmp6
    5 Loaded library: jar:file:/opt/i2p/lib/jbigi.jar!/libjbigi-linux-armcortexa8.so
    6 DEBUG: Warming up the random number generator...
    7 DEBUG: Random number generator warmed up
    8 INFO: run time: 7007.696 ms (69.383 ms each)
    9 INFO: 100 runs complete without any errors
    10 Native run time:         7007.696 ms ( 69.383 ms each)
    11 Java run time:          155759.078 ms (1542.169 ms each)
    12 Native = 4.499% of pure Java time
    13 Native is BETTER by a factor of 22.227 -- YAY!
     10java:                     155783.125ms -> 1x
     11
     12gmp5 armv5 - error, not valid for this platform (this is a bug)
     13gmp5 armv6                 11915.303ms -> 13.07x
     14gmp5 armv7 - error, not valid for this platform (this is a bug)
     15
     16gmp6 armv5                 12195.651ms -> 12.77x
     17gmp6 armv6                  7001.033ms -> 22.25x
     18gmp6 armv7                  6995.054ms -> 22.27x
     19gmp6 armcortax8             7007.696ms -> 22.23x
     20gmp6 armcortexa8neon        7040.535ms -> 22.13x
     21gmp6 armcortexa9            6995.969ms -> 22.27x
     22gmp6 armcortexa9neon        6996.123ms -> 22.27x
     23gmp6 armcortexa15           9702.768ms -> 16.06x
     24gmp6 armcortexa15neon       9693.381ms -> 16.07x
     25
     26gmpdev armv5               12198.676ms -> 12.77x
     27gmpdev armv6                6747.837ms -> 23.09x
     28gmpdev armv7                6747.071ms -> 23.09x
     29gmpdev armcortexa7          6754.066ms -> 23.07x
     30gmpdev armcortexa7neon      6751.755ms -> 23.07x
     31gmpdev armcortexa8          6787.963ms -> 22.94x
     32gmpdev armcortexa8neon      6796.246ms -> 22.92x
     33gmpdev armcortexa9          6755.460ms -> 23.06x
     34gmpdev armcortexa9neon      6780.304ms -> 22.97x
     35gmpdev armcortexa15         9721.847ms -> 16.02x
     36gmpdev armcortexa15neon     9712.354ms -> 16.04x
    1437}}}
    15 
    16 {{{
    17 armcortexa8neon gmp6
    18 Loaded library: jar:file:/opt/i2p/lib/jbigi.jar!/libjbigi-linux-armcortexa8neon.so
    19 DEBUG: Warming up the random number generator...
    20 DEBUG: Random number generator warmed up
    21 INFO: run time: 7040.535 ms (69.708 ms each)
    22 INFO: 100 runs complete without any errors
    23 Native run time:         7040.535 ms ( 69.708 ms each)
    24 Java run time:          156710.672 ms (1551.591 ms each)
    25 Native = 4.493% of pure Java time
    26 Native is BETTER by a factor of 22.258 -- YAY!
    27 }}}