Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation parallèle, calcul scientifique et de haute performance (HPC) Discussion :

Forum sur la programmation parallèle


Sujet :

Programmation parallèle, calcul scientifique et de haute performance (HPC)

  1. #1
    Responsable Qt & Livres

    Forum sur la programmation parallèle
    Ouverture officielle du forum d'entraide sur la programmation parallèle


    Voici créé ce forum dédié à la programmation parallèle. Il vise à rassembler toutes les questions sur la programmation parallèle en général, à la parallélisation d'algorithmes, etc.

    C'est un domaine qui arrive de plus en plus dans le quotidien des développeurs, ne fut-ce que parce que les fabricants de processeurs ne font plus la guerre au gigahertz mais bien au nombre de cœurs : il ne suffit plus d'optimiser ses algorithmes, il faut encore qu'ils puissent utiliser les cœurs disponibles. Cela fait qu'il faut changer la vision dans le développement, paralléliser tout ce qui peut l'être.

    Le constat devient plus important quand on remarque l'arrivée de superordinateurs à base de GPU, de processeurs graphiques : on peut produire des superordinateurs moins coûteux et moins énergivores pour des performances comparables, à condition de paralléliser correctement les traitements. Sans atteindre des besoins monstres, des traitements plus communs, comme FastROCS, peuvent atteindre des performances bien supérieures à l'aide des technologies GPGPU qu'avec du matériel plus commun.

    Une pléthore d'outils sont d'ores et déjà disponibles : ceux de threading disponibles dans la majorité des langages, les technologies déployées dans plusieurs langages (MPI, OpenMP...), qui restent dans le domaine des calculs sur CPU ; pour le GPGPU, on peut citer notamment CUDA et OpenCL, pour qui deux forums plus spécifiques existent déjà.

    Pour faire vivre ce forum, on peut envisager beaucoup d'options : que ce soit par la rédaction d'articles ou d'une FAQ, toute idée et investissement sont les bienvenus, n'hésitez pas à répondre à ce topic et/ou à me contacter par MP si vous souhaitez participer !

    Le forum de Développez dédié à la programmation parallèle
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  2. #2
    Membre éprouvé
    Pour commencer le premier troll: j'imagine que le forum est là aussi pour la programmation concurrente ?

  3. #3
    Responsable Qt & Livres

    Citation Envoyé par TropMDR Voir le message
    Pour commencer le premier troll: j'imagine que le forum est là aussi pour la programmation concurrente ?
    Oui, évidemment . Les sujets sont très liés et on ne peut pas tout mettre dans le titre d'un forum .
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  4. #4
    En attente de confirmation mail
    Bonjour,

    n'est-il pas difficile de rassembler dans un forum "Langages en général" des bibliothèques ou framework fortement liés à un langage donné ?
    Je m'intéresse à ce sujet mais dans le domaine du .Net avec par exemple Parallel LINQ et il y a une news qui est sortie aussi à ce sujet sur Dvpz : .NET : vers une programmation parallèle plus simple avec deux nouvelles librairies du framework de Microsoft.

    Mais je doute que les solutions apportées pour .Net puissent être transposables à d'autres langages comme le C++ ou Java.
    Et inversement, il doit exister des solutions dans ces langages qui ne se transposent pas en .Net.

    En fait, je me vois mal poser une question sur ce forum alors qu'il existe déjà un forum pour le langage concerné.

  5. #5
    Membre régulier
    Si ta question est d'avantage liée à un langage ou a une bibliothèque développée pour un seul langage qu'à une technique parallèle à proprement parler, alors peut-être qu'effectivement ce forum n'est pas le lieu pour la poser.

    De même qu'on peut se poser la question de comment on fait une liste chainée dans le forum "algorithmes" ou dans le forum "C", tout dépend de la couleur de la question.. on peut poser une question parallélisme ici ou dans un autre forum. Je ne pense pas qu'il y ait de tri absolu.

    Ici en revanche, on peut se poser des question sur le parallélisme a proprement parler comme "quelle technique pour optimiser les communications entre les processeurs dans tel algorithme ?" ou "comment paralléliser tel algorithme ?", "que vaut la parallélisation automatique de Gcc ?", "vaut-il mieux utiliser la parallélisation à mémoire partagée ou pas pour tel problème ?" etc... je pense que ce genre de questions n'avaient de place nulle part ailleurs avant.
    --
    Heimdall

  6. #6
    En attente de confirmation mail
    Citation Envoyé par Heimdall Voir le message
    Si ta question est d'avantage liée à un langage ou a une bibliothèque développée pour un seul langage qu'à une technique parallèle à proprement parler, alors peut-être qu'effectivement ce forum n'est pas le lieu pour la poser.

    De même qu'on peut se poser la question de comment on fait une liste chainée dans le forum "algorithmes" ou dans le forum "C", tout dépend de la couleur de la question.. on peut poser une question parallélisme ici ou dans un autre forum. Je ne pense pas qu'il y ait de tri absolu.

    Ici en revanche, on peut se poser des question sur le parallélisme a proprement parler comme "quelle technique pour optimiser les communications entre les processeurs dans tel algorithme ?" ou "comment paralléliser tel algorithme ?", "que vaut la parallélisation automatique de Gcc ?", "vaut-il mieux utiliser la parallélisation à mémoire partagée ou pas pour tel problème ?" etc... je pense que ce genre de questions n'avaient de place nulle part ailleurs avant.
    Je suis peut-être un peu trop novice dans ce domaine, mais la réponse à chacune de tes questions exemple n'est-elle pas dépendante du langage utilisé ?
    En fait, qu'entends-tu par "mémoire partagée" ?

  7. #7
    Membre régulier
    Citation Envoyé par WebPac Voir le message
    Je suis peut-être un peu trop novice dans ce domaine, mais la réponse à chacune de tes questions exemple n'est-elle pas dépendante du langage utilisé ?

    Pas forcément, la bibliothèque MPI (Message Passing Interface) est disponible en C, en C++ et en Fortran, par exemple. C'est dommage de disperser les messages concernant MPI dans les 3 forums... d'autres exemples peuvent être trouvés.

    Des questions typiquement algo parallèle sont également indépendantes du langage dans lequel on code.


    En fait, qu'entends-tu par "mémoire partagée" ?
    Le cas où tous les processeurs partagent le même espace de mémoire, à opposée avec les cas où les opérations sont fait sur des processeurs possedant leur propre mémoire et devant communiquer les variables par le réseau.

    Dans le premier cas :

    int a; // partagé par tous les CPU


    dans le second cas

    int a; // chaque CPU va avoir une valeur différente de 'a'.
    --
    Heimdall

  8. #8
    Responsable Qt & Livres

    Citation Envoyé par WebPac Voir le message
    En fait, je me vois mal poser une question sur ce forum alors qu'il existe déjà un forum pour le langage concerné.
    Pas mal de problèmes sont dépendants du langage : comment utiliser Boost.Thread ? La question doit se trouver dans le forum Boost côté C++.

    Par contre, comment paralléliser un algorithme, la comparaison des diverses solutions dans la programmation parallèle, etc., cela a plus sa place par ici, car ce sont des problématiques entièrement liées au concept de programmation parallèle, pas du tout d'un langage ou l'autre. Cela inclut pas mal d'algorithmique, c'est vrai, mais on déborde aussi souvent de ce cadre.
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  9. #9
    Community Manager

    Mise à jour de la page Cours de la rubrique HPC, les publications de ces dernières années sont indexées
    Bonjour chers membres du Clud,

    J'ai le plaisir de vous annoncer la mise à jour de la page cours HPC, cela toujours dans l'optique de vous aider à apprendre et à vous perfectionner en calcul scientifique et de haute performance.



    Bonne lecture
    Vous avez envie de contribuer au sein du Club Developpez.com ? Contactez-nous maintenant !
    Vous êtes passionné, vous souhaitez partager vos connaissances en informatique, vous souhaitez faire partie de la rédaction.
    Il suffit de vous porter volontaire et de nous faire part de vos envies de contributions :
    Rédaction d'articles/cours/tutoriels, Traduction, Contribution dans la FAQ, Rédaction de news, interviews et témoignages, Organisation de défis, de débats et de sondages, Relecture technique, Modération, Correction orthographique, etc.
    Vous avez d'autres propositions de contributions à nous faire ? Vous souhaitez en savoir davantage ? N'hésitez pas à nous approcher.

###raw>template_hook.ano_emploi###