IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
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

C++ Discussion :

C++ et le calcul scientifique


Sujet :

C++

  1. #1
    Membre �prouv�
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par d�faut C++ et le calcul scientifique
    Bonjour,

    Pour moi (et pour la plupart, je pense), le C++ est associ� � des applications exigeantes en performances.

    Or, je constate que dans le domaine du calcul scientifique, le C# a tendance � remplacer le C++, le Fortran �voluant peu. Le C++ semble de plus en plus cantonn� aux jeux et � l'embarqu�. Que pensez-vous de ce mouvement ?

    Par ailleurs, suite � une nouvelle qui vient de tomber, j'ai �t� jeter un �il par curiosit� sur les offres d'emploi de Bull. R�sultat : C++ quasi inexistant, et java tr�s pr�sent. Encore une source d'interrogations pour moi...

  2. #2
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 49
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Secteur : Sant�

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Par d�faut
    dans le domaine du calcul scientifique, le C# a tendance � remplacer le C++
    Une source ?

    Dans le lien que tu donnes, il est �crit :
    bas�e sur le syst�me d'exploitation Linux
    donc, d�j�, il faut oubli� C# dessus. Et il faut oublier aussi le C# pour la majorit� des supercalculateurs tr�s tr�s haut de gamme

    C++ quasi inexistant, et java tr�s pr�sent
    Rien de tr�s surprenant je trouve. �a veut juste dire que pour la plupart des applications, les performances ne sont pas critiques (ou que la partie de l'application qui est critique : 1. est qu'une petite partie de l'application 2. peut �tre pris en charge par une lib sp�cialis�e)

    A mon avis, la "bullx supercomputer suite" de Bull n'est pas d�velopp�e en java...

    L'erreur, je pense, est de croire qu'il est mieux de d�velopper la partie non critique en java plut�t qu'en C++ pour des raisons de portabilit�/productivit�/maintenance/autres

  3. #3
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2008
    Messages
    26 772
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : Ao�t 2008
    Messages : 26 772
    Par d�faut
    Citation Envoy� par gbdivers Voir le message
    donc, d�j�, il faut oubli� C# dessus.
    Pas du tout. C#, c'est loin d'�tre r�serv� aux plateformes Microsoft, c'est simplement un langage cr�� par Microsoft, dont l'impl�mentation de r�f�rence est faite par Microsoft mais il reste quand m�me des impl�mentations non Microsoft : Mono http://www.mono-project.com/Main_Page et DotGNU http://dotgnu.org/ (bon, le dernier, on peut l'oublier...). Certes, niveaux perfs, c'est s�rement pas ce qu'on fait de mieux, mais �a m'�tonnerait que ce soit des routines en C# appel�es pour le traitement lourd.

    Citation Envoy� par gbdivers Voir le message
    L'erreur, je pense, est de croire qu'il est mieux de d�velopper la partie non critique en java plut�t qu'en C++ pour des raisons de portabilit�/productivit�/maintenance/autres
    En effet. Tout ce qui est non critique et n'a pas besoin de performances doit �tre fait d'une mani�re aussi lisible que possible. C'est aussi pour �a que je dirais de ne pas forc�ment la faire en Java, mais plut�t dans un langage o� l'�quipe de dev est � l'aise, o� l'on trouve facilement des gens pour reprendre le bousin � au cas o� �, plut�t que se fixer un langage quelconque.

    C'est aussi comme �a dans certaines parties de l'embarqu� (beaucoup de gens seront n�anmoins bien mieux plac�s que moi pour compl�ter) : on commence ce qu'on doit faire en assembleur en assembleur, puis on passe d�s que possible � du C. C'est � peu pr�s impossible de faire un bootloader exclusivement en C (en tout cas, je n'ai jamais entendu parler de m�thode pour le faire, ni d'une POC).
    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
    Membre �prouv�
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par d�faut
    Citation Envoy� par gbdivers Voir le message
    Une source ?
    Une SSII qui bosse dans le monde de l'�nergie (EDF, Technip...).
    Et les diverses annonces que je peux voir.

    Dans le lien que tu donnes, il est �crit :

    Citation Envoy� par gbdivers Voir le message
    donc, d�j�, il faut oubli� C# dessus. Et il faut oublier aussi le C# pour la majorit� des supercalculateurs tr�s tr�s haut de gamme
    C'est �galement mon pr�jug�.
    Mais pourquoi le site de Bull ne contient-il qu'une seule annonce C++ sur des dizaines d'annonces en France ?

    Citation Envoy� par gbdivers Voir le message
    L'erreur, je pense, est de croire qu'il est mieux de d�velopper la partie non critique en java plut�t qu'en C++ pour des raisons de portabilit�/productivit�/maintenance/autres
    Du coup, je me pose la question : ne m'int�ressant gu�re � l'embarqu�, dois-je mettre la p�dale douce sur le C++ et m'investir dans Java, en gardant un fond de C++ ?

  5. #5
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 49
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Secteur : Sant�

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Par d�faut
    Une SSII qui bosse dans le monde de l'�nergie (EDF, Technip...)
    Donc pas forcement une vision globale...

    Par exemple, dans mon domaine, on peut voir que la r�partition est plus en faveur de C++ (55%) que du Java (15%) et C# (6%) (le reste sont les langages de scripts (R, MathLab, Perl, Python) qui sont bien repr�sent� aussi (19%) et les autres (VB, etc.) 5%)

    Mais pourquoi le site de Bull ne contient-il qu'une seule annonce C++ sur des dizaines d'annonces en France ?
    Parce qu'un d�veloppeur C++ vaut 10 d�veloppeurs Java ? (pri�re de ne pas r�pondre � ce troll trop velu)

    dois-je mettre la p�dale douce sur le C++ et m'investir dans Java, en gardant un fond de C++
    Tu fais comme tu pr�f�res
    Il y a aussi beaucoup plus de d�veloppeurs Java que C++ donc �a compense. Ce n'est pas difficile de trouver du boulot dans les 2 cas. J'ai un stagiaire qui vient de finir ses �tudes qui n'a eu aucune difficult� � trouver du boulot.

    il reste quand m�me des impl�mentations non Microsoft
    J'avais (encore) oubli� Mono. D'un autre c�t�, j'imagine que pour un supercalculateur, �a ne sera pas utilis�

  6. #6
    Membre Expert
    Avatar de Goten
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 580
    D�tails du profil
    Informations personnelles :
    �ge : 35
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Par d�faut
    Citation Envoy� par oodini Voir le message
    Du coup, je me pose la question : ne m'int�ressant gu�re � l'embarqu�, dois-je mettre la p�dale douce sur le C++ et m'investir dans Java, en gardant un fond de C++ ?
    S'investir � fond dans du Java? C'est trivial quand tu as un bon (et je parle d'un r�el bon niveau) en C++.
    Moi je vois �a comme un double effet, tu t'investis en C++ pour devenir un bon d�veloppeur le passage � Java se fera sans soucis.
    Dans l'autre sens.... ouille.

  7. #7
    Membre Expert
    Homme Profil pro
    Chercheur
    Inscrit en
    Mars 2010
    Messages
    1 218
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Chercheur

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 218
    Par d�faut
    Bonjour,

    les langages de programmation utilis�s dans le calcul scientifique sont essentiellement le Fortran, le C et le C++. Les autres langages (Python, Java, ...) sont en g�n�ral employ�s � des fins non calculatoires (interfaces homme-machine, espionnage par scripts, etc).

    C'est bien s�r vrai dans le domaine de l'�nergie, y compris � EDF. Il faudrait pr�ciser quelle est la SSII, sur quel projet elle travaille. Il y a quelque chose qui a d� t'�chapper. En ce qui concerne BULL, ils s'int�ressent beaucoup plus aux architectures parall�les qu'au calcul scientifique proprement dit.

    Au passage, le Fortran est certainement le langage le plus utilis� en calcul scientifique. L'�volution du Fortran n'est pas forc�ment int�ressante dans ce domaine car elle est souvent per�ue comme �tant accompagn�e d'une perte de performance. Encore aujourd'hui, beaucoup de noyaux de calcul sont d�velopp�s en Fortran 77. D'ailleurs, en r�f�rence � ton lien, les codes de calcul pour la fusion magn�tique sont justement d�velopp�s en Fortran au CEA.

    Finalement, je r�ponds � ta question :
    Or, je constate que dans le domaine du calcul scientifique, le C# a tendance � remplacer le C++, le Fortran �voluant peu. Le C++ semble de plus en plus cantonn� aux jeux et � l'embarqu�. Que pensez-vous de ce mouvement ?
    Ce mouvement n'est pas en marche et je m'en r�jouis!

  8. #8
    Invit�
    Invit�(e)
    Par d�faut
    Bonjour,

    Citation Envoy� par Goten Voir le message
    S'investir � fond dans du Java? C'est trivial quand tu as un bon (et je parle d'un r�el bon niveau) en C++.
    J'ai travaill� sur quelques projets de migration C++ vers Java avec des �quipes de dev aguerris au C++ (> 10 ans d'exp�rience) qui n'ont jamais r�ussi � appr�hender l'univers Java.

    Ma�triser le C++ n'implique pas une ma�trise du Java, loin de l�.
    Le Java, ce n'est pas seulement une syntaxe, c'est tout un �cosyst�me et de nombreux frameworks (J2EE, JPA, JSP, GWT, Hibernate, Spring, ....).

  9. #9
    Membre Expert
    Avatar de Goten
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 580
    D�tails du profil
    Informations personnelles :
    �ge : 35
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Par d�faut
    Citation Envoy� par Nudger Voir le message
    Bonjour,


    J'ai travaill� sur quelques projets de migration C++ vers Java avec des �quipes de dev aguerris au C++ (> 10 ans d'exp�rience) qui n'ont jamais r�ussi � appr�hender l'univers Java.

    Ma�triser le C++ n'implique pas une ma�trise du Java, loin de l�.
    Le Java, ce n'est pas seulement une syntaxe, c'est tout un �cosyst�me et de nombreux frameworks (J2EE, JPA, JSP, GWT, Hibernate, Spring, ....).
    Bon ok j'ai pas �t� assez clair, Java hors J2EE (l� oui c'est vraiment � part enti�re), c'est quand m�me trivial le passage C++ vers Java.

    (et j'ai vu des gens avec plus de 10 ans d'exp�rience qui �tait pas aguerris en C++ :p)

  10. #10
    Membre Expert
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    1 415
    D�tails du profil
    Informations personnelles :
    Localisation : France, Paris (�le de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 415
    Par d�faut
    Pour savoir faire des deux, je suis vraiment d'accord avec Goten. L'�co-syst�me java (hors J2EE, nous sommes d'accord) n'est pas dur � int�grer. Il y a un peu de travail certes... mais pas de quoi fouetter un chat.

    Le passage Java vers C++, de la part d'un d�veloppeur pur java, doit �tre vraiment difficile, car on prend en java des habitudes dangereuses en C++. La gestion de la m�moire, par exemple.

Discussions similaires

  1. R�ponses: 5
    Dernier message: 09/11/2009, 11h12
  2. Technique ad�quate pour du calcul scientifique
    Par delire8 dans le forum API graphiques
    R�ponses: 3
    Dernier message: 10/12/2008, 15h45
  3. calcul scientifique & compilateur
    Par kw1k dans le forum Choisir un environnement de d�veloppement
    R�ponses: 2
    Dernier message: 12/06/2006, 10h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo