Comparatif des performances *BSD et Linux

Posté par . Modéré par Nÿco.
Tags :
0
19
oct.
2003
Linux
Slashdot publie une news sur un benchmark réalisé entre FreeBSD, NetBSD, OpenBSD, Linux 2.4 et Linux 2.6 concernant le réseau, les accès disques et la gestion mémoire, dans une utilisation serveur. Le benchmark semble être plutôt exhaustif, les explications sont claires et détaillées (avec des jolis graphes) et le source est fourni pour refaire les tests chez vous, ou alors pour vérifier la procédure qui a été employée. Un benchmark qui semble plutôt fiable, donc.

NdM: La "performance" n'est pas tout. Et les résultats, alors ?
Eh bien, il semblerait que les deux grands gagnant soient FreeBSD 5 et Linux 2.6. Les deux sont au coude-à-coude en tête, et seuls quelques petits problèmes sur FreeBSD l'empêchent d'être à égalité avec Linux 2.6.
Linux 2.4 et NetBSD (version stable) sont assez proches, avec des performances acceptables. À noter, la stabilité parfaite de NetBSD.
OpenBSD (3.4) semble être le grand perdant de ces tests, avec des résultats étranges, des bugs, et finalement des performances en arrière de tous les autres OS.
L'auteur du benchmark invite tout le monde à commenter, à télécharger les sources et à refaire les benchs, et même à contester les résultats avec des arguments techniques, sachant qu'il répond déjà à quelques questions à la fin de sa page.
Voilà un benchmark qui semble plutôt fiable et bien fait, à prendre néanmoins avec des pincettes comme tout benchmark, et en tenant bien compte du fait que l'utilisation faite ici est une utilisation serveur.

