Précédent   Forum des professionnels en informatique > Systèmes > Hardware > Achat et Conseils > Composants
Composants Processeur, ventilateurs, RAM, ...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 07/04/2009, 15h03   #1
Membre du Club
 
Homme
Chercheur (Physique)
Inscription : mars 2007
Messages : 44
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : France, Calvados (Basse Normandie)

Informations professionnelles :
Activité : Chercheur (Physique)

Informations forums :
Inscription : mars 2007
Messages : 44
Points : 64
Points : 64
Par défaut Quels critères pertinents pour le choix d'un processeur ?

Bonjour,

Je suis à la recherche d'un processeur pour faire de l'analyse de données et des simulations en C/C++/ROOT sous Linux/gcc

Je travaille actuellement sur un portable avec un intel Core 2 Duo T7700 (2.4 GHz, FSB à 800 Mhz et 4 Mo de cache L2 avec 2 Go de ram). Ca tourne plutôt bien, mais j'ai certains programmes qui peuvent tourner plusieurs dizaines de minutes sans pour autant être excessivement compliqués (j'ai des fichiers de données de plusieurs centaines de Mo).

J'envisage de me faire une petite station de travail (qui serait un peu surdimensionnée poiur mes besoins actuellement, hsitoire qu'elle ne soit pas obsolète dans 6 mois) et je m'aimerais savoir quels critères je dois regarder pour le processeur :

1). nombre de coeurs :

est-ce qu'il faut paralléliser les calculs pour vraiment profiter de la puissance disponible ? qu'est qu'on gagne "vraiment" en passant de 2 à 4 coeurs ?

2). fréquence :

quelle incidence a-t-elle sur les calculs ?

3). cache L2 :

j'ai cru comprendre que plus il y en avait, meilleur c'était, mais quel est exactement son rôle ? chaque coeur a-t-il son prorpe cache L2 ?

4). FSB :

la vitesse du bus est-elle un facteur limitant les performances ?

5). autres facteurs limitants (?)

la vitesse de rotation et le cache du disque dur ?
la quantité de la Ram ?

Voilà, je suis sûr que dans la liste, il y a des questions très naïves, mais je trouve stupide de de mettre un moteur de ferrari dans une 2CV (ou l'inverse) ou d'acheter une F1 pour faire du rallye, alors d'avance, merci.
erroneus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2009, 15h51   #2
Expert Confirmé Sénior
 
Développeur informatique
Inscription : novembre 2006
Messages : 4 172
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : novembre 2006
Messages : 4 172
Points : 5 185
Points : 5 185
Citation:
Envoyé par erroneus Voir le message
1). nombre de coeurs :

est-ce qu'il faut paralléliser les calculs pour vraiment profiter de la puissance disponible ? qu'est qu'on gagne "vraiment" en passant de 2 à 4 coeurs ?
On peut gagner en performances mais faut-il que les logiciels développés et que l'on va exécuter tirent partie de l'architecture multi "coeurs" des processeurs ( et l'OS également )
En d'autres termes si tu fais un programme qui n'a pas une architecture et des algos de programmation parallèle l'intérêt d'un tel CPU sera limité...
Et dans un souci d'optimisation il est vraiment préfèrable d'investir dans les outils d'Intel comme VTune ou Thread Blocks Building.
( http://software.intel.com/en-us/intel-tbb/)

Citation:
It is also important to note that transistor density in multi-core CPUs does not necessarily reflect a similar increase in practical computing power, due to the unparallelised nature of most applications.
http://en.wikipedia.org/wiki/Moore's_law



C'est normal c'est fait maison donc cela permet de tirer profit d'un CPU Intel
Citation:
2). fréquence :
quelle incidence a-t-elle sur les calculs ?
plus la fréquence est élevée meilleur c'est.
Mais il faut que le bus de données et de la carte mère soient performants

Citation:
3). cache L2 :
j'ai cru comprendre que plus il y en avait, meilleur c'était, mais quel est exactement son rôle ? chaque coeur a-t-il son prorpe cache L2 ?
Est-ce que tu as déjà fait de la programmation Assembleur, est-ce que tu sais comment fonctionne un CPU ?
*La mémoire cache interne c'est une sorte de mémoire tampon pour mettre en attente les instructions envoyées au décodeur d'instruction du CPU via le "pipeline" d'instruction.
Pourquoi une mémoire cache ? Parce qu'il y a des instructions assembleur CPU de durée de cycle différent : MUL par exemple prend 3 cycles alors que XOR n'en prend qu'un ( i86)

