recherche
MaisonPériphériques technologiquesIAGagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

Comme nous le savons tous, Python est un langage de programmation facile à apprendre et doté de fonctions puissantes. Il se classe toujours en tête des diverses listes de statistiques d'utilisation des utilisateurs. En conséquence, les chercheurs ont développé divers outils pratiques autour de Python pour mieux servir ce langage.

Le compilateur fait office de traducteur entre les langages de haut niveau et les machines. Différentes versions de compilateurs Python ont été développées Ci-dessous nous vous présenterons un nouveau compilateur Python hautes performances : Codon. Le projet est en ligne depuis seulement quelques jours et a déjà reçu 2,2k étoiles.

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source


Adresse du projet : https://github.com/exaloop/codon

En tant que compilateur Python haute performance, Codon peut compiler du code Python en code machine natif, et non surcharge d'exécution requise. Les accélérations typiques pour Python sont d'environ 10 à 100 fois ou plus sur un seul thread. Les performances de Codon sont généralement comparables à celles du C/C++. Contrairement à Python, Codon prend en charge le multithreading natif, ce qui peut le rendre plusieurs fois plus rapide. Codon est extensible grâce à une infrastructure de plugins, qui permet aux utilisateurs d'incorporer de nouvelles bibliothèques, des optimisations du compilateur et même des mots-clés.

Le framework Codon est entièrement modulaire et extensible, permettant une intégration transparente de nouveaux modules, des optimisations du compilateur, des langages spécifiques à un domaine, etc., avec de nouvelles extensions Codon en cours de développement actif pour plusieurs domaines tels que la bioinformatique et la finance quantitative.

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open sourceCodon Pipeline

Quel est l'effet de ce compilateur si populaire dès sa sortie ? Jetons un coup d'œil à quelques résultats de référence.

Benchmarks

Voici les résultats de la suite de benchmarks Codon, comparant les performances de Python, PyPy, C++ et Codon sur une gamme de tâches et d'applications.

Les benchmarks fonctionnent sur les paramètres suivants :

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

Comparaison de Python, PyPy, Codon

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

Comparaison de Python, PyPy, C++ et Codon




Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

Gagnant 2 000 étoiles, la vitesse est cent fois supérieure et le compilateur Python hautes performances Codon est open source

La comparaison spécifique de plusieurs langages est la suivante :

Codon suit autant que possible la syntaxe, la sémantique et l'API de CPython, mais dans certains cas particuliers, compte tenu Pour des raisons de performances, Codon Il existe quelques différences par rapport à CPython. Par exemple, Codon est un entier de 64 bits et CPython est un entier de largeur arbitraire. En termes de performances, les accélérations CPython sont généralement de 10 à 100 fois.

Bien que Codon fournisse un décorateur JIT similaire à Numba, Codon est généralement un compilateur avancé qui peut compiler des programmes de bout en bout en code natif. Il prend également en charge la compilation d'un ensemble plus large de constructions et de bibliothèques Python.

PyPy vise à être un simple remplacement de CPython, tandis que Codon est différent à quelques endroits. Ces différences se reflètent principalement dans l'élimination du runtime dynamique ou de la machine virtuelle, ce qui entraîne de meilleures performances.

Codon génère généralement le même code qu'un programme équivalent en C ou C++, et peut parfois générer un meilleur code qu'un compilateur C/C++. Il existe de nombreuses raisons, telles qu'une meilleure implémentation du conteneur, le fait que Codon n'utilise pas de fichiers objets et n'intègre pas tout le code de la bibliothèque, ou la non-utilisation des optimisations du compilateur spécifiques à Codon effectuées en C ou C++.

Le processus de compilation de Codon est en fait plus proche du C++ que de Julia. Julia est un langage typé dynamiquement qui effectue une inférence de type à titre d'optimisation, tandis que les types Codon sont vérifiés à l'avance tout au long du programme. Codon tente également de contourner la courbe d'apprentissage d'un nouveau langage en adoptant la syntaxe et la sémantique de Python.

