Question

Mon projet a de l'argent à dépenser avant la fin de l'exercice et nous envisageons de remplacer un serveur Sun-Fire-V490 que nous possédons depuis quelques années.Une option que nous étudions est la CoolThreads technologie.Tout ce que je sais, c'est le marketing de Sun, qui n'est peut-être pas impartial à 100 %.Est-ce que quelqu'un a déjà joué avec un de ces appareils ?

Je pense que cela ne nous apportera aucune valeur, car nous n'utilisons pas beaucoup de threads ou de machines virtuelles et nous ne pouvons pas passer beaucoup de temps à moderniser le code.Nous générons une tonne de processus, mais je doute que CoolThreads y soit utile.

(Et oui, il serait préférable de dépenser cet argent en bonus ou autre, mais cela n'arrivera pas.)

Était-ce utile?

La solution

Divulgation:Je travaille pour Sun (mais en tant qu'ingénieur en logiciel client).

Vous n'avez pas nécessairement besoin de code multithread pour utiliser ces machines.Avoir plusieurs processus utilisera plusieurs threads matériels sur plusieurs cœurs.

Les anciens processeurs T1 (boîtiers T1000 et T2000) n'avaient qu'un seul FPU et n'étaient pas vraiment adaptés aux tâches avec bien plus d'environ 1 % de virgule flottante.Les nouveaux processeurs T2 et T2+ ont un FPU par cœur.Ce n'est probablement toujours pas idéal pour une analyse massive en virgule flottante, mais c'est beaucoup plus respectable.

(Note:La technologie Hyper-Threading est une marque commerciale d'Intel.Sun utilise le terme Chip MultiThreading (CMT).)

Autres conseils

IIRC La technologie coolthreads fait référence au fait qu'au lieu de simplement augmenter la vitesse d'horloge pour améliorer les performances, ils envisagent désormais des processeurs multicœurs avec hyperthreading, vous offrant ainsi de nombreux processeurs sur une seule puce.Dans l'ensemble, la capacité de traitement disponible est plus élevée, mais sans les exigences supplémentaires en matière d'alimentation électrique et de climatisation auxquelles vous vous attendez (donc cool).Son utilité dépend certainement de ce que vous envisagez d’exécuter.Si vous exécutez Apache avec le noyau à plusieurs threads, il l'adorera car il peut exécuter les threads de réponse individuels sur les cœurs de processeur individuels.Si vous exécutez simplement des processus à thread unique, vous obtiendrez des augmentations de performances par rapport à un seul boîtier de processeur, mais pas aussi bien (tout processus CGID non mod_perl/mod_python à l'ancienne partagerait toujours un peu le processeur).Si votre application consiste en un seul processus threadé fonctionnant au maximum sur la boîte, vous obtiendrez très peu d'amélioration par rapport à un processeur monocœur fonctionnant à la même vitesse.

Pierre

Modifier:

Oh et pour une référence.Nous avons comparé un T2000 dans notre ferme de serveurs à nos V240 actuels (il s'agissait peut-être de V480, je ne me souviens pas). Le T2000 a pris la charge de 12 à 13 des boîtiers plus anciens lors d'un test en direct sans aucune modification du système d'exploitation pour les performances.Comme je l'ai dit, Apache adore ça :-)

Nous avons utilisé des Sun Fire T2000 pour mon dernier système.Les boîtiers eux-mêmes dépassaient de loin nos besoins en termes de puissance de traitement.Pour nous, la décision était basée sur la consommation d'énergie et l'encombrement réduits.Nous avons exécuté avec succès WebSphere 6, Oracle 10g et le serveur SunONE Directory sur le même boîtier.

Mes informations sont peut-être un peu obsolètes (j'ai utilisé ces serveurs pour la dernière fois il y a 2 ans), mais si je me souviens bien, un gros problème était que tous les cœurs d'un seul processeur partageaient tous le même processeur. même Unité FPU, donc si votre code faisait beaucoup de virgule flottante (nous faisions du SIG), le FPU constituait un énorme goulot d'étranglement et vous ne bénéficiiez pas beaucoup du grand nombre de threads.

Pour tout processus présentant un parallélisme élevé, ces machines (par exemple, les t1000/t2000) sont idéales pour leur coût.J'utilise Oracle sur eux depuis environ 18 mois maintenant et cela fonctionne très bien.

Si votre tâche est un processus monothread/unique, alors vous feriez mieux d'utiliser une machine Intel double/quadruple haute vitesse.

Si votre application comporte de nombreux threads/beaucoup de processus, ces machines seront probablement idéales pour cela.

Mieux encore, Sun vous en enverra un pendant 60 jours pour l'évaluer, c'est ce que nous avons fait avant de nous y engager, nous avons fini par obtenir 2 t2000 et avons récemment acheté 4 autres t1000.

Hier soir, j'ai été frappé par le fait que nos processus principaux ne sont pas multithreads, mais que la machine en question dispose de nombreux processus système qui le sont.Il fait notamment office de serveur NFS.Il semble que l’exécution de centaines de processus bénéficiera également de tous ces cœurs.

Je vais voir si nous pouvons d'abord obtenir une unité de démonstration sur laquelle tester.

Sun vend les machines Niagara pour qu'elles soient tout à fait accessibles à tous.Ils ont leur place :les services Web étant le meilleur déploiement.Nous avons exécuté Oracle sur certains T2000 et cela a bien fonctionné pour des opérations hautement parallélisées.Mais les machines tombent à plat sur les opérations mono-tape dont les performances sont plutôt mauvaises.Si vous avez du travail en virgule flottante à faire, cherchez ailleurs.Même les puces les plus récentes avec un FPU par cœur sont insuffisantes.De plus, ces machines ne peuvent pas supporter longtemps un martèlement de classe entreprise et nous avons eu des problèmes de fiabilité.La technologie multicœur est plus un battage médiatique qu’une substance.Les recherches du Sandia National Lab à ce sujet ont révélé que quatre à huit cœurs constituent le haut de gamme des utilités et qu'une puce à 16 cœurs a le même débit qu'une puce double cœur.Une puce à 16 cœurs représente donc un gaspillage de beaucoup d’argent.De plus, à mesure que le nombre de cœurs augmente, la vitesse d’horloge doit diminuer, à cause de la paroi thermique.La plupart des fabricants se contenteront probablement de puces quadricœurs jusqu'à ce que la technologie de mémoire s'améliore (vous ne pouvez pas garder 16 cœurs alimentés en mémoire et la plupart des cœurs sont bloqués).Finalement, étant donné le chaos chez Sun, vous feriez mieux de chercher ailleurs.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top