Journal Itanium 2 - Performances sur le SGBD ???

Posté par  .
Étiquettes : aucune
0
5
jan.
2005
Request For Retour d'Experience

hypothèse:
- une instance de base de données Oracle sur laquelle on effectue des requêtes "Text" ( ... CONTAINS ....)
- une machine bi-pro Xeon à 3 Ghz
- une autre machine bi-pro Itanium 2 à 1,5 Ghz

Conclusion
Sur la première, on exécute une requête "Text" en 0,33 s.
Sur la seconde, on fait la même requête en 0,66 s

La puce Itanium (64 bits) est censée être beaucoup plus rapide que sont homologue Xeon (32 bits).
Pourquoi n'est ce pas le cas dans la pratique ????



(PS: le tout sur RH Linux, et Oracle RDBMS EE 9.2.0.5)

-> j'ai déjà une piste, mais si d'autres (mauvaises) expériences ont été rencontrées, je suis preneur.....
Toute ma reconnaissance à celui qui pourra m'expliquer...
  • # bench des disques

    Posté par  . Évalué à 2.

    T'es entrain de faire un bench de disque là...
    Faudrait que tu teste avec exactement le même disque et la même installation de l'os.
    • [^] # Re: bench des disques / non

      Posté par  (site web personnel) . Évalué à 1.

      Ce n'est pas la mesure des IO ici
      c'est le temps SQL d'une requête
      • [^] # Re: bench des disques / non

        Posté par  (site web personnel) . Évalué à 5.

        Et l'OS+Oracle sont en 64 bits dans le cas de l'Itanium ?
        Parceque sinon on teste juste la couche d'emulation du CPU.
        • [^] # Re: bench des disques / non

          Posté par  . Évalué à 1.

          L'OS surement, vu que l'itanium n'a pas, de ce que j'en sais, d'emulation 32bit. Par contre il faut bien verifier pour Oracle, on (enfin je) a vite fait de telecharger des versions 32bit si on ne fait pas attention.
          • [^] # Re: bench des disques / non

            Posté par  . Évalué à 1.

            Si, l'itanium a une émulation x86, là ou l'opteron a une compatibilité native...
      • [^] # Re: bench des disques / non

        Posté par  . Évalué à 2.

        Je viens de "realiser" la duree des requetes...
        Avec ces delais, ta base est probablement grosse. En esperant qu'elle tienne en memoire, t'as surement des grosses penalites avec la TLB. Ca vaudrait le coup de faire tourner qprof pour le visualiser si c'est bien ca. Si c'est le cas... va falloir regarder du cote de la taille de tes pages...

        Par contre, si tu changes la taille, je sais pas si tu continueras a avoir le support RH sur ton systeme.
        • [^] # Re: bench des disques / non

          Posté par  . Évalué à 1.

          Dans ce cas présent, pas d'accès disques, tout est en mémoire et le temps d'exécution de la requête correspond intégralement à de la CPU (manipulation des blocs en mémoire)

          C'est confirmé par un tkprof....
  • # Différence avec un Opteron AMD / p620 - power G5

    Posté par  (site web personnel) . Évalué à 1.

    Pour ma part, je cherche des comparatifs entre avec des Opterons et des AIX avec des processeurs G5 power.

    Toujours sur le même applicatif Oracle

    Nous pouvons avoir des serveurs Opteron(bi-pro) à 1/4 du prix d'un AIX(p620, bi-pro), cela fait réfléchir!!

    bon bench
    • [^] # Re: Différence avec un Opteron AMD / p620 - power G5

      Posté par  (site web personnel) . Évalué à 2.

      C'est clair que parfois il vaut mieux 2 machines opterons, qui iront forcément plus vite que la machine AIX seul.

      M'enfin, il vaut mieux pouvoir faire ses propres benchs car les résultats pour une application donnée peuvent varier. (en général les IO de mainframe sont bien meilleur)

      "La première sécurité est la liberté"

  • # Compilos...

    Posté par  . Évalué à 2.

    Ne pas chercher plus loin que les compilos. Ceux pour Linux sur Itanium2 sont a la rue. gcc ne s'en sort pas, intel fait un peu mieux.
    Le seul compilateur qui tienne la route c'est celui d'HP, mais il n'existe que pour HP-UX. C'est pour ca que l'architecture obtient de super resultats dans les benchs publies (fait sous HP-UX), et qu'on voit ici des bilans catastrophiques (car fait sous Linux).
    • [^] # Re: Compilos...

      Posté par  (site web personnel) . Évalué à 2.

      Pas trop d'accord sur la version des compilateurs

      C'est clair qu'il y a une différence de performances entre le compilateur gcc et celui d'intel; je ne connais pas celui d'HP.

      Dans le cas d'applications tiers, nous ne pouvons pas recompiler les applications donc on les prend comme ils sont.

      L'idée s'est bien de comparer Oracle sous différents environnements matériels et sous Linux
      • [^] # Re: Compilos...

        Posté par  . Évalué à 2.

        Dans le cas d'applications tiers, nous ne pouvons pas recompiler les applications donc on les prend comme ils sont.

        Dommage, ton application tierce n'est pas libre... ;-)
        Par contre tu es dependant du compilateur utilise par Oracle. Et sous Linux, il est tres probable que ce soit gcc ou l'intel. Ce qui expliquerait pourquoi les perfs ne sont pas a la hauteur.

        L'idée s'est bien de comparer Oracle sous différents environnements matériels et sous Linux

        Tu demandes pourquoi ton test sur IA64 avec Linux ne donne pas les resultats obtenus. Le compilo utilise en est surement une, que tu l'aie fait toi-meme ou non.
        • [^] # Re: Compilos...

          Posté par  (site web personnel) . Évalué à 2.

          Deja avant de taper sur les performances des compilos, il faudrait voir avec un linux et un oracle compilés en 64bits itanuim 2 (et pas en 32bits ou autre)
          • [^] # Re: Compilos...

            Posté par  . Évalué à 2.

            Deja, a moins d'avoir fait de serieuses modifs, tres peu de chance que le Linux installe soit x86. Ca ne boote de toute facon probablement meme pas (je rappelle que ce n'est pas du x86 et qu'il n'y a pas d'Itanium 32 bits).

            Ensuite, j'ose esperer qu'Oracle ne fournit pas une version batarde de ses softs avec en version x86 avec une couche d'emulation. Au prix ou ils vendent les licences, ca me ferait mal.

            Enfin, je ne me permettrais pas de remettre en question les competances de la personne qui a poste le journal au point de penser qu'elle a pu installer une RH et un Oracle x86 pour faire des bench sur un Itanium juste parce qu'il y a un autocollant intel.
          • [^] # Re: Compilos...

            Posté par  . Évalué à 2.

            Deja avant de taper sur les performances des compilos,

            C'est malheureusement l'un des plus gros pb sur cette arch. Bon nombre d'acheteur Itanium pour une utilisation industrielle utilise la Red Hat supporte par le fournisseur logiciel, ici on parle de Oracle. Or la bonne vieille RHAS 2.1 est un peu... vieille.

            Notement, elle utilise en standard gcc 2.96 et les applis proprio ont ete compile avec ce compilateur. Entre le code loin d'etre optimise, et les erreurs de generation de code (ou le processeur et le kernel mettent un temps fou a corriger l'erreur), le cout en temps d'execution est assez lourd.

            On peut etendre ca avec d'autres applis comme la JVM de Sun. (Aucune idee a propos de jrockit5).
      • [^] # Re: Compilos...

        Posté par  . Évalué à 1.

        Exact... Oracle livre ses produits (en tout cas, le RDBMS) sous forme d'objets, que l'OS se contente de linker.... donc, pas d'influence du compilateur ou de la version de l'OS
        • [^] # Re: Compilos...

          Posté par  . Évalué à 2.

          <sarcastique> Il n'y a aucune influence du compilateur sur la base de donnee Oracle car evidement ils ne l'ont pas compile. Le binaire s'est bien evidement produit tout seul, tombe du ciel. Ou alors ils ont utilise ni gcc, ni icc, mais ils ont fait un compilateur fait maison.

          En tout cas, ils ont surement pas prit un compilateur qui existait. Et tant qu'a faire, ils ont choisi celui qui produisait le moins bon code. Le compilateur d'Intel etant loin de produire du code correcte a l'epoque de la release de cette version, ils ont surement choisis celui la.</sarcastique>

          C'est pas parce que c'est du code proprio que y a pas de sources quelque parts...
          Faut bien le produire ce binaire. Ou alors on m'a cache quelque chose.
          • [^] # Re: Compilos...

            Posté par  . Évalué à 1.



            c'est sûr, l'éditeur Oracle a tout intérêt à prendre le compilateur le plus inefficace pour distribuer ses produits.... sinon c'est pas drôle, et les benchs TPCS sont pas bon comme ça



            plus sérieusement, la release IA64 du 9iR2 est sortie assez récemment, en tout cas près d'un an après la version IA32 - la preuve, il s'agit d'une version 9.2.0.2 - patchset #1.

            le problème du compilo est réglé par le fait que l'on n'a pas les sources, et qu'on donc ne puisse compiler.

            Dans mon cas, le contexte est identique, et un détail. Je mesure la puissance brute de la puce, point final
            (même si je t'accorde que l'on pourrait gagner 0,01s sur la requête en utilisant telle option du compilo)
  • # Besoin d'infos

    Posté par  . Évalué à 4.

    Quelle version de RH tu utilises ?
    Le compilo utilise change et le passage de gcc 2.96 (oui je sais c'est pas une version officielle) vers gcc 3.x est une mini revolution du cote ia64.

    Pour illustrer: sur un bi-Itanium 1 800 MHz, j'etais oblige de travailler avec Icewm dessus car X etait trop lent. Maintenant je suis avec un Gnome parfaitement fluide (et gnome n'a pas necessairement la reputation d'etre ultra light en consommation CPU).

    La requete?
    Quelle taille de base? De plus, la duree de la requete correspond elle a une moyenne de 10000 requetes execute en parallele ou sequenciellement (J'ecris 10000 pour dire beaucoup)?

    Note que les chiffres de Oracle sur Itanium annonce correspond a des clusters executant un nombre important de requetes en parallele. Dans leur cas, bien que l'on parle de tps par $, on parle surtout de debit, pas de vitesse pure.


    Sinon:
    La puce Itanium (64 bits) est censée être beaucoup plus rapide que sont homologue Xeon (32 bits).

    A quoi sert la precision du nombre de bits? Est-ce juste une information supplementaire dans ton journal ou tu appuis ton rainsonnement 32bits<64bits donc xeon plus lent? Parce que ca n'a rien a voir.
    • [^] # Re: Besoin d'infos

      Posté par  . Évalué à 1.

      La version du RH est la même sur les deux archis: RHAS 21.

      Néanmoins, comme indiqué plus haut, la version du gcc n'influence que peu (ou pas du tout) les performances du binaires Oracle: celui-ci est livré sous forme d'objets déjà compilés, on se contente de linker le tout pour faire la libraire client partagée, l'exécutable oracle, la couche Net, etc.....

      Le test effectué est un test unitaire, qui se revèle tout à fait cohérent lors d'une montée en charge: il a fallu mettre 4 puces Itanium pour supporter la même charge que 2 puces IA32....


      Et je suis entièrement d'accord sur le fait que la taille des mots n'a pas de lien avec la puissance d'une puce.... mais de manière factuelle, Intel me vend la puce Itanium avec un TPM 5 fois supérieurs à celui de la puce Xeon... or dans les faits, c'est pas le cas :-)))), la première est (dans ce cas précis) 2 fois moins puissante que la seconde (vu qu'il faut 4 procs 64bits pour faire le boulot de 2 procs 32bits)....
      • [^] # Re: Besoin d'infos

        Posté par  . Évalué à 2.

        la version du gcc n'influence que peu (ou pas du tout) les performances du binaires Oracle: celui-ci est livré sous forme d'objets déjà compilés,

        Oui, deja compile avec gcc 2.96 sous Linux, et probablement avec le compilo HP sous HP-UX, plateforme utilisee generalement pour les benchmarks (je parle de Itanium).

        Intel me vend la puce Itanium avec un TPM 5 fois supérieurs à celui de la puce Xeon...

        Intel et Oracle. La grosse couverture media a propos des bons resultats d'Oracle sur Itanium provient de Oracle. Mais c'est un detail car ca ne change rien a ton pb.
  • # Ca peux aider...

    Posté par  . Évalué à 2.

    Lit la question et le dernier commentaire.
    http://www.gelato.org/community/view_linear.php?id=10_8&from=au(...)

    Pour resumer, augmenter kernel.shmmax peux aider.

Suivre le flux des commentaires

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