Accessing converted C++ class from python is 10-20 times slower

Ouverte
#356 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
25/100
Type d'issue
Bug
Clarté
À clarifier
Activité
À l'abandon
Stack technique
cpp, python
Domaine
backend, performance

Piste de recherche

L’issue ne nomme aucun fichier ni test du dépôt. Commencez par reproduire la comparaison entre l’accès natif aux champs Python et l’accès au champ d’une classe C++ convertie, puis suivez le chemin d’accès aux attributs de Boost.Python ; le travail est terminé lorsque la surcharge est expliquée et qu’une amélioration validée est identifiée.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

What is boost python actually doing when accessing a C++ class field from python. I could live with the overhead from calling functions but just accessing int/bool fields is 10-20 slower than a native python class.

Tested this by making two identical classes one in native python one in C++ and accessing a single integer field. Access in the C++ class seems to be 10 times slower. Can I do anything to improve this ?

Langage dominant
C++
Étoiles
537
Forks
223
Merge moyen
11 h 22 min
PR mergées (30 j)
2

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de boostorg/python

Toutes les issues de boostorg/python

Issues similaires

Plus d'issues C++

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.