Intel lance un concours pour promouvoir la programmation parallèle

Simon Robic - publié le Mardi 18 Octobre 2011 à 11h54 - posté dans High-Tech

Les évolutions des processeurs et l'augmentation de leur nombre par puce font que le développement de logiciels évolue également. Malheureusement, ces changements sont encore peu répercutés dans les programmes des écoles d'informatique. Intel lance donc un concours pour promouvoir la programmation parallèle avec, à la clé des netbooks des ultrabooks et disques SSD mais aussi et surtout un accès à du matériel de pointe mis à disposition par la firme. 

Les évolutions de l'informatique font que la puissance des processeurs n'augmente plus comme elle a augmenté pendant longtemps. Les lois de Moore qui prédisaient un doublement de la puissance des processeurs tous les ans ne sont plus vraies aujourd'hui notamment à cause de problèmes de dissipation thermique sur les puces.

Néanmoins, les besoins de puissance sont toujours croissants et les constructeurs ont dû trouver une parade pour pallier à ce problème. Ils ont donc multiplié le nombre de processeurs par puce, la fréquence de chaque processeur restant inchangée. 

S'il est donc aisé de comprendre que le développement d'applications est différent quand on a un ou plusieurs coeurs de calcul à sa disposition, cela est encore peu enseigné dans les écoles d'informatique ce qui pourrait causer, à moyen terme, un décalage entre les compétences des ingénieurs terminant leurs études et le besoin du marché.

Intel, premier fabricant de processeurs au monde, a décidé de sensibiliser ces étudiants en leur proposant un concours qui a commencé le 15 octobre dernier et qui dure jusqu'au 15 novembre. Si des netbooks, des ultrabooks ou des disques SSD sont à gagner, c'est surtout l'occasion pour les participants de pouvoir apprendre la programmation parallèle en utilisant le matériel mis à disposition par Intel. La firme leur offre ainsi des accès à des serveurs équipés de 40 coeurs pour tester et déployer leurs aplications.

"Croire que nous allons nous en sortir en utilisant un compilateur ou une librairie magique sans comprendre ce qui se passe sous le capot serait une erreur. il faut repenser le génie logiciel, les algorithmes et apprendre à maîtriser quelques techniques" explique Intel.

Le concours, s'il est principalement destiné aux étudiants, est ouvert à tous, débutants en programmation parallèle ou experts. Les modalités de participation sont disponibles sur le site Internet d'Intel

Publié par Simon Robic, le 18 Octobre 2011 à 11h54
 
 
20
Commentaires à propos de «Intel lance un concours pour promouvoir la programmation parallèle»
 
Bonne initiative ça. Quel est en effet l'intérêt de faire du développement dans l'architecture si le soft ne suit pas ?
Mouais, le multitreading peut s'avérer dangereux et dur à maintenir, je comprends que la plupart ne l'utilise pas à moins d'avoir d'énormes gains en perfs (et encore)
JArchos, le 18/10/2011 - 12:03
Mouais, le multitreading peut s'avérer dangereux et dur à maintenir, je comprends que la plupart ne l'utilise pas à moins d'avoir d'énormes gains en perfs (et encore)

En même temps si tu ne connais pas les techniques et les bonnes pratiques c'est un peu normal !
Avec X c?urs et un problème adapté tu peux obtenir un coefficient d'accélération de X (à epsilon près) par rapport à une version mono-processeur.
Mais pour arriver à ce résultat il faut vraiment connaître les contraintes posées par l'architecture multi-c?urs.
@fbattail : ok, tout à fait d'accord, ils peuvent sensibiliser mais alors qu'ils mettent aussi en avant les contraintes.
"ces changements sont encore peu répercutés dans les programmes des écoles d'informatique". Alors ça, c'est pas vrai. Mes profs nous encourageaient à penser parallèle, quitte à sérialiser ensuite. Les TP se faisaient avec des co-routines. Et c'était il y a 30 ans (oui, je suis vieux).
d'accord avec JArchos ! C'est le genre d'optimisation utile pour des softs gourmands en ressources genre montage photo/vidéo FX etc. Sinon, pour du logiciel plus basique, c'est surtout à l'OS de savoir répartir la charge de différents logiciels peu gourmands mais lancés en parallèle.

Et puis pour la loi de Moore, on va peut être bien la rattraper si d'ici à 2013 on a des CPU 1000x plus puissant grasse au partenariat intel/3M. Info lue ici même !!
"Les lois de Moore qui prédisaient un doublement de la puissance des processeurs tous les ans"
et en plus vous donnez le lien qui montre que la phrase est fausse.... trop fort les gars!
JArchos, le 18/10/2011 - 12:21
@fbattail : ok, tout à fait d'accord, ils peuvent sensibiliser mais alors qu'ils mettent aussi en avant les contraintes.