* l'intérêt d'une mémoire cache c'est que le CPU n'a pas à aller chercher en RAM les données puisqu'elle sont à proximité dans le CPU.
Plus la distance entre les composants électroniques est réduite plus les performances sont accrues.
C'est pour cela qu'on a crée les semi- et ultra-conducteurs


http://en.wikipedia.org/wiki/CPU_cache
http://en.wikipedia.org/wiki/Central_processing_unit
en FR http://fr.wikipedia.org/wiki/Processeur
Citation:
5). autres facteurs limitants (?)
la vitesse de rotation et le cache du disque dur ?
la quantité de la Ram ?
La quantité de RAM c'est important aussi plus tu en as mieux c'est parce qu'avec des systèmes ( inutilement ) lourds comme Vista, ils prennent beaucoup de ressources matérielles.
Moins tu as de RAM plus l'OS va avoir tendance à "swapper" pour des processus lourds c.a.d. à écrire dans un fichier d'échange
Mat.M est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2009, 19h26   #3
Membre du Club
 
Homme
Chercheur (Physique)
Inscription : mars 2007
Messages : 44
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : France, Calvados (Basse Normandie)

Informations professionnelles :
Activité : Chercheur (Physique)

Informations forums :
Inscription : mars 2007
Messages : 44
Points : 64
Points : 64
Merci pour ta réponse détaillée.

Si j'ai bien compris, soit j'investis du temps pour vraiment apprendre à gérer les multi-coeurs pour vraiment tirer profit de 4 coeurs, soit je me contente de 2 coeurs avec le maximum en fréquence et en cache L2. Dans ce cas là, je pourrais encore grapiller en performance ultérieurement si j'adapte mes codes pour le multi-coeur.

En gros, il vaut mieux que je m'oriente vers un Core 2 Duo E8500 (3.16 GHz - 1333 MHz - 6 Mo) que vers un Core 2 Quad Q8300 (2.50 GHz- 1333MHz FSB - 4 Mo), leur prix étant du même ordre de grandeur. Quant aux Core i7, vu leur prix, si ce n'est pas pour les exploiter à fond, ça serait du gâchis.

Citation:
Et dans un souci d'optimisation il est vraiment préfèrable d'investir dans les outils d'Intel comme VTune ou Thread Blocks Building.
Je regarderais en version "libre" (mais si c'est probablement moins performant), car je suis ne suis qu'un amateur. J'ai trouvé ce qu'il fallait pour commencer à comprendre comme s'y prendre ici-même.

Citation:
La quantité de RAM c'est important aussi plus tu en as mieux c'est parce qu'avec des systèmes ( inutilement ) lourds comme Vista, ils prennent beaucoup de ressources matérielles.
Moins tu as de RAM plus l'OS va avoir tendance à "swapper" pour des processus lourds c.a.d. à écrire dans un fichier d'échange
Ok, n'utilisant pas Vista, j'imagine que 4 Go suffiront (j'ai du mal à concevoir ce qui serait suceptible dans demander plus). Une petite question à ce sujet : 2*2 Go ou 4*1 ? Par contre, à acheter toujours par paires (pour le dual channel), il me semble (?)

Une dernière pour la route : pour la carte mère, à quoi faut-il faire attention (à par la compatibilité) pour qu'elle ne plombe pas la config ?

D'avance, merci.
erroneus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2009, 21h27   #4
Expert Confirmé Sénior
 
Développeur informatique
Inscription : novembre 2006
Messages : 4 172
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : novembre 2006
Messages : 4 172
Points : 5 185
Points : 5 185
Salut euuuh pour le Core Duo et le Core Quad je ne voudrais pas t'influencer.
Oui c'est ce qu'un vendeur m'avait dit notamment pour les jeux : un Core duo est plus performant.
Mais si tu prends un Core Quad et que tu saches tirer parti du parallèlisme cela peut être intéressant.
Dommage que personne d'autre n'ait donné son avis pose la question dans le forum "traitement images".
Oui tu peux utiliser des biblios de codes Open Source mais je soupçonne les biblios d'Intel plus performantes parce que pour peu qu'Intel dans son code appelle des instructions CPU spécifiques...
4Go de RAM seront largement suffisants
Mat.M est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 12h49.


 
 
 
 
Partenaires

Hébergement Web