FAQ

Bien que Codon prenne en charge presque toute la syntaxe de Python, il ne s'agit pas d'un simple remplacement et les bases de code volumineuses peuvent nécessiter des modifications pour fonctionner avec le compilateur Codon. Par exemple, certains modules Python n'ont pas encore été implémentés dans Codon et certaines fonctionnalités dynamiques de Python ne sont pas autorisées. Le compilateur Codon génère des messages d'erreur détaillés pour aider à identifier et résoudre tout problème d'incompatibilité. Codon prend en charge l'interopérabilité transparente de Python pour gérer les situations qui nécessitent des bibliothèques ou des dynamiques Python spécifiques.

Je souhaite utiliser Codon, mais j'ai une grande base de code Python et je ne souhaite pas la porter, que dois-je faire ?

Vous pouvez utiliser Codon via le décorateur @codon.jit, qui compilera uniquement les fonctions annotées et gérera automatiquement la conversion des données vers et depuis Codon. Il permet également l'utilisation de modules ou d'extensions spécifiques à Codon, tels que le multithreading.

Dans quelle mesure est-il interopérable avec d'autres langages et frameworks ?

L'interopérabilité est une priorité chez Codon. Nous ne voulons pas utiliser Codon pour empêcher les utilisateurs d'utiliser d'autres excellents frameworks et bibliothèques qui existent. Codon prend en charge une interopérabilité totale avec Python et C/C++.

Codon utilise-t-il la collecte des déchets ?

Oui, Codon utilise le garbage collector Boehm.

Codon ne supporte pas le module Python X ou la fonction Y ?

Bien que Codon couvre un sous-ensemble important de la bibliothèque standard Python, il ne couvre pas encore toutes les fonctions de chaque module. Notez que les fonctions manquantes peuvent toujours être appelées depuis l'importation Python. De nombreuses fonctions dépourvues d'implémentations natives de Codon (telles que les fonctions d'E/S ou liées au système d'exploitation) n'obtiennent généralement pas d'accélérations substantielles grâce à Codon.

Codon n'est pas plus rapide que Python pour mon application ?

Les applications qui passent la plupart de leur temps dans le code de bibliothèque implémenté en C ne verront généralement pas d'améliorations substantielles des performances dans Codon. De même, les applications liées aux E/S ou au réseau connaîtront les mêmes goulots d'étranglement dans Codon.

Codon est-il plus lent que Python pour mon application ?

Si tel est le cas, veuillez signaler que Codon est nettement plus lent que Python au système de suivi des problèmes.

Codon est-il gratuit ?

Codon est toujours gratuit pour une utilisation hors production. Les utilisateurs sont libres d'utiliser Codon pour des applications personnelles, académiques ou autres applications non commerciales.

Codon est-il open source ?

Codon est sous licence Business Source License (BSL), son code source est accessible au public et gratuit pour une utilisation hors production. BSL n'est pas techniquement une licence « open source », même si dans de nombreux cas, vous pouvez toujours traiter Codon comme n'importe quel autre projet open source. Il est important de noter que, selon le BSL, chaque version de Codon passe à une véritable licence open source (en particulier Apache) après 3 ans.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer
Les plus utilisés à 10 graphiques BI - Analytics vidhyaLes plus utilisés à 10 graphiques BI - Analytics vidhyaApr 16, 2025 pm 12:05 PM

Exploitation de la puissance de la visualisation des données avec les graphiques Microsoft Power BI Dans le monde actuel axé sur les données, la communication efficace des informations complexes à un public non technique est cruciale. La visualisation des données comble cet écart, transformant les données brutes i

Systèmes experts en IASystèmes experts en IAApr 16, 2025 pm 12:00 PM

