Optimisation de code Python : des fractales au pays des serpents

Magazine
Marque
GNU/Linux Magazine
Numéro
179
Mois de parution
février 2015
Domaines


Résumé
Il existe de nombreuses méthodes permettant d'optimiser du code Python. Encore faut-il les connaître, être capable de les mettre en place et estimer les gains qu'elles peuvent apporter...

Il y a quelques mois, je vous parlais déjà d'optimisation dans un cadre plus générique et nous avions pu tester rapidement le module Numba et le compilateur Cython [1]. Je vous propose de revenir sur l'utilisation de ces méthodes que nous élargirons à d'autres techniques telles que le calcul en parallèle ou l'utilisation d'un GPU pour optimiser l'exécution d'un code Python.

1. Le code de test : une fractale

Pour pouvoir effectuer nos tests, il nous faut un programme qui demande un minimum de ressources à la machine et qui soit « parallélisable » (nous reviendrons sur cette notion par la suite). Je cherchais un code possédant ces qualités et qui soit en même temps assez simple à comprendre lorsque j'eus l'idée d'utiliser un ensemble de Mandelbrot : l'algorithme est court, compréhensible, parallélisable et, cerise sur le gâteau, on obtient de très jolies figures ! Si pour vous les fractales n'ont plus de secret, vous pouvez vous rendre directement en section...

Cet article est réservé aux abonnés. Il vous reste 98% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Flutter 2 : l’alternative professionnelle

Magazine
Marque
GNU/Linux Magazine
Numéro
249
Mois de parution
juin 2021
Domaines
Résumé

Le 3 mars 2021, Google annonce Flutter 2 dans le premier événement « Flutter Engage ». La target Web/PWA devient stable et les targets desktop deviennent bêta avec une preview sur stable. Du côté Dart, la null safety devient la norme. Pendant ce temps, « Courses » se structure, adopte MVVM et devient non nullable !

Pas de bras, mais quand même du chocolat : l'ère des assistants vocaux

Magazine
Marque
GNU/Linux Magazine
Numéro
249
Mois de parution
juin 2021
Domaines
Résumé

Nos interactions avec les ordinateurs (et autres smartphones) sont dignes du Moyen Âge. Qu'est-ce qui a réellement changé en la matière, ces 50 dernières années ? Rien : nous avons juste remplacé notre bon vieux clavier mécanique par un clavier virtuel, la belle affaire ! Pourtant, nous pouvons faire mieux, et nous devons faire mieux : bienvenue dans l'ère des assistants vocaux virtuels ! Nous allons découvrir ensemble ce qu'ils sont, et créer notre première application vocale.

Web scraping avec Node.js

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
114
Mois de parution
mai 2021
Domaines
Résumé

Le web scraping, c’est l’activité qui consiste à gratter (to scrap) du code HTML pour en extraire des données exploitables. Node.js se prête particulièrement bien à l’exercice, aussi je vous propose d’apprendre à gratter de la donnée avec ce formidable outil.