Welches GCC / Build-Prozess wird für Cygwin verwendet?
Von: Christian Georg Becker (cbecker@informatik.hu-berlin.de) [Profil]
Datum: 18.04.2008 10:25
Message-ID: <48085add$0$24506$9b622d9e@news.freenet.de>
Newsgroup: de.alt.comp.cygwin+co
Datum: 18.04.2008 10:25
Message-ID: <48085add$0$24506$9b622d9e@news.freenet.de>
Newsgroup: de.alt.comp.cygwin+co
Hi, ich spiel gerade mit openssl und bin dabei über "openssl speed" gestolpert. Kurz gesagt, ein Benchmarking. Also liegt nahe, es mal mit dem hauseigenen gcc auf den eigenen Prozessor optimiert zu bauen. Hier ein Teil des "Benchmarks" fuer das binary von Cygwin. OpenSSL 0.9.8g 19 Oct 2007 built on: Fri Oct 19 13:42:17 WEST 2007 options:bn(64,32) md2(int) rc4(idx,int) des(ptr,risc1,16,long) aes(partial) blowfish(idx) compiler: gcc -D_WINDLL -DOPENSSL_PIC -DOPENSSL_THREADS -DDSO_DLFCN -DHAVE_DLFCN_H -DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DSHA1_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes aes-128 cbc 25076.27k 48028.34k 63160.40k 67131.08k rc2 cbc 13081.35k 13364.43k 13293.94k 13479.34k sign verify sign/s verify/s rsa 512 bits 0.000931s 0.000081s 1074.5 12314.0 Angeblich also mit gcc fuer i486 gebaut. Und jetzt bau ich selber und teste mal ... OpenSSL 0.9.8g 19 Oct 2007 built on: Fri Apr 18 09:40:33 2008 options:bn(32,32) md2(int) rc4(ptr,int) des(ptr,risc1,16,long) aes(partial) idea(int) blowfish(idx) compiler: gcc -fomit-frame-pointer -O3 -march=pentium-m -D_WINDLL -DOPENSSL_PIC -DOPENSSL_THREADS -DDSO_DLFCN -DHAVE_DLFCN_H -DTERMIOS -DL_ENDIAN -DOPENSSL_THREADS The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes aes-128 cbc 44742.57k 47171.01k 47625.27k 47841.46k rc2 cbc 13271.84k 13738.42k 13620.78k 13767.84k sign verify sign/s verify/s rsa 512 bits 0.002066s 0.000185s 484.1 5407.2 ... interessante Abweichungen. Welche Art von Profilen verstecken sich wohl hinter den Direktiven "-DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DSHA1_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM", dass die Werte so unglaublich stark abweichen (übrigens auch, wenn ich für march=i486 mit dem mitgelieferten gcc 3.4.4 baue ... also am Compiler-Target liegt es eher nicht). Krischan[ Auf dieses Posting antworten ]
