Identification de la formation
Code de formation: 
7689
Domaine - Formacode: 
information scientifique et technique

Python offre un environnement riche et eteacute;volutif pour traiter des donneteacute;es. Malheureusement, les utilisateurs peuvent assez rapidement etecirc;tre confronteteacute;s etagrave; des pertes de performance (#FortranNostalgie). Les traitements sont ralentis et le travail devient laborieux :

Python is primarily slow because of its dynamic nature and versatility. It can be used as a tool for all sorts of problems, where more optimised and faster alternatives are probably available. There are, however, ways of optimising your Python applications by leveraging async, understanding the profiling tools, and consider using multiple-interpreters.

(Shaw 2018)

En recourant aux outils et meteacute;thodes adapteteacute;s, Python peut offrir des vitesses det#39;exeteacute;cution net#39;ayant quasiment rien etagrave; envier etagrave; des langages compileteacute;s.

Mais une optimisation non maeticirc;triseteacute;e peut drainer son lot de conseteacute;quences malheureuses.

Diagnostiquer preteacute;ciseteacute;ment les parties du code appelant des ameteacute;liorations gretacirc;ce aux meteacute;thodes de profiling, paralleteacute;liser/distribuer un traitement sans recourir etagrave; des bibliothetegrave;ques externes, constituent autant de leviers au service de meilleures performances.

La formation metecirc;le apports meteacute;thodologiques et TP.

Intervenant : ingeteacute;nieur de recherche en calcul scientifique, Christophe Halgand exerce ses missions etagrave; let#39;Institut de Neurosciences Cognitives et Inteteacute;gratives det#39;Aquitaine (Incia). C. Halgand set#39;inteteacute;resse particulietegrave;rement etagrave; la combinaison des competeacute;tences en eteacute;lectrophysiologie, eteacute;lectronique, robotique et le traitement du signal pour travailler sur le deteacute;veloppement des neuro-prothetegrave;ses et exosquelettes.

Sources, outils

etquot;For applications where startup time is unimportant and the code would benefit a JIT, consider PyPy.

For parts of your code where performance is critical and you have more statically-typed variables, consider using Cython.etquot; (Shaw 2018)

---

Dupreteacute;, Xavier. 2018. etlsquo;Paralleteacute;lisation etmdash; Programmation Avec Le Langage Pythonetrsquo;. TeachPy. 5 November 2018. http://www.xavierdupre.fr/app/teachpyx/helpsphinx/c_parallelisation/inde....

Knuth, Donald Ervin. 1992. Literate Programming. CSLI Lecture Notes No. 27. [Stanford, Calif.]: Center for the Study of Language and Information.

Knuth, Donald Ervin. 2001. Things a Computer Scientist Rarely Talks About. CSLI Lecture Notes No. 136. Stanford, Calif.: CSLI Publications.

Python Software Foundation. 2018. etlsquo;The Python Standard Library etmdash; Python 3.7.1 Documentationetrsquo;. 2018. https://docs.python.org/3/library/index.html.

Shaw, Anthony. 2018. etlsquo;Why Is Python so Slow?etrsquo; Hacker Noon. 16 July 2018. https://hackernoon.com/why-is-python-so-slow-e5074b6fe55b.

VanderPlas, Jake. 2018.

Contenus pédagogiques
Objectifs: 
Choisir le type de base ad hoc pour let#39;utilisation souhaiteteacute;e (variables, donneteacute;es, etc.) Mettre en etoelig;uvre une strateteacute;gie det#39;optimisation maeticirc;triseteacute;e : diagnostiquer preteacute;ciseteacute;ment les parties du code etagrave; ameteacute;liorer, hieteacute;rarchiser les besoins, concevoir une strateteacute;gie sur le long terme Le stage net#39;est pas adapteteacute; aux personnes qui ne deteacute;veloppent pas en Python. Avoir des notions en orienteteacute; objet est un plus.
Public visé: 
tout public
Résultats attendus de la formation: 
Choisir le type de base ad hoc pour let#39;utilisation souhaiteteacute;e (variables, donneteacute;es, etc.) Mettre en etoelig;uvre une strateteacute;gie det#39;optimisation maeticirc;triseteacute;e : diagnostiquer preteacute;ciseteacute;ment les parties du code etagrave; ameteacute;liorer, hieteacute;rarchiser les besoins, concevoir une strateteacute;gie sur le long terme Le stage net#39;est pas adapteteacute; aux personnes qui ne deteacute;veloppent pas en Python. Avoir des notions en orienteteacute; objet est un plus.
Modalités d'alternance: 
pas d'alternance
Conditions spécifiques: 
Développer en Python, avoir des notions d'orienté objet
Déroulement du stage
Modalités d'enseignement: 
Formation entièrement présentielle
Durée (heures): 
6 heures
Période de formation: 
Je, 07/03/2019
Inscription
Période d`inscription: 
Je, 07/03/2019 - Me, 06/03/2019
Prise en charge des frais de formation possible: 
Oui
Contact de l'action de formation: 

URFIST de Bordeaux (4 avenue Denis Diderot 33607 PESSAC)

Nom: 
URFIST de Bordeaux
Adresse: 
4 avenue Denis Diderot
Code postal: 
33607
Ville: 
PESSAC
Téléphone fixe: 
05 56 84 29 19
Fax: 
05 56 84 86 96
Courriel: 
urfist@u-bordeaux.fr
Web: 
weburfist.univ-bordeaux.fr/
Région: 
Aquitaine
Organisme formateur: 
URFIST de Bordeaux
Organisme de formation: 
URFIST de Bordeaux
Domaine - NSF: 
325
Domaine - Rome: 
32214
Niveau à l'entrée en formation: 
Information non communiquée
Niveau à l'entrée en formation obligatoire: 
Non
Formation certifiante: 
Non
Rythme de la formation: 
Temps plein
Modalités d'entrée sortie: 
Entrées / sorties à dates fixes
Langue utilisée lors de la formation: 
Français