gnutls-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Size of Libgcrypt (and other libraries) and subsequent performance


From: Ashish Gupta
Subject: Size of Libgcrypt (and other libraries) and subsequent performance
Date: Wed, 23 Apr 2008 14:49:20 +0530

Hi,

The size of the libraries (especially libgcrypt) claimed at http://www.gnu.org/software/gnutls/comparison.html is much lower than what is produced by default (note, the size claimed is 367kb whereas the defaule build for libgcrypt results in close of 1.2MB shared object). Can someone help in understanding how these binaries were created for the Debian and how can this much optimization be achieved?

The default build of libgcrypt (1.2MB) is relatively comparable to the size of libcrypto (1.3MB) (used with openssl). Hence the effective load time of the (similar) programs using both these libraries yeilds better performance on openssl. The sample client timings as observed over itierations (taking into account TLB) gives:

address@hidden:~/Atemp/SSLExamples$ time ./gnutls/client
Finished

real    0m0.294s
user    0m0.046s
sys     0m0.092s
address@hidden:~/Atemp/SSLExamples$ time ./openssl/client
FINISHED

real    0m0.117s
user    0m0.004s
sys     0m0.004s

The libraries linked in were as follows:

address@hidden:~/Atemp/SSLExamples$ ldd ./gnutls/client
        linux-gate.so.1 =>  (0xffffe000)
        libgnutls.so.26 => /usr/local/lib/libgnutls.so.26 (0xb7e55000)
        libtasn1.so.3 => /usr/lib/libtasn1.so.3 (0xb7e35000)
        libgcrypt.so.11 => /usr/local/lib/libgcrypt.so.11 (0xb7dc5000)
        libgpg-error.so.0 => /usr/local/lib/libgpg-error.so.0 (0xb7dc1000)
        libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7c80000)
        libz.so.1 => /usr/lib/libz.so.1 (0xb7c6c000)
        /lib/ld-linux.so.2 (0xb7ef1000)
address@hidden:~/Atemp/SSLExamples$ ldd ./openssl/client
        linux-gate.so.1 =>  (0xffffe000)
        libssl.so.0.9.8 => /usr/lib/i686/cmov/libssl.so.0.9.8 (0xb7f61000)
        libcrypto.so.0.9.8 => /usr/lib/i686/cmov/libcrypto.so.0.9.8 (0xb7e1f000)
        libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7e1a000)
        libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7cd9000)
        libz.so.1 => /usr/lib/libz.so.1 (0xb7cc5000)
        /lib/ld-linux.so.2 (0xb7fae000)

The necessary programs are also attached. Both the programs simply connect to the same server over the internet and issue same queries. No certification check is done in either.

In case I can provide more information on this please let me know.

Regards,
Ashish Gupta

Attachment: gnutls_client.c
Description: Text Data

Attachment: openssl_client.c
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]