[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: dual core: ne fonctionne pas ?



François TOURDE wrote:
Le 14311ième jour après Epoch,
Basile STARYNKEVITCH écrivait:

La réalité est brutale: pour profiter des multi-coeurs, il faudra
réécrire la plupart des programmes actuels, et le développement d'un
programme parallèle est -pour les ingénieurs qui s'en chargent- encore
plus difficile que celui d'un programme séquentiel classique.

A moins de généraliser l'utilisation de la virgule comme séparateur
d'instructions en C, et que le compilateur puisse en tenir compte
correctement, non?


Je participe à des montages de projets de R&D en rapport vague avec ça (désolé, je n'en dirais pas plus tant que le financement n'est pas acquis; s'il est acquis, je continuerais à développer du logiciel libre.).

Mais c'est beaucoup beaucoup plus compliqué que la virgule du langage C (qui est précisément l'operateur d'évaluer en séquence, pas en parallèle).

Il y a une véritable crise du logiciel qui s'annonce devant nous.

Et l'esprit humain n'est pas fait pour penser en parallèle.

Mon intuition est d'ailleurs un peu opposée à ce que François Tourde suggère. Je crois (c'est vraiement une opinion, une intuition - pas du tout scientifique) au contraire que la programmation parallèle se fera dans des langages fonctionnels de très haut niveau (style Jocaml ou Haskell ou autres langages relativement déclaratifs - dans le sens américain [Peyton-Jones] pas français [Pitrat] du mot "declarative") où les effets de bord seront minimaux. Ca demandera de toutes façons la reconception et la réécriture des applications ex nihilo ou presque. On n'échappera donc pas à la crise du logiciel parallèle, on peut espérer éventuellement la surmonter un jour, en investissant massivement (et dès maintenant) dans la R&D (oui, je défends mon bifteck et la recherche en général, actuellement mal-menée). La même intuition me fait penser que le logiciel libre, s'il accepte d'innover fortement, a de beaux jours devant lui : le développement de logiciels parallèles sera tellement difficile et coûteux qu'il sera encore plus nécessaire de le mutualiser sur le modèle économique du logiciel libre. Je ne crois évidemment pas à la possibilité pratique de coder des applications sur des processeurs à 30 ou 300 coeurs avec les techniques de programmation parallèles actuelles (pthreads, MPI, OpenMP, ...).

Librement.


--
Basile STARYNKEVITCH         http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***


Reply to: