IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

L'espace mémoire (nombre de bits) utilisé par un programme (ou fonction) en python


Sujet :

Python

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Février 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2015
    Messages : 3
    Points : 5
    Points
    5
    Par défaut L'espace mémoire (nombre de bits) utilisé par un programme (ou fonction) en python
    Bonjour

    pour comparer deux fonctions f1 et f2 selon l'espace mémoire utilisé, je vous demande si il y a une fonction qui fais ce calcul.

    f1 et f2 deux fonctions calculent le factoriel de n

    #à l'aide des boucles
    def f1(n):
    ......f=1
    ......for i in range(1,n+1):
    ............f=f*i
    ......return f

    #à l'aide de la récursivité
    def f2(n):
    ......if (n==0):return 1
    ......else: return n*f(n-1)

    je connais seulement getsizeof(x) qui retourne la taille en bits de la variable x

    merci de votre aide.

  2. #2
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 035
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 035
    Points : 8 400
    Points
    8 400
    Par défaut
    salut,

    avec python2 j'aurais dit que la fonction récursive prenait moins de place que l'itérative, à cause du range qui allouait en mémoire tout ce dont il a besoin en une fois tandis que la fonction récursive en gros ne fera qu'empiler une adresse de retour sur la stack (schématiquement), mais je crois me souvenir que depuis python3 range est un générateur, du coup la fonction itérative ne prend quasi rien comme place, uniquement l'allocation des quelques variables

    en revanche si tu parles de la taille du bytecode de la fonction elle-même en mémoire, je suis pas certain que ce soit réellement pertinent à mesurer

    coté technique, j'imagine que ça doit pouvoir se mesurer différemment selon l'OS, sous Linux je pense que j'irais taper dans /proc

    Edit: une méthode peut-être intéressante ici : http://stackoverflow.com/questions/5...sage-in-python

Discussions similaires

  1. Comment libérer l'éspace mémoire utilisé par Acrobat Reader?
    Par Matt2094 dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 28/03/2006, 17h48
  2. Trouvé la mémoire utilisé par un processus (selon sont pid)
    Par Coussati dans le forum API, COM et SDKs
    Réponses: 1
    Dernier message: 21/02/2006, 02h02
  3. Espace utilisé par une colonne de type TEXT
    Par efficks dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 07/02/2006, 16h34
  4. Trouver le nombre de handle utiliser par un programme
    Par chuckboy dans le forum Windows
    Réponses: 1
    Dernier message: 19/12/2005, 23h38
  5. [JVM] Connaitre la taille mémoire utilisé par les dif classe
    Par sur_uix dans le forum Général Java
    Réponses: 4
    Dernier message: 18/09/2003, 09h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo