• [^] # Re: Rapidité du C ... et ramasse-miettes ?

    Posté par . En réponse à la dépêche Le language de programmation ooc sorti en version 0.2. Évalué à 2.

    Pour avoir un élément de comparaison valide, j'ai manuellement modifié le code C produit par ooc pour enlever toute référence au garbage collector, c'est a dire supprimer les appels a GC_init, remplacer les appels a GC_malloc() par malloc(), et ajouter free().

    Et comme on pouvait s'y attendre.... ooc est quand meme plus rapide que C++.
    Je suppose qu'on peut en déduire qu'ooc implémente les classes de manière plus légère que le C++, mais je vous laisse vous faire votre propre conclusion.

    Résultats:

    tsubaka ooc_tmp # time ../../withgc/newbench_cxx_O1

    real 0m7.903s
    user 0m7.829s
    sys 0m0.008s
    tsubaka ooc_tmp # time ./newbench_O1_nogc

    real 0m6.427s
    user 0m6.309s
    sys 0m0.008s
    tsubaka ooc_tmp # time ../../withgc/newbench_cxx_O2

    real 0m6.847s
    user 0m6.737s
    sys 0m0.004s
    tsubaka ooc_tmp # time ./newbench_O2_nogc

    real 0m5.976s
    user 0m5.855s
    sys 0m0.002s


    Code C généré par ooc avant modification (utilise le GC): http://ooc.pastebin.com/m1a579233

    Code C généré par ooc après modification (utilise malloc/free): http://ooc.pastebin.com/m48d21e05