Hello,
Je me pose une question je dois commander un nouveau serveur (hors OVH) pour de l'hébergement Web. Mais voilà j'hésite entre un mono processeur ou un bi ? Qu'en pensez vous ? Apache serait capable d'utiliser 2 processeurs ?
Merci,
Le 17/02/2011 18:02, Solairion a écrit :
Hello,
Je me pose une question je dois commander un nouveau serveur (hors OVH) pour de l'hébergement Web. Mais voilà j'hésite entre un mono processeur ou un bi ? Qu'en pensez vous ? Apache serait capable d'utiliser 2 processeurs ?
TOUTES les machines un tant soit peu modernes sont bi-processeurs, même si physiquement il n'y a qu'un socket. Du points de vue OS, un double coeur, c'est un bi-proc, etc ...
Donc oui, les applications pour lesquelles c'est pertinent sont maintenant toutes multithreadées, ce qui leur permet d'utiliser plusieurs coeurs. Par contre, il ne faut pas espérer qu'un script php va utiliser plusieurs proc hein ! Il y a quand même des conditions : pour pouvoir effectuer une instruction, faut connaître le contenu de la variable qui est utilisée dedans (par exemple). Voir la techno hyperthreading qui 'joue' pas mal avec ces notions.
Julien
Bonsoir,
TOUTES les machines un tant soit peu modernes sont bi-processeurs, même si
physiquement il n'y a qu'un socket. Du points de vue OS, un double coeur, c'est un bi-proc, etc ...
Pas tout a fait. Les applications multi-processes (fork) sont trèèèèès bien gérées par les noyaux *nix (Linux, BSD, ...), donc un apache2 mpm prefork sera très bien géré sur une machine bi-pro. Celà dit sur un serveur 24 coeurs, on commence à voir d'autre limites : ce serveur bien qu'équipé de processeurs X5680 @3GHz, n'encaisse pas 4x la charge d'un serveur 6 coeurs cadencés @2.66GHz ...
Par contre, certaines applications comme MySQL gèrent très mal plus de 4 coeurs, les performances se dégradent même ! Les choses s'améliorent considérablement avec MySQL à partir de la version 5.5 voir 5.1 patchée.
PS: ça existe encore les serveurs mono-core ?
Bonsoir,
Celà dit sur un serveur 24 coeurs, on commence à voir d'autre limites : ce serveur bien qu'équipé de processeurs X5680 @3GHz, n'encaisse pas 4x la charge d'un serveur 6 coeurs cadencés @2.66GHz ...
A voir ce qu'on appelle "charge"... Y a des IOs ? Des accès mémoire ? De la concurrence sur des lignes de cache ? etc.
Par contre, certaines applications comme MySQL gèrent très mal plus de 4 coeurs, les performances se dégradent même ! Les choses s'améliorent considérablement avec MySQL à partir de la version 5.5 voir 5.1 patchée.
En même temps on a tendance à plus considérer les IOs que le CPU pour les SGDBs non ?
PS: ça existe encore les serveurs mono-core ?
Quand même les smartphones commencent à être double-coeur ;-)
Mehdi
Bonjour,
A voir ce qu'on appelle "charge"... Y a des IOs ? Des accès mémoire ? De la concurrence sur des lignes de cache ? etc.
A vrai dire, je ne sais pas trop. Mais ce n'est ni les IO, ni la mémoire, peut-être des optimisations à faire au niveau du Kernel lorsqu'il y a vraiment beaucoup de processus qui tournent en // ?
En même temps on a tendance à plus considérer les IOs que le CPU pour les SGDBs non ?
Sauf quand les données et les index tiennent en mémoire.
Bonjour,
Merci pour les retours :) J'en ferai bonne usage.
Le 18 février 2011 08:32, Greg greg-frsag@duchatelet.net a écrit :
Bonjour,
A voir ce qu'on appelle "charge"... Y a des IOs ? Des accès mémoire ? De
la concurrence sur des lignes de cache ? etc.
A vrai dire, je ne sais pas trop. Mais ce n'est ni les IO, ni la mémoire, peut-être des optimisations à faire au niveau du Kernel lorsqu'il y a vraiment beaucoup de processus qui tournent en // ?
En même temps on a tendance à plus considérer les IOs que le CPU pour les
SGDBs non ?
Sauf quand les données et les index tiennent en mémoire.
-- Greg
Liste de diffusion du FRsAG http://www.frsag.org/
On Thu, 2011-02-17 at 20:29 +0100, Greg wrote:
Par contre, certaines applications comme MySQL gèrent très mal plus de 4 coeurs, les performances se dégradent même ! Les choses s'améliorent considérablement avec MySQL à partir de la version 5.5 voir 5.1 patchée.
Alors là, je suis curieux de connaitre tes sources, et le my.cnf utilisé. La version de MySQL ainsi que l'architecture système + matériel que tu utilises !
Cordialement.
Le 18/02/2011 09:59, Alexandre Legrix a écrit :
Alors là, je suis curieux de connaitre tes sources, et le my.cnf utilisé. La version de MySQL ainsi que l'architecture système + matériel que tu utilises !
Cordialement.
MySQL a commencé à inclure les patchs créés par Google et Facebook, dans la version 5.1 (des versions non-officielles): http://mysqlha.blogspot.com/2008/10/innodb-faster-mutex-patch-ported-to.html Doc de Google : http://code.google.com/p/google-mysql-tools/wiki/InnodbIoPerformance
C'est devenu officiel avec 5.5 : http://dev.mysql.com/doc/innodb/1.1/en/innodb-contrib-google.html
Aussi, les améliorations apportées par InnoDB en mode plugin, et en version 1.1, sont considérables. http://dev.mysql.com/doc/refman/5.5/en/mysql-nutshell.html
Mon architecture est composé de MySQL 5.5.8, avec des serveurs 4 cores principalement parce qu'ils datent un peu, je n'ai que 2 serveurs 8 cores. Ils ont tous 32GB de RAM et du RAID10 6xSAS @15krpm.
Le 17/02/11 20:29, Greg a écrit :
Par contre, certaines applications comme MySQL gèrent très mal plus de 4 coeurs, les performances se dégradent même ! Les choses s'améliorent considérablement avec MySQL à partir de la version 5.5 voir 5.1 patchée.
Ouarf quel moteur utilises tu? J'ai vu y a pas longtemps une archi avec 24 cores et mysql marchait super bien, bon faut dire qu'il y avait un gros raid10 de SSD en dessous. Mais la répartition des cores étaient bien faites, sous Innodb ils avaient bien tuné pour le nombre de cores.
Le vendredi 18 février 2011 13:48:25, Pierre-Henry Muller a écrit :
Le 17/02/11 20:29, Greg a écrit :
Par contre, certaines applications comme MySQL gèrent très mal plus de 4 coeurs, les performances se dégradent même ! Les choses s'améliorent considérablement avec MySQL à partir de la version 5.5 voir 5.1 patchée.
Ouarf quel moteur utilises tu? J'ai vu y a pas longtemps une archi avec 24 cores et mysql marchait super bien, bon faut dire qu'il y avait un gros raid10 de SSD en dessous. Mais la répartition des cores étaient bien faites, sous Innodb ils avaient bien tuné pour le nombre de cores.
Je l'utilise en prod sur des bi op 6 coeurs soti 12 coeurs sans aucun problèmes, et sans dégradations des performances, bien au contraire. Pas de patch particulier, distribution Mandriva à jour, juste un my.cnf qui convient à l'appli.
cordialement,