Aller au contenu principal

5 articles tagués avec « outils »

Voir tous les tags

Accélération des instantanés de tas V8

· 12 minutes de lecture
José Dapena Paz

Cet article de blog a été rédigé par José Dapena Paz (Igalia), avec les contributions de Jason Williams (Bloomberg), Ashley Claymore (Bloomberg), Rob Palmer (Bloomberg), Joyee Cheung (Igalia) et Shu-yu Guo (Google).

Dans cet article sur les instantanés de tas V8, je vais parler de certains problèmes de performance rencontrés par les ingénieurs de Bloomberg et comment nous les avons résolus pour rendre l'analyse mémoire JavaScript plus rapide que jamais.

Le problème

Les ingénieurs de Bloomberg travaillaient sur le diagnostic d'une fuite mémoire dans une application JavaScript. Elle échouait avec des erreurs de type Out-Of-Memory. Pour l'application testée, la limite du tas V8 était configurée autour de 1400 Mo. Normalement, le ramasse-miettes de V8 devrait pouvoir maintenir l'utilisation du tas en dessous de cette limite, de sorte que les échecs indiquent probablement une fuite.

Indicium : outil de traçage du runtime V8

· 8 minutes de lecture
Zeynep Cankara ([@ZeynepCankara](https://twitter.com/ZeynepCankara))

Les trois derniers mois ont été une expérience d'apprentissage extraordinaire pour moi depuis que j'ai rejoint l'équipe V8 (Google Londres) en tant que stagiaire et que j'ai travaillé sur un nouvel outil appelé Indicium.

Cet analyseur système est une interface web unifiée pour tracer, déboguer et analyser les modèles de création et modification des Inline Caches (IC) et des Maps dans des applications réelles.

V8 dispose déjà d'une infrastructure de traçage pour les ICs et les Maps permettant de traiter et analyser les événements IC grâce au IC Explorer et les événements Map grâce au Map Processor. Cependant, les outils précédents ne permettaient pas d'analyser les Maps et ICs de manière holistique, ce qui est maintenant possible avec l'analyseur système.

Qu'y a-t-il dans ce `.wasm`? Présentation : `wasm-decompile`

· 8 minutes de lecture
Wouter van Oortmerssen ([@wvo](https://twitter.com/wvo))

Nous avons un nombre croissant de compilateurs et d'autres outils qui génèrent ou manipulent des fichiers .wasm, et parfois, vous pourriez vouloir jeter un œil à l'intérieur. Peut-être êtes-vous un développeur de cet outil ou, plus directement, vous êtes un programmeur ciblant Wasm et vous vous demandez à quoi ressemble le code généré, pour des raisons de performance ou autres.

En dehors du web : binaires WebAssembly autonomes avec Emscripten

· 15 minutes de lecture
Alon Zakai

Emscripten s'est toujours concentré en priorité sur la compilation pour le web et autres environnements JavaScript comme Node.js. Mais à mesure que WebAssembly commence à être utilisé sans JavaScript, de nouveaux cas d'utilisation apparaissent, et nous avons travaillé sur la prise en charge de l'émission de fichiers Wasm autonomes à partir d'Emscripten, qui ne dépendent pas de l'environnement d'exécution JavaScript d'Emscripten ! Ce post explique pourquoi cela est intéressant.

Emscripten et le backend LLVM WebAssembly

· 14 minutes de lecture
Alon Zakai

WebAssembly est normalement compilé à partir d’un langage source, ce qui signifie que les développeurs ont besoin d’outils pour l’utiliser. C’est pourquoi l’équipe de V8 travaille sur des projets open-source pertinents comme LLVM, Emscripten, Binaryen et WABT. Ce post décrit certains des travaux que nous avons effectués sur Emscripten et LLVM, ce qui permettra bientôt à Emscripten de passer par défaut au backend LLVM WebAssembly — veuillez le tester et signaler tout problème !