Petite question sur les dual core - juste comme ca, pour savoir

salut a tous, voila j’ai un portable avec un intel centrino duo dont chaque processeur est a 1,6 giga. Es ce que ca veut dire qu’au total j’ai une puissance de 3,2 giga ?

du tout :slight_smile:
le gain de performence entre le dual core et le simple core est au MAXIMUM de 25%

ceci est du au fait que le processeur A doit attendre que le processeur B est fini son operation et qu ils les mettent en commun pour pouvoir ensuite continué leur operation et donc un des processeur dois definir si c est lui ou l autre processeur qui doit travailé et le cycle recommence :bounce:

tres bien merci beaucoup :wink:

dr ca aide les cours de system d exploitation :slight_smile:

Oui et non, dans certaines applications le gains est proche de 100% (rendu 3D, encodage video etc)

Et les coeurs sont parfaitement capables de travailler sans devoir attendre l’un sur l’autre (encore heureux sinon ça ne servirai à rien), tout depend de ce qu’ils doivent faire, le cas que tu expose correspond au traitement d’une application non prevue pour cela (non multithread) et en general l’execution se cantonne à un seul coeur plutot que de passer de l’un à l’autre.

oui et non le poilu comme dis le gain total est au maximum de 25%
en fait imagine toi pour chaque programme le cout que ca coute si tu dois programmé et en simple coeur et en double coeur et ce n est pas le system d exploitation qui gere cela c est au programmeur ( et je t avoue que c est une bonne prise de tete dailleur )
seul CERTAIN programme comme photoshop ou quelques programme 3D son vraiment optimisé pour le dual , quadro core et tout mais en fait c est plus reservé a des entreprises et ses logiciels coutent assez cher en general

Selon l’applications, mais en moyenne 25% plus performant, sur UNE seul application… Tourne 2 applications qui prend beaucoup de ressource, et tu vien de gagner beaucoup de temps… Essaie de jouer a Quake 4, avec 50 fichier de 50mo qui se compresse, avec un monocore :stuck_out_tongue:

C’est quoi total pour toi?
Moi je vois un gain par type d’application (encodage audio/video, rendu3D, jeux-videos etc), faire un “mix” de tout cela n’a pas vraiment de sens :neutre:

D’où tu vois qu’il faut programmer pour les 2 architectures? Une applications “optimisée” multicore sera une applications dont les processus sont parallelisés au possible, mais cela n’empeche en aucun cas son traitement sur un CPU monocore, juste qu’au lieu de faire le traitement en parallele il le fera “à la file” comme avant et comme maintenant. D’ailleur des logiciels comme 3DSmax sont parfaitement optimisé biCPU, BoCore, quadri ou opto (pour le rendu final), et pourtant il fonctionne tres bien sur un vulgaire monocore, ça va juste moins vite.
Ensuite le système d’exploitation à bien son mot à dire car c’est lui qu iva distribuer les threads en environnement multitaches. Que tu le veuille ou non ton programme ne sera jamais le seul à avoir acces au CPU. Apres c’est au developpeur de faire en sorte que le traitement de son programme soit parallelisé ou non. Si c’ets le cas alors il exploitera les 2, ou plus, cœur qui composent ton CPU.

Ce que l’on fait tous les jours :whistle:

j’adore ce type d’exemple, comme si un joueur allait lancer un encodage ou une compression winrar avant de lancer son jeu preferé :ane: Dualcore ou pas je ne connais personne qui fasse ça :stuck_out_tongue:

oui effectivement le system d exploitation a son mots a dire mais lorsque tu lance un programme tu peux lui specifié sur quel processeur tu veux travaillé

donc tu passe outre le system

on reprend le cas de l encodage

c est simplement une reduction de l image donc ton mutliprocesseur marche comme ca
deja un des processeur split l image donne une partie a calculé a l autre processeur et lui calcul la 2 ieme partie le probleme c est que ils ne finissent pas ensemble donc un des processeur doit attendre que l autre ai fini son calcul pour qu il puisse denouveau fusionné l image et passez a l image suivante

