Journal [cours en ligne] le CNRS nous cause ...

Posté par  . Licence CC By‑SA.
Étiquettes :
12
22
déc.
2011

Un rapide journal signet pour signaler la disponibilité de "cours" orienté HPC et calculs hautes-performances. Bien qu'il ne s'agisse pas vraiment de cours à proprement parlé, cela devrait intéressé les étudiants par ici.

Il ne s'agit pas de cours à proprement parlé parce qu'il manque "le prof" (pas réellement de déroulés complets, avec problÚmes posés, non-posés, exemples de résolution, chronologie de la progression, notation de celle-ci)
Il s'agit de supports de cours (des présentations de type diapositives, ainsi que des tarball contenant les exemples)

http://calcul.math.cnrs.fr/spip.php?article192&lang=fr

Liste des cours disponibles :

  • Architecture et programmation, Violaine Louvet (Institut Camille Jordan, CNRS)
  • Compilation et Ă©dition de liens, Romaric David (UniversitĂ© de Strasbourg)
  • CMake, LoĂŻc Gouarin (Laboratoire de MathĂ©matique d’Orsay, CNRS)
  • Debuggage, Romaric David (UniversitĂ© de Strasbourg)
  • Profilage, optimisation, Violaine Louvet (Institut Camille Jordan, CNRS)
  • Doxygen, Violaine Louvet (Institut Camille Jordan, CNRS)
  • Mise en pratique sur un exemple complet : rĂ©solution de l’équation de la chaleur, LoĂŻc Gouarin (Laboratoire de MathĂ©matique d’Orsay, CNRS) & Violaine Louvet

Exemple de diapositive que l'on peut rencontrer :

cours-cnrs-optimisation

Exemple de (morceau de) code que l'on peut rencontrer, pour la mise en pratique :

! ddot = || (A*B)*x || avec A et B matrices et x vecteur

program tp_opt

  real(kind=kind(1.d0)), allocatable    :: a(:,:),b(:,:)
  real(kind=kind(1.d0)), allocatable    :: c(:,:)  ! c = A*B
  real(kind=kind(1.d0)), allocatable    :: x(:)
  real(kind=kind(1.d0))                 :: ddot

  integer                               :: n  ! taille des matrices

  n = 1000
  
  ! initialisation des matrices
  allocate(a(n,n))
  call initA(n,a)
  allocate(b(n,n))
  call initB(n,b)

  ! Multiplication A*B
  allocate (c(n,n))
  call matmul(n,a,b,c)

  ! initialisation de x
  allocate(x(n))
  call initX(n,x)

  ! Produit matrice vecteur: x = C*x
  call matvec(n,c,x)

  ! Calcul de la norme
  call norm(n,x)

end program tp_opt

Bonus : tout est en français. C'est assez rare pour ĂȘtre signalĂ©. Gageons qu'il s'agisse d'un dĂ©but, et que les universitĂ©s françaises suivront ce modĂšle, afin de rendre rĂ©el cette volontĂ© de pouvoir accĂ©der en permanence Ă  des formations et du dĂ©veloppement personnel de qualitĂ©. Sinon nous risquons fort de nous voir chipper tout cela par les universitĂ©s amĂ©ricaines, qui proposent de plus en plus ce type de cours, et de grandes qualitĂ©s

  • # RegardĂ© rapidement

    Posté par  . Évalué à 5.

    J'ai regardé rapidement les différents cours, et il n'y a rien de transcendant (d'un autre coté ça me rassure, je suis pas complÚtement largué).

    Sympa pour un rappel, ou si on veut expliquer le fonctionnement Ă  quelqu'un.

    Par contre je n'ai pas vraiment vu l'aspect HPC.
    Il n'y a pas tous ce qui attrait à la programmation parallÚle et distribué, il n'y a pas d'architecture // et distribué, sur la sauvegardes des calculs, ...

  • # Le CNRS nous parle !

    Posté par  (site web personnel, Mastodon) . Évalué à -4.

  • # Titre

    Posté par  (site web personnel, Mastodon) . Évalué à 3.

    s/cour/cours/
    mĂȘme s'il n'y en avait qu'un seul.

Suivre le flux des commentaires

Note : les commentaires appartiennent Ă  celles et ceux qui les ont postĂ©s. Nous n’en sommes pas responsables.