It's up to you... mais entre AMD et Intel il y a environ 1400 pages de documentation à se farcir pour commencer à avoir une bonne compréhension de l'architecture. Le problème essentiel c'est la mémoire qui est d'une lenteur désespérante, donc le prefetch est stratégique.
buzut, le 18/10/2011 - 12:25
d'accord avec JArchos ! C'est le genre d'optimisation utile pour des softs gourmands en ressources genre montage photo/vidéo FX etc. Sinon, pour du logiciel plus basique, c'est surtout à l'OS de savoir répartir la charge de différents logiciels peu gourmands mais lancés en parallèle.
alors toi tu connais visiblement rien du tout à la programmation!
il y a des cas ou la parallélisme peut s'appliquer et d'autres non, ça n'a rien a voir avec la complexité de la tache a accomplir.
et une partie du boulot de l'os est de répartir les ressources entre les threads oui, mais si un processus est monothreadé l'os n'y peut rien du tout.
Les lois de Moore qui prédisaient un doublement de la puissance des processeurs tous les ans ne sont plus vraies
Cette affirmation est plus qu'approximative.
Approximation encore due à Wikipedia. Il n'y a pas plusieurs lois de Moore, mais une loi que Moore a affiné au fur et a mesure de ses observations.
La version de la loi citée ici est la première (celle de 1965) qui a largement évoluée depuis.
Pour simplifier cette loi dit aujourd'hui en substance que la puissance des ordinateur double environ tous les 2 ans.
Moore à également predit en 1997 que sa loi serait mise a mal aux environs de 2017.
Et pour le moment cette loi reste vérifiée.
zorro3364, le 18/10/2011 - 12:35
... et une partie du boulot de l'os est de répartir les ressources entre les threads oui, mais si un processus est monothreadé l'os n'y peut rien du tout.

Voir même c'est contre productif dans le cas d'un process monothreadé, car l'OS, pour répartir la charge, change le coeur d'exécution régulièrement, d'où perte de temps dans les changements de contexte.

C'est loin d'être facile à gérer comme situation d'avoir une machine avec plein de cpu.
Très bonne initiative d'Intel, qui revient à dire "On a besoin d'idées nouvelles car nos ingénieurs tournent en rond dans leur tête, aidez nous siou plait, un euro ou deux pour manger et rester propre".
Si des netbooks, des ultrabooks ou des disques SSD sont à gagner
Des netbooks avec un processeur Celeron monocoeur qui ne peut pas faire du parallèle ?
astragor, le 18/10/2011 - 12:41
Les lois de Moore qui prédisaient un doublement de la puissance des processeurs tous les ans ne sont plus vraies
Cette affirmation est plus qu'approximative.
Approximation encore due à Wikipedia. Il n'y a pas plusieurs lois de Moore, mais une loi que Moore a affiné au fur et a mesure de ses observations.
La version de la loi citée ici est la première (celle de 1965) qui a largement évoluée depuis.
Pour simplifier cette loi dit aujourd'hui en substance que la puissance des ordinateur double environ tous les 2 ans.
Moore à également predit en 1997 que sa loi serait mise a mal aux environs de 2017.
Et pour le moment cette loi reste vérifiée.


Non, une fois de plus, on reprend. "énoncé", pas "loi" ; et ca ne parle que de doubler le nombre de TRANSISTORS et pas la puissance. Il n'y a pas de loi de Moore, il y a l'énoncé de Moore. Pour info, la majorité des transistors dans nos cpus, c'est de la mémoire cache.


sinon ca sert a rien d'apprendre ca a nos futurs ingénieurs, ce genre d'appli est de plus en plus codé par les branches offshore (comprendre délocalisation en Chine, Inde, et plus récemment Afrique du Sud). Les entreprises occidentale ne font plus de dev, inutile de gacher le temps de cerveau disponible des étudiants avec ca.