tu pers du temps a l attente et aussi au split et a la fusion des images

ce qui ralentie sachant que la je parle de code SEPCIALEMENT optimisé pour

lors d un code non optimisé la c est le system d exploitation qui gere cela et lui fonctionne de la maniere suivante

il donne une image a encodé a un des processeur et une a l autre attend que les 2 ont fini pour redonné 2 images a encodé ce qui est vraiment plus long mais beaucoup moins couteux puisque le code est divisé de moitier vu que tu ne peux pas effectué un programe optimisé pour un dual core a un simple core

Et pourquoi pas :neutre:
Absolument rien ne peux l’empecher. Et un tel programme ne sera pas ralenti sur un monocore, il ira juste plus vite que un multicore.

Je suis pas d’accord :
Pour jouer à Quake4 et Half Life2 EN MEME TEMPS, le Dual Core c’est absolument GENIAL !!!!!
:lol: :lol: :lol:

:MDR t’es bionic toi :MDR

Sacré “Le Poilu” toujours très calé et ayant toujours le sens du concret :super: bon c’est vrai que sincèrement c’est rare que dans l’usage quotidien on joue/encode/compresse en même temps mais je pense que Chris voulait appuyer son argument avec cet exemple… :wink:

:smiley:

En effet, ce n’est pas tout le monde qui encode en meme temps que de jouer… Mais le cas peut arriver :neutre:, tu est tanner d’attendre, alors tu lance un jeu pour faire passer le temps ;)…

Le_poilu, passer de monocore (un 3800+ 2.4ghz, o\c a 2.75ghz) a mon 4200+ 2.2ghz, que jai monter peu de temps apresa 2.5ghz, jai vu une sacrer difference… Si tu ne fais pas plusieur chose en meme temps, le monocore va te suffir, sa depend toujours de comment tu sollicite ton pc ;)… Tu devrais voir mon pc toi :MDR , sur 4hrs, au moins 3hrs 15min le proc est a 100% (ou pkutot, les proc ;))

Comme la dit le_poilu, le monocore l’executera aussi, mais il va le finir bien apres le dual-core :wink:

Je n’ai jamais dit le contraire :ane: je suis moi meme fervant defenseur du bicore et plus … en attendant d’avoir le mien :stuck_out_tongue:

avez vous deja effcitevement programmé un programme specifiquement pour du dual core je peux vous garantire qu il ne passe pas sur du simple core l architecture n etant pas du tout la meme c est comme si vous me dite que si vous codé un programme pour n64 et qu il sera compatible superness :confused:

Ben si tu programme comme tu ecris moi ça ne m’etonne pas :ange:

L’architecture des CPU est exactement la meme sauf que forcement si tu programme “bete et mechant” en forçant: thread 1 = cpu1 , thread 2 = CPU2 sans pouvoir laisser le choix à l’ordonnenceur de l’OS ni au CPU alors là c’est que tu n’a rien compris.

S’il suffisait de faire ça, les softs de ce type seraient plus courant car c’est la solution de facilité pour un developpeur.
La “vrai” solution c’est de faire en sorte que tes processus ou fils de traitement soit parallelisés sans que tu ai dire explicitement le nombre de fil et quel CPU attribué à tel fil. Ainsi ton soft fonctionnera quelque soit le type de CPU:

Monocore
Bi-CPU Monocore
Bicore
Bi-CPU Bicore
Quadricore
etc…

Et ça c’est une autre paire de manche à mettre au point.

Et comme j’ai dit des applications optimisée multiCPU/Multicore il en existe deja pas mal en matiere de codage video et de rendu 3D, ces appli exploitent completement la parallelisation tout en etant parfaitement utilisable sur un monoCPU Monocore.