Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SMP] Processus sur ++ processeurs (résolu)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
killerwhile
Tux's lil' helper
Tux's lil' helper


Joined: 16 May 2005
Posts: 130
Location: Switzerland

PostPosted: Tue May 02, 2006 10:47 am    Post subject: [SMP] Processus sur ++ processeurs (résolu) Reply with quote

Je me pose une question (fondamentale) au sujet du SMP :

J'ai un processsus qui demande un long travail de calcul (~30-60 minutes, c'est pour de la résolution de programmes linéaires) et qui n'est pas multithreadé.

Y'a-t-il vraiment un gain pour ce genre de processus à l''exécute sur un dual qqchose ?

J'ai fais un test sur un Athlon X2, l'utilisation d'un core et 100%, l'autre est inutilisé. Idem sur un dual Xéon, un seul core d'un seul processeur n'est utilisé. Y'a-t-il un moyen de "force" la paralélisaton ? Ou alors en plus de SMP dans le kernel, faut-il activer quelque chose de particulier ?

Si quelqu'un a des références/info/idées sur le sujet je prends volontier.
_________________
Je motive bien mes collègues. Quand je suis au travail, ils doivent toujours travailler le double -- Homer Simpson.


Last edited by killerwhile on Tue May 02, 2006 11:14 am; edited 1 time in total
Back to top
View user's profile Send private message
sireyessire
Advocate
Advocate


Joined: 20 Mar 2003
Posts: 2991
Location: back in Paris, France

PostPosted: Tue May 02, 2006 10:53 am    Post subject: Re: [SMP] Processus sur ++ processeurs Reply with quote

killerwhile wrote:
Je me pose une question (fondamentale) au sujet du SMP :

J'ai un processsus qui demande un long travail de calcul (~30-60 minutes, c'est pour de la résolution de programmes linéaires) et qui n'est pas multithreadé.

Y'a-t-il vraiment un gain pour ce genre de processus à l''exécute sur un dual qqchose ?

J'ai fais un test sur un Athlon X2, l'utilisation d'un core et 100%, l'autre est inutilisé. Idem sur un dual Xéon, un seul core d'un seul processeur n'est utilisé. Y'a-t-il un moyen de "force" la paralélisaton ? Ou alors en plus de SMP dans le kernel, faut-il activer quelque chose de particulier ?

Si quelqu'un a des références/info/idées sur le sujet je prends volontier.

voilà, tu as tout dit là...
tu as 1 processus non multi-threadé qui doit s'exécuter. tu pourras pas le scinder en plusieurs processus/threads sans changer résolument le code de ton processus. Alors, ça ne changera pas grand chose de le faire tourner sur un multi processeur vu que ton programme ne sait pas en profiter... Le seul avantage que l'on peut imaginer, c'est de conserver une réactivité de la machine pour faire autre chose sans trop déranger ton processus, ou d'en lancer 2 en //.
_________________
I never think of the future. It comes soon enough.
Albert Einstein

Try simpler first
Shockley
Back to top
View user's profile Send private message
razer
l33t
l33t


Joined: 08 Oct 2004
Posts: 893
Location: Paris - France

PostPosted: Tue May 02, 2006 10:53 am    Post subject: Reply with quote

je crois que la ntpl force l'utilisation en multi processeur, même si l'application n'est pas multithreadé. En tout cas c'est ce qui se passe sur mon P4 HT, sous mplayer par ex. bien connu pour être monothread
Back to top
View user's profile Send private message
killerwhile
Tux's lil' helper
Tux's lil' helper


Joined: 16 May 2005
Posts: 130
Location: Switzerland

PostPosted: Tue May 02, 2006 10:56 am    Post subject: Reply with quote

@sireyessire : c'est bien ce qu'il me semblait, merci bien.

@razer : c'est vrai que les deux machines sur lesquelles j'ai essayé n'ont pas ntpl (c'est pas des gentoo...). je vais essayer avec ca donc. Merci !
_________________
Je motive bien mes collègues. Quand je suis au travail, ils doivent toujours travailler le double -- Homer Simpson.
Back to top
View user's profile Send private message
killerwhile
Tux's lil' helper
Tux's lil' helper


Joined: 16 May 2005
Posts: 130
Location: Switzerland