Pour finir, l'utilisation de cpus en // ne se prete pas forcément a tout. Si des évenements sont tous dépendants, ils se retrouveront dans le meme thread si le concepteur a bien fait son boulot... sauf s'il a cédé aux sirenes du marketing, auquel cas il les mettra dans des threads séparés qui du coup seront bloqués (mais comme ca les adeptes des benchmarks pourront dire que "oui l'appli utilise maintenant tous les coeurs).
zorro3364, le 18/10/2011 - 12:35
alors toi tu connais visiblement rien du tout à la programmation!
il y a des cas ou la parallélisme peut s'appliquer et d'autres non, ça n'a rien a voir avec la complexité de la tache a accomplir.
et une partie du boulot de l'os est de répartir les ressources entre les threads oui, mais si un processus est monothreadé l'os n'y peut rien du tout.
Ben si, il peut répartir les ressources entre les différents processus.

La différence essentielle entre processus et thread, c'est que les threads partagent la même zone mémoire entre eux, il faut donc s'assurer que ce qui est en train d'être écrit par un thread n'est pas lu ou écrit par un autre et mettre en place des systèmes de verrou, or le problème des verrous est bien connu sur les fichiers, il y a un risque de deadlock.

Une bonne étude des performances a été réalisée à l'Université de Franche-Comté, disponible en PDF, ici sur un problème basique.
C 'est vieux comme le Cray 2 ...
Mouais, le multitreading peut s'avérer dangereux et dur à maintenir, je comprends que la plupart ne l'utilise pas à moins d'avoir d'énormes gains en perfs (et encore)

salut

Le problème c'est que nous n'avons plus vraiment le choix. Si tu as un proc à 200 coeurs à l'avenir et que n'en utilises qu'un seul, tu vas te sentir un peu limité niveau perf. C'est vrai qu'avant le multithreading c'était pour gagner en perf, maintenant c'est pour ne pas en perdre.
Dangereux oui il faut juste connaitre les risques et les eviter. Tout est question d'apprentissage et choix des outils. D'ou ce concours !

cdt, paul guermonprez
zig, le 18/10/2011 - 13:33
Si des netbooks, des ultrabooks ou des disques SSD sont à gagner
Des netbooks avec un processeur Celeron monocoeur qui ne peut pas faire du parallèle ?

meme pas, ce sont des NB avec du atom dual-core dedans ;-)
Les lois de Moore qui prédisaient un doublement de la puissance des processeurs tous les ans ne sont plus vraies aujourd'hui notamment à cause de problèmes de dissipation thermique sur les puces.
C'est faux. La loi de Moore prédit que le nombre de transistors sur une puce de silicium double tous les 2 ans. Or, ce n'est pas parce qu'on met deux fois plus de transistors par unité de surface qu'on double la puissance de calcul. Cette loi reste vérifiée jusqu'à présent, d'ailleurs vous y faites bien allusion :
Ils ont donc multiplié le nombre de processeurs par puce, la fréquence de chaque processeur restant inchangée.


pour pallier à ce problème
On ne pallie pas à un problème, on pallie un manque.
zorro3364, le 18/10/2011 - 12:35
buzut, le 18/10/2011 - 12:25
d'accord avec JArchos ! C'est le genre d'optimisation utile pour des softs gourmands en ressources genre montage photo/vidéo FX etc. Sinon, pour du logiciel plus basique, c'est surtout à l'OS de savoir répartir la charge de différents logiciels peu gourmands mais lancés en parallèle.
alors toi tu connais visiblement rien du tout à la programmation!
il y a des cas ou la parallélisme peut s'appliquer et d'autres non, ça n'a rien a voir avec la complexité de la tache a accomplir.
et une partie du boulot de l'os est de répartir les ressources entre les threads oui, mais si un processus est monothreadé l'os n'y peut rien du tout.
JArchos n'a pas parlé de complexité, mais de gourmandise en ressources.
Il n'a pas non plus parlé de threads mais de différents logiciels.
Peut-être qu'il ne connait rien à la programmation, mais toi tu ne sais pas lire...
suis sur paris, qqun se joint à moi pour tenter le coup ?
RV sur ma messagerie@numérama :)
Intel Xeon E3-1230
4 offres à partir de 231 €
 
Intel Pentium G630T
13 offres à partir de 70 €
 
Intel Xeon 5140
1 offres à partir de 155 €
 
Intel Core i5 2500
26 offres à partir de 185 €
 
Intel Xeon W3530
2 offres à partir de 316 €
Télécharger
FastStone Image Viewer
Albums et visionneuses - Visionneur d'images rapide et fonctionnel
 
Alliancep2p
P2P Privé (entre amis) - Protocole BitTorrent / réseaux privés
 
ExifCleaner
Photo numérique - Supprimez les données Exif de vos photos.
 
MediaFolder
Catalogues et pochettes - Boîte à outils pour fichiers multimédia
 
eMule 0.50a [MorphXT]
 
Octobre 2011
 
Lu Ma Me Je Ve Sa Di
26 27 28 29 30 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31 1 2 3 4 5 6
Matoumba
EntrepreNantes
Numerama est un site du réseau PressTIC