Aller plus loin

  • # Attention !

    Posté par . Évalué à 10.

    Il s'agit de microbenchmarks de fonctionnalités du système (socket, mmap, etc...) et non de benchmark d'applications (i.e. solution final). L'auteur s'est concentré sur quelques points clés qui influencent les performances de quelques applications importantes dans le domaine des serveurs. Comme tout benchmark. il est à recadrer dans son contexte. Celui-ci ne vous donnera pas les performances réelles d'applications comme apache, php ou mysql.
  • # Re: Comparatif des performances *BSD et Linux

    Posté par . Évalué à 4.

    Since my intention is to benchmark the software and not the hardware, I didn't care that it was only a single, slow CPU with slow memory and a slow IDE hard disk. Real server machines built for high scalability will probably use more powerful hardware than this.
    oui mais selon le hardware, il peut avoir des parties de code differentes activée.

    Par exemple sous linux la gestion memoire est differentes si on a plus ou moins de 1Go de RAM...

    En plus j'ai pas vu les options qui ont activés a la compilations des kernels....
    • [^] # Re: Comparatif des performances *BSD et Linux

      Posté par (page perso) . Évalué à 3.

      > oui mais selon le hardware, il peut avoir des parties de code differentes activée.

      Je ne vois pas bien en quoi ca peut influencer le benchmark. Puisqu'il a utilise une seule machine, tu peux dire qu'il benchmark une configuration particuliere de linux, en effet. Et il compare tous les OS sur cette configuration particuliere.
    • [^] # Re: Comparatif des performances *BSD et Linux

      Posté par (page perso) . Évalué à 2.

      C'est pas sous Linux que la gestion de la mémoire diffère si on a plus ou moins de 960 Mo mais sur l'architecture PC !

      Linux sur une architecture de machine "normale" (c'est à dire pas un PC) n'a pas cette limitation.

      Tu as raison en disant que les autres OS ont le même problème et qu'on ne sait pas les options avec lesquelles ils tournent sur ces aspect.
  • # Re: Comparatif des performances *BSD et Linux

    Posté par . Évalué à 10.

    Chose intéressante: il s'agit un bench totalement en IPv6 à ce que j'ai vu.
    Ce qui est rigolo, c'est que bien que les *BSD partagent de gros pants de code, OpenBSD a posé des prbl à l'auteur du bench car la core team d'openBSD refuse de suivre les white wapers sur l'IPv6 pour des questions de sécurité.
    L'avenir nous dira s'ils ont eu raison.
  • # Re: Comparatif des performances *BSD et Linux

    Posté par . Évalué à 4.

    Wouah ! c'est dans ces cas qu'on voit l'importance de l'algorithme utilisé.

    Mias n'empêche que je vois mal un serveur faire tourner plusieurs milliers de processus, même un serveur web en train de se faire slashdotter.

    Et puis, je me demande combien il faut de mémoire pour faire tenier 10000 processus ? Déjà, le kernel doit prendre une bonne partie des 256 Mo de RAM pour ses tables d'allocations ;-) Il doit plus rester qrand chose pour les processus eux-mêmes...
    C'est barbare ces tests quand même, les pauvres machines !


    Sérieusement, je pense que ce qui est réellement important pour un serveur en production, c'est la qualité du service et pas seulement les performances. A quoi ça sert d'avoir un serveur qui fork en 1 milliardième de seconde si c'est pour planter tout aussi rapidement ? Evidememnt, c'est exagéré, mais la présence de bug dans certains systèmes le prouve.
  • # A propos du Linux 2.6

    Posté par (page perso) . Évalué à 7.

    Bien qu'il soit en test, c'est une version a mon gout tout a fait utilisable (je tourne avec depuis 3-4 mois). J'attend encore que quelques appli soient mises a jour pour des pb de gestion differentes des modules (probleme avec lirc).

    Je dit bravo a linus et sa bande ... :-)

    PS : bon ok, je viens de subir un crash de mon systeme mais un ami aurait u le meme pb avec un noyau linux 2.4 ...
    • [^] # Re: A propos du Linux 2.6

      Posté par . Évalué à 2.

      Attends, tu es entraint de nous expliquer qu'on retrouve dans le 2.6 un bug déjà présent dans le 2.4 et tu dis bravo ?!
      • [^] # Re: A propos du Linux 2.6

        Posté par (page perso) . Évalué à 1.

        ou plus probablement que l'on retrouve un bug du 2.6 dans le 2.4

        C'est normal, depuis la sortie du 2.6.0-testx, beaucoup de fonctionnalites ont ete reporte dans le 2.4 avec plus ou moins de succes.

        Par exemple, quand je suis passe au 2.4.22, je n'avais plus l'USB en activant l'ACPI. Meme probleme avec le 2.6.0 de l'epoque. C'etait du aux backports massifs de patchs ACPI dans la branche stable du kernel.

        C'est fixe dans les 2.4.23-prex. J'ai pas du etre le seul a faire un rapport de bug.

        Bref, c'est bien beau de tester le 2.6.0, mais c'est pas inutile de tester le 2.4.23. Apres tout, c'est la branche stable, de reference, qu'on retrouve dans les distribs. L'USB qui marche pas sur un noyau stable, ca fait pas serieux. Il vaut donc mieux un 2.4.21 qu'un 2.4.22 pour l'instant donc.

        Bien entendu, les patchs sont backportes aussi, mais bon...
  • # Re: Comparatif des performances *BSD et Linux

    Posté par . Évalué à 8.

    Comme pour tout benchmark, les résultats ne veulent rien dire si on ne sait pas comment ils sont obtenus. J'ai donc décidé de me pencher rapidement sur les sources.

    Sans chercher à généraliser ce commentaire aux autres bench, voici ce que je constate pour le bench sur la fonction fork: pour chaque appel à fork, on a aussi droit à une écriture dans un pipe par le fils et une lecture bloquante dans un pipe par le père... c'est quand même loin d'être négligeable et le résultat est que ce n'est pas la durée du fork qui est mesurée, mais la durée du fork suivi de l'attente d'un caractère dans un pipe! Ça n'a plus grand chose à voir...

    Donc encore une fois, et comme à chaque fois avec le benchmarks, les résultats sont à prendre avec de grosses pincettes.
    • [^] # Re: Comparatif des performances *BSD et Linux

      Posté par . Évalué à 8.

      Le fait qu'il y ait lecture/écriture dans un pipe est signalé dans les résultats du bench.
      Je pense (il faudrait tester) que l'auteur s'est permis dans rajouter ces deux opérations parce qu'elles ont des temps à peu près identiques sur tous les OS, auquel cas leur ajout n'est pas gênant pour tester fork(), et le résultat n'est pas à remettre en cause. Après, ce n'est qu'une hypothèse, yapuka tester.
    • [^] # Re: Comparatif des performances *BSD et Linux

      Posté par . Évalué à 5.

      Le fait de faire une lecture/ecriture dans le processus forke prouve que celui-ci est pres a faire quelque chose. Ensuite le read/write ne demande pas d'algorithme complexe a mettre en oeuvre et c'est donc le candidat ideal pour prouver que le processus est pres au niveau du kernel a faire ce que l'on veut. D'autant plus que c'est le genre de fonction qu'on utilise frequemment dans un programme serveur.
      • [^] # Re: Comparatif des performances *BSD et Linux

        Posté par (page perso) . Évalué à 1.

        Salut,

        Je ne voudrais pas dire de conneries, mais corrigez moi (enfin pas trop fort ;-) ) si c'était le cas.

        Le fait de faire ce genre d'opération après le le fork() n'a pas plutôt pour but de passer réellement forker le processus. En effet, l'allocation de task_struct et .... est réellement faire au moment d'une écriture et un changement entre les différents processus ;-) (copy on write).

        Mais bon, je suis peut-être à l'ouest sur ce genre de truc :-)

        Bon allez je ==> []

        ++chris;
  • # Re: Comparatif des performances *BSD et Linux

    Posté par . Évalué à 6.

    Dans les remarques, à la fin de sa page, il s'étonne de ce que personne ne lui a demandé pourquoi il n'avait pas fait la comparaison avec les performances de Windows. Je ne sais pas si son benchmark est portable sur ce système, mais quelqu'un l'aurait-t-il fait avec MacOS X (c'est déjà plus proches des Unices) ?!
  • # Re: Comparatif des performances *BSD et Linux

    Posté par . Évalué à 3.

    il faut noter une chose :
    l'auteur admet qu'il ne sait pas vraiment bien configurer un FreeBSD, donc on peut pas prendre ce benchmark comme quelque chose de fiable.
  • # Re: Comparatif des performances *BSD et Linux

    Posté par . Évalué à 5.

    Il y a quand même une chose que je trouve excellente dans tout ça :

    l'idée de réaliser en communauté un benchmark qui mettra tout le monde d'accord et sur la base duquel on pourra par la suite comparer les O.S. pris en compte.

    Ca évitera certains trolls xBSD/Linux/Windows. Chacun pourra critiquer le bench et y apporter ses idées et le test une fois lancé ne pourra plus trop être contesté.
    • [^] # Re: Comparatif des performances *BSD et Linux

      Posté par . Évalué à 5.

      Ca évitera certains trolls xBSD/Linux/Windows. Chacun pourra critiquer le bench et y apporter ses idées et le test une fois lancé ne pourra plus trop être contesté.

      Bof....

      Vas lire un peu ce qui se dit sur fr.comp.os.bsd, par exemple, et tu verras que c'est la réaction habituelle: ceux qui sont "gagnants" dans le bench crient victoire, et ceux qui sont perdants dénigrent le bench, son auteur, et sa belle mere....

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.