PostPosted: Tue May 02, 2006 11:13 am    Post subject: Reply with quote

Allez hop, un résolu, mais je vais quand meme poster le résultat de mes recherches sur ntpl.
_________________
Je motive bien mes collègues. Quand je suis au travail, ils doivent toujours travailler le double -- Homer Simpson.
Back to top
View user's profile Send private message
_droop_
l33t
l33t


Joined: 30 May 2004
Posts: 957

PostPosted: Tue May 02, 2006 11:28 am    Post subject: Reply with quote

razer wrote:
je crois que la ntpl force l'utilisation en multi processeur, même si l'application n'est pas multithreadé. En tout cas c'est ce qui se passe sur mon P4 HT, sous mplayer par ex. bien connu pour être monothread


Bonjour,

nptl c'est juste une nouvelle facon pour le noyau 2.6 de gérer les threads (le 2.4 émule les threads via des processus différents ce qui marche mais qui perd l'avantage des threads qui sont sencés être plus légers que des processus). Ca ne change pas le comportement du programme (en théorie), si celui n'est pas multithread, il ne le deviendra pas avec nptl.

A la base, mplayer n'est effectivement multithreadé mais visiblement certains codecs le sont (ffmpeg ou x264 si on utilise le flag "threads").

Voilà.
Back to top
View user's profile Send private message
killerwhile
Tux's lil' helper
Tux's lil' helper


Joined: 16 May 2005
Posts: 130
Location: Switzerland

PostPosted: Tue May 02, 2006 3:55 pm    Post subject: Reply with quote

razer wrote:
je crois que la ntpl force l'utilisation en multi processeur, même si l'application n'est pas multithreadé. En tout cas c'est ce qui se passe sur mon P4 HT, sous mplayer par ex. bien connu pour être monothread


Je confirme les propos de _droop_ : même avec ntpl, un seul core est utilisé... Bon ben on va modifer le code en fonction.
_________________
Je motive bien mes collègues. Quand je suis au travail, ils doivent toujours travailler le double -- Homer Simpson.
Back to top
View user's profile Send private message
Enlight
Advocate
Advocate


Joined: 28 Oct 2004
Posts: 3519
Location: Alsace (France)

PostPosted: Tue May 02, 2006 7:25 pm    Post subject: Reply with quote

Question bête, mais les fonctions de la glibc sont elles mêmes multithreadées (pour certaines au moins) ? parceque dans ce cas, n'importe quoi, tant que c'est lié à la glibc profiterai d'un dual cpu/core, mêm si c'est dans une mesure moindre, mais j'imagine que en temps d'execution c'est elle et le kernel qui doivent avoir la palme du code le plus executé.
Back to top
View user's profile Send private message
killerwhile
Tux's lil' helper
Tux's lil' helper


Joined: 16 May 2005
Posts: 130
Location: Switzerland

PostPosted: Tue May 02, 2006 7:49 pm    Post subject: Reply with quote

oui certaines fonctions sont threadées

mais dans le cas d'une bonne vieille boucle for qui fait des opérations arithmétiques, on peut pas tellement faire passer sur deux core...
_________________
Je motive bien mes collègues. Quand je suis au travail, ils doivent toujours travailler le double -- Homer Simpson.
Back to top
View user's profile Send private message
_droop_
l33t
l33t


Joined: 30 May 2004
Posts: 957

PostPosted: Wed May 03, 2006 8:09 am    Post subject: Reply with quote

killerwhile wrote:
mais dans le cas d'une bonne vieille boucle for qui fait des opérations arithmétiques, on peut pas tellement faire passer sur deux core...


Apparement les prochains processeurs seront capable de le faire (reverse multithreading)
Back to top
View user's profile Send private message
killerwhile
Tux's lil' helper
Tux's lil' helper


Joined: 16 May 2005
Posts: 130
Location: Switzerland

PostPosted: Wed May 03, 2006 8:21 am    Post subject: Reply with quote

_droop_ wrote:
les prochains processeurs seront capable de le faire (reverse multithreading)


Ah c'est exactement ce qu'il me faudrait ! Merci pour la news, il va falloir que je m'abonne au RSS de slashdot.
_________________
Je motive bien mes collègues. Quand je suis au travail, ils doivent toujours travailler le double -- Homer Simpson.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum