lkml.org 
[lkml]   [2009]   [Dec]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: phoronix test, openssl bad performance
    Le 11/12/2009 00:44, Xose Vazquez Perez a écrit :
    > On 12/10/2009 11:03 PM, Andi Kleen wrote:
    >
    >> You should probably report that to Fedora through their bugzilla,
    >> it's unlikely to be a linux kernel problem.
    >
    > I got *same* results with Fedora kernel as with a _clean_ 2.6.32-kernel.org
    > Not a Fedora-kernel problem!

    Not a kernel problem anyway, this is a 100% user land workload

    Only conclusion is that openssl was not correctly compiled on linux distros,
    while/or better compiled on solaris (or its a 64 bit solaris, or test results wrong)


    32bit kernel

    first build :

    time openssl speed rsa4096 -multi 2
    ...

    OpenSSL 0.9.7a Feb 19 2003
    built on: Fri Jan 12 09:26:34 EST 2007
    options:bn(64,32) md2(int) rc4(idx,int) des(ptr,risc1,16,long) aes(partial) blowfish(idx)
    compiler: gcc -fPIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DKRB5_MIT -DOPENSSL_NO_IDEA -DOPENSSL_NO_MDC2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_EC -I/usr/kerberos/include -DL_ENDIAN -DTERMIO -Wall -O2 -g -pipe -m32 -march=i686 -mtune=pentium4 -Wa,--noexecstack -DSHA1_ASM -DMD5_ASM -DRMD160_ASM
    available timing options: TIMES TIMEB HZ=100 [sysconf value]
    timing function used:
    sign verify sign/s verify/s
    rsa 4096 bits 0.041368s 0.000614s 24.2 1628.0


    perf report :

    # Samples: 1141271
    #
    # Overhead Command Shared Object Symbol
    # ........ ....... ........................ ......
    #
    66.53% openssl /lib/libcrypto.so.0.9.7a [.] bn_mul_add_words
    9.08% openssl /lib/libcrypto.so.0.9.7a [.] bn_sqr_comba8
    7.55% openssl /lib/libcrypto.so.0.9.7a [.] bn_add_words
    5.55% openssl /lib/libcrypto.so.0.9.7a [.] bn_sub_words
    2.21% openssl /lib/libcrypto.so.0.9.7a [.] BN_from_montgomery
    2.19% openssl /lib/libcrypto.so.0.9.7a [.] bn_mul_comba8
    1.91% openssl /lib/libcrypto.so.0.9.7a [.] bn_sqr_recursive
    1.14% openssl /lib/libcrypto.so.0.9.7a [.] OPENSSL_cleanse
    0.83% openssl /lib/libcrypto.so.0.9.7a [.] BN_usub
    0.59% openssl /lib/libcrypto.so.0.9.7a [.] BN_copy
    0.38% openssl /lib/libcrypto.so.0.9.7a [.] bn_mul_recursive
    0.29% openssl /lib/libcrypto.so.0.9.7a [.] bn_cmp_words
    0.25% openssl /lib/libcrypto.so.0.9.7a [.] BN_mod_exp_mont_consttime
    0.20% openssl /lib/libcrypto.so.0.9.7a [.] 0x00000000044cb6
    0.12% openssl /lib/libcrypto.so.0.9.7a [.] 0x0000000002b496
    0.11% openssl /lib/libcrypto.so.0.9.7a [.] bn_mul_words
    0.07% openssl /lib/libcrypto.so.0.9.7a [.] BN_bin2bn
    0.06% openssl /lib/libcrypto.so.0.9.7a [.] BN_CTX_start
    0.06% openssl /lib/libcrypto.so.0.9.7a [.] BN_mod_mul_montgomery
    0.06% openssl /lib/libcrypto.so.0.9.7a [.] BN_sqr
    0.05% openssl /lib/libcrypto.so.0.9.7a [.] BN_CTX_get
    0.04% openssl /lib/libcrypto.so.0.9.7a [.] BN_CTX_end
    0.04% openssl /lib/libcrypto.so.0.9.7a [.] BN_bn2bin
    0.04% perf [kernel] [k] __copy_from_user_ll_nozero
    0.03% openssl [kernel] [k] _spin_lock
    0.03% openssl /lib/tls/libc-2.3.4.so [.] _int_malloc
    0.03% openssl [kernel] [k] ktime_get
    0.02% openssl /lib/libcrypto.so.0.9.7a [.] BN_ucmp
    0.02% openssl [kernel] [k] update_wall_time
    0.02% openssl /lib/libcrypto.so.0.9.7a [.] BN_mul


    Other build (probably uses SSE2) :

    OpenSSL 0.9.8k 25 Mar 2009
    built on: Thu Oct 29 10:41:08 CET 2009
    options:bn(64,32) md2(int) rc4(idx,int) des(ptr,risc1,16,long) aes(partial) idea(int) blowfish(idx)
    compiler: gcc -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DSHA1_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM
    available timing options: TIMES TIMEB HZ=100 [sysconf value]
    timing function used:
    sign verify sign/s verify/s
    rsa 4096 bits 0.028285s 0.000380s 35.4 2631.6


    Then, same hardware/machine with 64 bits kernel/openssl :

    OpenSSL 0.9.8k 25 Mar 2009
    built on: Thu Dec 10 22:02:14 CET 2009
    options:bn(64,64) md2(int) rc4(1x,char) des(idx,cisc,16,int) aes(partial) idea(int) blowfish(ptr2)
    compiler: gcc -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -DTERMIO -O3 -Wall -DMD32_REG_T=int -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM
    available timing options: TIMES TIMEB HZ=100 [sysconf value]
    timing function used:
    sign verify sign/s verify/s
    rsa 4096 bits 0.017143s 0.000272s 58.3 3673.1
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2009-12-11 00:57    [W:0.031 / U:0.392 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site