Vue lecture

Catherine O’Hara, star de Beetlejuice, décède à [Âge]

Je me souviens de la première fois que j’ai vu Catherine O’Hara à l’écran. Ce n’était ni Beetlejuice ni Maman, j’ai raté l’avion !, mais un petit rôle dans une comédie oubliée. Pourtant, même à ce moment-là, sa présence était indéniable, une étincelle de génie comique qui laissait présager l’incroyable carrière à venir. L’annonce de […]

Le post Catherine O’Hara, star de Beetlejuice, décède à [Âge] est apparu en premier sur Moyens I/O.

  •  

Photo de la semaine : cet éclair géant qui jaillit vers l’espace depuis la Terre est à couper le souffle

Les éclairs frappent généralement la Terre. Mais certains qui s’échappent parfois vers l’espace. Des jets bleus comme presque seuls les astronautes de la Station spatiale internationale peuvent en voir. Les secrets qu’ils cachent sont aussi importants à percer que leurs images sont...

  •  

Obsolescence programmée ? Ce simple geste que vous ne faites jamais détruit vos machines

Vos appareils électroménagers tombent-ils vraiment en panne par la faute des fabricants ? Un expert en réparation, fort de vingt-cinq années d'expérience, révèle que nos habitudes quotidiennes détruisent nos équipements bien plus sûrement qu'une quelconque obsolescence planifiée. Une révélation...

  •  

Windows 11 : comment accélérer les transferts de fichiers sur votre PC ?

Windows 11 et le stockageLes transferts de fichiers trop lents sur Windows 11 ne sont pas une fatalité. Stockage, ports USB, paramètres système et outils intégrés peuvent faire une énorme différence. Voici comment gagner de précieuses minutes au quotidien.

Cet article Windows 11 : comment accélérer les transferts de fichiers sur votre PC ? a été publié en premier par GinjFo.

  •  

Un simple test de vision pourrait prédire une démence… plus d’une décennie avant les symptômes

Une découverte majeure dans le domaine de la santé mentale bouleverse le monde médical. Des chercheurs ont mis en lumière un lien étonnant entre notre vision et la démence. Cette étude révolutionnaire pourrait bien changer la donne dans le diagnostic précoce de cette maladie redoutée. Mais...

  •  

Chauffage : la pompe à chaleur de fenêtre est l’innovation star de l’hiver, c’est un carton à New York

Midea Pompe Chaleur Fenetre Hiver

Un an après Gradient, le géant chinois de l’électroménager Midea commercialise sa première pompe à chaleur de fenêtre. En plus d’une installation en moins d’une heure, cette alternative au radiateur et au chauffage au fioul/gaz plaît outre-Atlantique, où l’architecture des immeubles est propice au système.

  •  

Bato.to mis hors ligne : le mastodonte du manga pirate démantelé, la riposte anti-piratage change d’échelle

La plateforme Bato.to, longtemps considérée comme l’un des plus gros carrefours de lecture illégale de mangas, manhwas et webtoons, n’est plus accessible. Sa disparition marque un nouvel épisode majeur dans l’offensive menée par les ayants droit contre les scans et traductions non autorisées, avec une particularité : l’affaire …

Lire la suite

Aimez KultureGeek sur Facebook, et suivez-nous sur Twitter

N'oubliez pas de télécharger notre Application gratuite iAddict pour iPhone et iPad (lien App Store)


L’article Bato.to mis hors ligne : le mastodonte du manga pirate démantelé, la riposte anti-piratage change d’échelle est apparu en premier sur KultureGeek.

  •  

Profileur mémoire MALT 1.6.0 et support de Python

MALT c'est quoi ?

L'optimisation est une activité connue de bien des développeurs, fouiller, chercher dans son code, pour, peut être, gagner un peu de performance (beaucoup, parfois). Dans cette tâche ardue, face à des codes grandissants, massifs, utilisant de nombreuses bibliothèques externes, un outil central dans ce travail de fourmi : le profileur.

Le profileur fait partie des outils importants pour le développeur qui se soucie des ressources qu'il utilise. Il lui permet de chercher les points chauds dans son code, comprendre le cout de chaque fonction, chaque ligne implémentée. Bien des outils s'intéressent à une chose : bien utiliser votre processeur.

Mais que se passe-t-il si vous rencontrez des difficultés avec l'utilisation de votre mémoire ? Si vous pensez mal utiliser la fonction malloc() du C ou l'opérateur new du C++ ? Si vous avez oublié qu'une de vos variables globales occupe 10 Go (surtout en Fortran) ?

Publié il y a quelques années MALT (licence CeCILL-C) permet de répondre à la question en cherchant toutes les allocations mémoires faites par votre code. Cet outil avait fait l'objet d'un article sur LinuxFR en 2018 lors de sa mise en open source : Profileurs mémoire MALT et NUMAPROF.

Versions 1.6.0

Avancées

