folder Tahribat.com Forumları
linefolder Python
linefolder Python,Gambas,Golang Benchmark Test



Python,Gambas,Golang Benchmark Test

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    nick6
    0x656e
    0x656e's avatar
    Kayıt Tarihi: 19/Mayıs/2012
    Homo

    Merhaba arkadaşlar biz #dedeler kanalı olarak benchmark yapalım diye boş bir uğraşa girdik.TC No Algoritması kullanarak ve bunu doğrulayarak 80 bin adet tc kimlik oluşturduk tabi ki bunların kodlarını buradan vermem etik olmaz.Fakat deneme kodlarını verebilirim herhalde neyse.Aşağıda chart biçiminde saniye cinsinden hangi dilin ne kadar sürede bu testi tamamladığını yazıyor.Py2 #1 benim yazdığım kod py 2 # 2 ise kanaldan korns’un yazdığı koddur.Gambas kodunu ise trollerin en büyüğü command yazmıştır.Teşekkürler



    Python kodları syntax highlighter'a hata verdirtiyor bu yüzden siteden inceleyebilirsiniz.

     

    Public Sub Main()
    Dim sayac As Integer
    Dim liste As New String[]
    Dim kontrol As String
    Dim dosya As File
    dosya = Open "/home/ka1/gamn/tcliste.txt" For Output Append
    sayac = 0
    Do
    kontrol = tckimlik()
    If Not liste.Exist(kontrol)
    liste.Add(kontrol, gb.Language)
    Print #dosya, kontrol
    sayac += 1
    Print sayac
    Endif
    If sayac = 80000 Then
    Break
    Endif
    Loop
    dosya.Close()
    End
    Public Function ilkdokuz() As String
    Dim numara As Integer
    'Randomize
    numara = Rand(100000000, 999999999)
    Return Str(numara)
    End
    
    #command







    @doganaydin Go kodunu yazınca onu da ekliycem :)


    C ile yazmak isteyen varsa kodu atarsanız denerim .



    Not:Testler linuxda time ile yapılmıştır.
    Test bilgisayarı :

    Core i5 2410m 2.4GHZ İşlemci
    6 GB Ddr3 1333mhz ram
    5200RPM HDD

    http://www.enesergn.net/python-2gambas-benchmark-test.py

     

  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    nick6
    0x656e
    0x656e's avatar
    Kayıt Tarihi: 19/Mayıs/2012
    Homo

    Bu arada eğer linuxda çalışabilicek kodlar yazarsanız eklerim grafiğe güzel birşey olur :) Java,Bash script(yazılır herhalde),C vs.

     

    0x656e tarafından 16/Haz/15 00:44 tarihinde düzenlenmiştir
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    unbalanced
    unbalanced's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    şimdi anlayamadığım bir şey var, oluşturduğunuz tc kimlikleri belirli bir algoritma ile oluşturdunuz ( var olan tc kimlik algoritması) ondan sonra da aynı algoritma ile mi doğrulama yaptınız?

    bir soru daha soracaktım da unuttum :) 

     

    bir de kullandığınız belli bir search algoritması var mı, özellikle 2.5 sn çıkaran arkadaşın kullandığı algoritmayı merak ettim

    unbalanced tarafından 16/Haz/15 01:31 tarihinde düzenlenmiştir

    Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    nick6
    0x656e
    0x656e's avatar
    Kayıt Tarihi: 19/Mayıs/2012
    Homo
    unbalanced bunu yazdı

    doğrulamayı nasıl yaptınız? 2.5 saniyede bitirildiğine göre web tabanlı bir doğrulama işlemi yok sanırım, sadece ürettiğiniz kimlik noları, oluşturma algoritmasında test ettiniz sanırım? 

    Algoritma olarak test ettik hocam çeşitli devlet sitelerinde vs  Yani TC No Algoritması doğru kafadan sayı oluşturmuyor

    GoLang eklenmiştir.

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    unbalanced
    unbalanced's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    tc oluşturma algoritmasını kullanarak oluşturduğunuzu biliyorum ama sanırım sizin şuan yapmak istediğiniz sadece oluşturduğunuz kimlik numaralarının doğruluğunu benchmark testleriyle göstermek. 

    Merak ettiğim şey en hızlı şekilde doğrulayan kodu görebilmek :) belirli bir algoritma mı kullanmış arakdaş yoksa kendisi mi geliştirmiş. kafam biraz dağınık pek anlaşılır yazamamış olabilirim


    Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    nick6
    0x656e
    0x656e's avatar
    Kayıt Tarihi: 19/Mayıs/2012
    Homo

    Go Lang de küçük düzeltmelerle çok başarılı bir süre çıkartıldı ortaya

  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    SinusX
    SinusX's avatar
    Kayıt Tarihi: 14/Aralık/2010
    Erkek

    Ekibe nasıl dahil oluyoruz :d


    Si vis pacem para bellum.
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    detCode
    detCode's avatar
    Kayıt Tarihi: 30/Kasım/2012
    Erkek

    go da go f.WriteString(tc) böyle bişey kullanman satır karışmalarına yazdığın stringin bozulmasına vs. neden olmuyor mu ?

    edit1 gerçi tckimlik oluşturma süresi yazma süresinden fazla olduğundan dolayı bişey olmayabilir

    edit2. yok yok bişey olmaz :D

     

    detCode tarafından 16/Haz/15 02:22 tarihinde düzenlenmiştir

    Who is detCode?
  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    nick6
    0x656e
    0x656e's avatar
    Kayıt Tarihi: 19/Mayıs/2012
    Homo
    detCode bunu yazdı

    go da go f.WriteString(tc) böyle bişey kullanman satır karışmalarına yazdığın stringin bozulmasına vs. neden olmuyor mu ?

    edit1 gerçi tckimlik oluşturma süresi yazma süresinden fazla olduğundan dolayı bişey olmayabilir

    edit2. yok yok bişey olmaz :D

     

    bilmiyorum hocam onu doganaydın'a sorucan :)

    SinusX mesaj atıyorum hocam

  10. KısayolKısayol reportŞikayet pmÖzel Mesaj
    YeniHarman
    YeniHarman's avatar
    Kayıt Tarihi: 17/Haziran/2012
    Erkek

    Algoritmayı verirseniz (şu ana kadar yazılanlardan hiçbir şey anlamadım) C, C++ ve C# ile kod yazabilirim. 

    public class TCKimlik
        {
            private int[] _rakamlar = new int[9];
    
            public TCKimlik(params int[] Rakamlar)
            {
                if(Rakamlar.Length != 9)
                {
                    throw new ArgumentException("Dokuz adet rakama ihtiyaç duyulmaktadır!");
                }
                if(Rakamlar[0] <= 0)
                {
                    throw new ArgumentException("İlk rakam 0 olmamalıdır!");
                }
                for(int i=0; i < 9; ++i)
                {
                    if(Rakamlar[i] >= 0 && Rakamlar[i] <= 9)
                    {
                        _rakamlar[i] = Rakamlar[i];
                    }
                }
            }
            public TCKimlik(string Rakamlar)
            {
                if(Rakamlar.Length != 9)
                {
                    throw new ArgumentException("Dokuz adet rakama ihtiyaç duyulmaktadır!");
                }
                if(Rakamlar[0] == '0')
                {
                    throw new ArgumentException("İlk rakam 0 olmamalıdır!");
                }
                for(int i=0; i < 9; ++i)
                {
                    if(Rakamlar[i] >= '0' && Rakamlar[i] <= '9')
                    {
                        _rakamlar[i] = int.Parse(Rakamlar[i].ToString());
                    }
                }
            }
            public string TCKimlikNoOluştur()
            {
                int tekler = _rakamlar[0] + _rakamlar[2] + _rakamlar[4] + _rakamlar[6] + _rakamlar[8];
                int ciftler = _rakamlar[1] + _rakamlar[3] + _rakamlar[5] + _rakamlar[7];
                int tc10 = ((tekler * 7) - ciftler) % 10;
                int tc11 = (tekler + ciftler + tc10) % 10;
                StringBuilder sb = new StringBuilder(11);
                for(int i = 0; i < 9; ++i)
                {
                    sb.Append(_rakamlar[i]);
                }
                return sb.Append(tc10).Append(tc11).ToString();
            }
            public static bool TCKimlikKontrolEt(string TCKimlikNo)
            {
                var tckimlikno1 = new TCKimlik(TCKimlikNo.Substring(0, 9));
                return (tckimlikno1.TCKimlikNoOluştur() == TCKimlikNo);
            }
            
        }

     


    Olaylara karışmayın!
  11. KısayolKısayol reportŞikayet pmÖzel Mesaj
    nick6
    0x656e
    0x656e's avatar
    Kayıt Tarihi: 19/Mayıs/2012
    Homo

    2.Python kodunu ( py #2 ) pypy ile denediğimizde şu sonucu cıkarttı :

    0m1.219s
    Ek olarak belirtmek isterim : Py #2 de kendi içinde time hesaplaması da var

     

    0x656e tarafından 16/Haz/15 14:08 tarihinde düzenlenmiştir
Toplam Hit: 2725 Toplam Mesaj: 12
python gambas pythonvsgambas benchmark