Journal Encore des nouvelles de Fortran
Mon précédent article Des nouvelles de Fortran du 3 mai 2020 commençait par ces mots : « Punk is not dead, Fortran non plus ». Et voilà que dans le TIOBE Index d'avril 2021, le Fortran fait son retour dans le top 20 avec un saut de la 34e position à la 20e, après 10 ans d'éclipse. Avec un taux de 0,91 %, on pourrait se contenter de s'étonner et penser que l'on est dans le bruit (…)
Lien Une introduction à la programmation parallèle avec Open MPI et OpenMP
Journal Python haute performance et cristallographie
Cher journal,
À l'instar de l'ami omc qui te partageait ses polycops de cours sur "Python for science", je vais moi aussi te parler de Python à travers le prisme de la cristallographie. Mais qu'est ce donc que la cristallographie vas-tu me demander. Historiquement il s'agit d'une discipline qui vise à déterminer la structure atomique (nature et ordonnancement des atomes) de la matière. Cette discipline est en fait à l'intersection d'un très grand nombre de domaines (physique, chimie, biologie,…) (…)
Journal Un Python qui rivalise avec du C++
Rencontre avec un code de calcul scientifique open-source - écrit en Python - qui tente de rivaliser avec du C++ sur des supercalculateurs, spectralDNS!
Quelques liens:
La publication initiale : https://arxiv.org/pdf/1602.03638v1.pdf
Une seconde publication : https://arxiv.org/pdf/1607.00850.pdf
Une publication plus récente : https://arxiv.org/pdf/1701.03787v1.pdf
Le dépôt GitHub : https://github.com/spectralDNS/spectralDNS
Première réaction?
Je ne sais pas quelle est votre première réaction. Moi j'y croyais pas trop. Puis j'ai potassé les articles, j'ai fait quelques tests avec le code, j'ai contacté l'auteur principal, et (…)
incompact3d.com fête son premier anniversaire
Pour célébrer le premier anniversaire du site incompact3d.com, faisons une brève plongée dans le code de calcul éponyme sous licence libre (GNU GPL) qui a plus de 15 ans ! Il permet de résoudre les équations de Navier‐Stokes incompressibles en 2D/3D et peut exploiter efficacement plus d’un million de cœurs.
OpenMOLE 5: Interface web et Market Place
La version 5 d'OpenMOLE - surnommé Loving Lobster (homard aimant) - vient d'être publiée. Pour mémoire OpenMOLE est un logiciel permettant de distribuer des explorations d'espaces de paramètres, de listes de fichiers, d'algorithme d'optimisation, d'analyse de sensibilité… sur des environnements de calcul type serveurs multi-processeurs, fermes et grilles de calcul. Il permet d’intégrer facilement votre code exécutable quelque soit le langage (C++, R, Python, Java, NetLogo…) et déporte son exécution de manière entièrement transparente, sans aucune installation préalable du coté de l'environnement d'exécution. Il permet de concevoir des workflows de calcul à très grande échelle générant des millions de jobs et des centaines de Go de données.
Voir les changements depuis la version 4 en seconde partie de dépêche.
Nous donnons régulièrement des formations ouvertes au public d'OpenMOLE à l'Institut des Systèmes Complexes à Paris. La prochaine aura lieu courant octobre, elle sera annoncée très prochainement.
Forum général.cherche-matériel Remplacer un (petit) cluster pour consommer bcp moins tout en gardant de la puissance
Salut,
je dois, pour des raisons de consommation, remplacer le (petit) cluster du boulot. Pour information, nous faisons du traitement scientifique d’images satellites. Nous avons besoin de puissance de calcul et d’I/O (aussi rapide que possible).
Actuellement, on a 6 nœuds + un maître. 46 cœurs, 2 à 3.5go par cœur, 72 disques (12 à 24 disques par machine), pour un espace total de 140to (70 réellement utilisables avec la solution actuelle).
Logiciellement parlant, on a:
HTCondor pour la répartition (…)
Forum général.cherche-logiciel Distribution de calcul
Bonsoir à tous,
Voilà mon problème : j'ai plein de services à lancer, et un certain nombre de machines pour les accueillir. Ces services peuvent varier (il faut en ajouter ou en supprimer certains de temps en temps), mais doivent pouvoir aussi tourner en continu pendant très longtemps. Si jamais une machine tombe (ce qui arrivera forcément), il faut relancer le service sur une autre machine, le plus rapidement possible.
Lancer un service sur une seule machine et s'assurer qu'il (…)
Kalray un processeur massivement parallèle très impressionnant : Qu’il est loin le temps de mon ZX81
Quand je regarde les ordinateurs de compétition que nous utilisons aujourd’hui et ceux avec lesquels j’ai découvert l’informatique, j’ai l’impression de voir l’évolution de la vie sur terre — qui a commencé il y a environ 3,5 milliards d’années avec l’apparition des premières bactéries, pour arriver jusqu’à l’homme plus ou moins évolué que nous sommes aujourd’hui — ramenée à une soixaine d’années si l’on part du transistor jusqu’aux processeurs les plus avancés d’aujourd’hui, parmi lesquels le processeur MPPA MANYCORE de Kalray.
Où vont les supercalculateurs ? D’où on vient, quels sont les problèmes, où l’on va (1re partie)
Il y a un bail, j’avais dit que je voulais un jour parler des architectures haute performance, et de leur potentiel futur. Je me lance donc ici, en espérant que certains se permettront de me corriger là où j’aurai fait des erreurs (sans doute nombreuses).
Je vais diviser ces explications en trois parties. La première (qui suit juste après) va juste faire un rappel sur les architectures « séquentielles » de base. La deuxième partie (à venir très bientôt) s’occupera de décrire les systèmes multi‐processeurs et multi‐cœurs, ainsi que la raison de leur existence. J’en profiterai pour aussi expliquer les problèmes récurrents liés à l’exploitation de systèmes haute performance. La dernière partie parlera des efforts effectués en ce moment pour fabriquer les supercalculateurs du futur (disons à l’horizon 2020-2025).
Forum Programmation.c Comment effectuer une tache le plus rapidement possible ? threads / fork() ... ?
Bonjour,
en fait j'ai pri un petit exemple : *calculer la somme des nombres premiers en dessous de 2 millions.*
Et J'aimerais effectuer cette tâche le plus rapidement possible, quelque soit les ressources ou la mémoire consommée.
(Enfait, j'ai un même code, et ce que je veux c'est le paralléliser).
Les Threads :
J'ai fait un test dans un langage appelé Scala (proche du java), où j'utilise des threads.
Cependant le résultat n'est pas très concluant : le (…)
La taupe a le look Coco !
La dernière mouture d’OpenMOLE, répondant au doux nom de code Crazy Coconut (version 0.6), est arrivée. Grâce à un mode de développement AGILE, nous vous livrons en effet tous les deux mois les primeurs de la plus célèbre des plates‐formes TAUPE.
Pour rappel OpenMOLE (Open MOdeL Experiment), met à profit les environnements de calcul intensif pour l’expérimentation sur les modèles et permet aux modélisateurs de concevoir des workflows d’étude pour des modèles de simulation. Pour ce faire, l’utilisateur embarque son modèle (en Java / Scala / C / C++ / Fortran / Scilab / GNU Octave / NetLogo…) dans la plate‐forme, puis il conçoit l’étude qu’il souhaite en faire et spécifie l’environnement de calcul auquel il souhaite déléguer la charge de travail.
Journal Pyth(on|ran) + OpenMP ?
Youpi [le monde est beau]
Vous n'êtes pas sans savoir que le parallélisme en mémoire partagé et python, c'est pas la joie. La faute à ce cher Gilles qui bride complètement le parallélisme. Les solutions alternatives se basent donc sur des processus lourds, comme inventorié dans cette excellente page.
Personnellement, j'aime bien utiliser les directives OpenMP pour paralléliser des applications natives. C'est concis, incrémental et non-intrusif.
Heureux papa du projet pythran, qui permet justement de traduire (…)
OpenMOLE : la taupe sort de son trou !
Nous sommes heureux et fiers de vous faire part de la sortie de la version 0.5 d'OpenMOLE (Open MOdeL Experiment).
OpenMOLE est un logiciel pour le calcul scientifique et intensif ! Développé au sein de l'Institut des Systèmes Complexes (Paris), OpenMOLE est le fruit de quatre années de maturation et de confrontation aux problèmes de modélisations de chercheurs issus de nombreux domaines scientifiques (Sciences Humaines, Biologie, Physique, Géographie, Agro-alimentaire…). Il est 100% libre, 100% écrit en Scala.
Il est destiné aux modélisateurs réalisant de vastes explorations sur leurs modèles. Il permet à la fois de générer automatiquement de larges plans d'expériences (plans complets, LHS, Saltelli …) et d'exploiter la puissance d’environnement de calcul massivement parallèle type cluster ou grille de calcul. Le formalisme de workflow permet d'exprimer naturellement des traitements à accomplir en parallèle.
OpenMOLE ne requiert aucune connaissance en informatique distribuée de la part des modélisateurs. Il leur permet pourtant de réduire le temps d’exécution de leurs codes de quelques années à quelques heures.