Depuis, cet outil fait son chemin avec l'ajout du support de Rust ainsi que nombreuses corrections et ajouts tels que la possibilité de dumper le profile mémoire juste avant que le système ne soit plein.

malt -o dump:on-sys-full-at=80% -o watch-dog=true ./mon_programme

# également :
#  -o dump:on-app-using-rss=10G
#  -o dump:on-app-using-virt=80%
#  -o dump:on-app-using-req=500M

La possibilité de suivre les appels à mmap, mremap, munmap si vous les appelez directement dans votre code au lieu de laisser malloc faire son travail.

Support de python

MALT a initialement été développé dans le contexte du calcul à haute performance — HPC (High Performance Computing) donc surtout pour le C / C++ / Fortran / Rust.

Dans la communauté scientifique, nous voyons dans les laboratoires de plus en plus fleurir l'usage d'un langage à priori bien éloigné de nos prérogatives de performances : Python.

Dans un cadre de calcul scientifique, il est souvent utilisé plutôt comme un wrapper permettant d'appeler et d'orchestrer des bibliothèques en C /C++ / Fortran, elles, performantes. Quoi que l'usage amène aussi à l'écrire de certaines parties du code en Python grâce à Numpy ou Numba pour accéléré la partie calcule sur des tableaux ou autres frameworks d'exploitation des GPU.

La version 1.6.0 de MALT vient d'ajouter le support (encore quelque peu expérimental) natif de Python permettant d'analyser un code pur python ou mix Python / C / C++…. Il s'agit pour l'instant de la première version avec ce support, il reste donc du travail.

Sont supportés les versions Python supérieures à 3.11 ainsi que les environnements Conda / Anaconda / Venv. À l'heure de rédaction de cet article, cela comprend les versions 3.11 à 3.14.

MALT étant orienté C / C++, il ne supporte que Linux comme système d'exploitation. (NdM: la causalité évoquée ici devrait faire réagir des développeurs d'autres systèmes libres notamment :))

Utilisation sur Python

Si la commande malt fonctionne parfaitement, il est recommandé d'utiliser le wrapper malt-python qui adapte quelques configurations spécifiques à Python non encore automatiques.

malt-python ./script.py

# équivalent à 
malt --profile python-default ./script.py

# liste des profiles
malt --profile help

# Afficher le profile
malt-webview ./malt-script-py-6889.json

Profilage rapide

Notons que l'overhead de MALT est important en Python du fait du large nombre d'allocations générées par ce langage et de la méthode de résolution des piles d'appels pour retrouver les lignes dans votre code. Ces détails d'analyse peuvent être désactivés via :

# Désactivé complète de l'analyse des piles
malt-python -p python-no-stack ./my_script.py

# Analyse des piles par "sampling"
malt-python -p python-sampling ./my_script.py

Nouvelle interface

La version 1.6.0 arrive également avec une nouvelle interface graphique avec un code remis à jour
par rapport à sa version originale vieillissante.

Capture annotation python

Profil statique

Pour ceux qui voudraient échanger les profils avec d'autres sur d'autres OS, il est possible depuis la 1.6.0 de générer une version statique des pages de l'interface (hors annotation des sources et arbre d'appel navigable) via :

# Toues les pages possible en statique
malt-webview -static ./report malt-progr-123456.json

# Seulement la page de résumé.
malt-webview -static-summary ./report malt-progr-123456.json

Installation

MALT n'est pas encore disponible dans les distributions classiques, vous devez donc le compiler et l'installer à la main. Le nombre réduit de dépendances obligatoires en fait un outil relativement facile à installer.

On trouvera la procédure dans la documentation du projet.

Documentation

La documentation a été complètement ré-écrite et disponible sur le site officiel : documentation.

Outils similaires pour Python

Découvrir un outil est aussi l'occasion d'en découvrir d'autres. Restons dans le monde du Python, si MALT ne vous convient pas vous trouverez peut-être votre bonheur avec les outils suivants et complémentaires à MALT et eux totalement dédiés au Python toujours pour la mémoire :

  • Memray (Apache Public License 2)
  • Scalene (Apache Public License 2)

MALT se positionne par rapport aux deux présentés en apportant une analyse fine en annotant tout le source code de l'application. Il offre également une analyse des variables globales et TLS coté C/C++/Fortran/Rust.

Commentaires : voir le flux Atom ouvrir dans le navigateur

  •  

Robotaxis d’Elon Musk : Où sont-ils ? Le battage médiatique de Tesla face à la réalité

Si vous êtes à Austin et que vous essayez de monter dans un robot-taxi Tesla véritablement sans conducteur, vous pourriez vous lancer dans une chasse à l’oie sauvage. Imaginez l’anticipation, l’application ouverte, l’emplacement défini, prêt à vivre l’avenir du transport. Puis, course après course, vous trouvez un superviseur agrippant le volant, brisant l’illusion de l’autonomie. […]

Le post Robotaxis d’Elon Musk : Où sont-ils ? Le battage médiatique de Tesla face à la réalité est apparu en premier sur Moyens I/O.

  •  
❌