[Gelistirici] Smash that stack harder aka Pardus 2008 C(XX)FLAGS

Huseyin Akcan huseyinakcan at gmail.com
3 Şub 2008 Paz 20:57:45 EET


>  Not: Arada kötü yazılmış kodlarda da performans artışı getirdiği de
> oluyor tabi :) Bakınız [1] ve gereksiz allocate edilmiş 128 byte,
> yaklaşık 10% performansı arttı, ama bu bir kıstas değil tabi ki, tek
> fonksiyon tek çağrı tek yerel char array vs.
>
> [1] http://cekirdek.pardus.org.tr/~onur/code/exectime_count.c

Ben burda neden performans artışı oluyor anlamadım,
    char buf[128];
    veya char buf[11]
     veya sadece
    return strncmp("1234567890", "1234", 4);

ile hep aynı sonuçları alıyorum süre olarak. Tam süre her denemede
biraz dalgalanıyor,
ama minimumları aynı.
gcc -O2 -D_FORTIFY_SOURCE=2 ile.

Merat ettim birşey mi kaçırıyorum, neden buf[128] daha hızlı çalışsın
ki, ortada bellek/cpu hızını ilgilendiren bir kıstas yok. Ne kadar
bellek kullanılırsa kullanılsın strcpy 11, strncmp 4 karakter sonra
çalışmasını bitiriyor.

hüseyin


Gelistirici mesaj listesiyle ilgili daha fazla bilgi