Systèmes experts: une plongée profonde dans le pouvoir de prise de décision de l'IA Imaginez avoir accès à des conseils d'experts sur n'importe quoi, des diagnostics médicaux à la planification financière. C'est le pouvoir des systèmes experts en intelligence artificielle. Ces systèmes imitent le pro

Trois des meilleurs codeurs d'ambiance décomposent cette révolution de l'IA dans le codeTrois des meilleurs codeurs d'ambiance décomposent cette révolution de l'IA dans le codeApr 16, 2025 am 11:58 AM

Tout d'abord, il est évident que cela se produit rapidement. Diverses entreprises parlent des proportions de leur code actuellement écrites par l'IA, et elles augmentent à un clip rapide. Il y a déjà beaucoup de déplacement de l'emploi

Gen-4 de la piste AI: Comment Ai Montage peut-il aller au-delà de l'absurditéGen-4 de la piste AI: Comment Ai Montage peut-il aller au-delà de l'absurditéApr 16, 2025 am 11:45 AM

L'industrie cinématographique, aux côtés de tous les secteurs créatifs, du marketing numérique aux médias sociaux, se dresse à un carrefour technologique. Alors que l'intelligence artificielle commence à remodeler tous les aspects de la narration visuelle et à changer le paysage du divertissement

Comment s'inscrire pendant 5 jours ISRO AI Free Courses? - Analytique VidhyaComment s'inscrire pendant 5 jours ISRO AI Free Courses? - Analytique VidhyaApr 16, 2025 am 11:43 AM

Cours en ligne GRATUIT AI / ML d'ISRO: Une passerelle vers l'innovation technologique géospatiale L'Organisation indienne de recherche spatiale (ISRO), par le biais de son Institut indien de télédétection (IIRS), offre une opportunité fantastique aux étudiants et aux professionnels de

Algorithmes de recherche locaux dans l'IAAlgorithmes de recherche locaux dans l'IAApr 16, 2025 am 11:40 AM

Algorithmes de recherche locaux: un guide complet La planification d'un événement à grande échelle nécessite une distribution efficace de la charge de travail. Lorsque les approches traditionnelles échouent, les algorithmes de recherche locaux offrent une solution puissante. Cet article explore l'escalade et le simul

Openai change de mise au point avec GPT-4.1, priorise le codage et la rentabilitéOpenai change de mise au point avec GPT-4.1, priorise le codage et la rentabilitéApr 16, 2025 am 11:37 AM

La version comprend trois modèles distincts, GPT-4.1, GPT-4.1 Mini et GPT-4.1 Nano, signalant une évolution vers des optimisations spécifiques à la tâche dans le paysage du modèle grand langage. Ces modèles ne remplacent pas immédiatement les interfaces orientées utilisateur comme

L'invite: Chatgpt génère de faux passeportsL'invite: Chatgpt génère de faux passeportsApr 16, 2025 am 11:35 AM

Le géant de la puce Nvidia a déclaré lundi qu'il commencerait à fabriquer des superordinateurs d'IA - des machines qui peuvent traiter de grandes quantités de données et exécuter des algorithmes complexes - entièrement aux États-Unis pour la première fois. L'annonce intervient après le président Trump Si

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

MantisBT

MantisBT

Mantis est un outil Web de suivi des défauts facile à déployer, conçu pour faciliter le suivi des défauts des produits. Cela nécessite PHP, MySQL et un serveur Web. Découvrez nos services de démonstration et d'hébergement.

Adaptateur de serveur SAP NetWeaver pour Eclipse

Adaptateur de serveur SAP NetWeaver pour Eclipse

Intégrez Eclipse au serveur d'applications SAP NetWeaver.

VSCode Windows 64 bits Télécharger

VSCode Windows 64 bits Télécharger

Un éditeur IDE gratuit et puissant lancé par Microsoft

SublimeText3 version anglaise

SublimeText3 version anglaise

Recommandé : version Win, prend en charge les invites de code !

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Puissant environnement de développement intégré PHP