π
<-

CP5 - Championnat des Pythons : mémoire de travail

CP5 - Championnat des Pythons : mémoire de travail

Unread postby critor » 22 May 2018, 20:54

Championnat des Pythons 2018
Course des Pythons n°5
Mémoire de travail


Bienvenue au grand Championnat des Pythons 2018. Pour la rentrée 2018, trois modèles de calculatrices graphiques autorisées aux examens et concours proposent ou proposeront la programmation en langage Python :
  • NumWorks
  • HP Prime
  • Casio Graph 90+E

Aujourd'hui dans cette cinquième Course des Pythons, voyons ensemble ce que valent ces différentes solutions niveau mémoire de travail, c'est-à-dire l'espace mémoire exploitable pour l'exécution des scripts.

9544Sur NumWorks notre script mem.py nous révèle un espace de travail de 13,3 Kio :
Code: Select all
def mem():
  try:
    l = [0]
    while True:
      try:
        l = l + l[l[0]:]
      except:
        if l[0] < len(l)-1:
          l[0] = len(l)-1
        else:
          print("+", 4*len(l))
          l[0] = 4*len(l) + mem()
          break
  except:
    return 0
  return l[0]

Sur Casio Graph 90+E le résultat du même script mem.py n'a absolument rien à voir, avec 992 Kio.


Enfin sur HP Prime, on dispose de 17,95 Mio d'espace de travail, normalement entièrement utilisables par les scripts Python.

Toutefois, attention au fait que la machine souffre de plusieurs fuites de mémoire, et que la consommation significative de mémoire ne rapprochera que d'une seule chose : du moment où il n'y aura pas d'autre choix que de faire reset.

Image

A bientôt pour une autre Course des Pythons ! ;)
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.3%
 
Posts: 41958
Images: 15681
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: CP5 - Championnat des Pythons : mémoire de travail

Unread postby critor » 28 Oct 2018, 13:17

Mise à jour du script de test de la quantité de mémoire de travail disponible.

Je me conforme aux tailles constatées en Python sur ordi avec la fonction sys.getsizeof() dont nous ne disposons pas sur calculatrice :
  • 64 octets pour un tableau vide
  • 8 octets par nombre entier supplémentaire dans le tableau
Code: Select all
def mem():
  try:
    l=[]
    try:
      l+=[0]
      while True:
        try:
          l=l+l[l[0]:]
        except:
          if l[0]<len(l)-1:
            l[0]=len(l)-1
          else:
            raise(Exception)
    except:
      print("+",len(l))
      return 64+8*len(l)+mem()
  except:
    return 0


Téléchargement direct :

Les estimations sont donc différentes mais normalement plus exactes, et ne changent pas le rapport de force :
  1. HP Prime G2 avec 17,95Mo
    Image
  2. Casio Graph 90+E avec 2,05Mo / 1,95Mio
    Image
  3. calculatrice NumWorks avec 29,86Ko / 29,16Kio
    9871
  4. simulateur NumWorks en ligne avec 14,51Ko / 14,17Kio (mais la différence vient peut-être du fait que je l'ai fait tourner sur une machine 64-bits)
    Image

Le script a été révisé dans le contexte de la 1ère présentation publique du module TI-Python pour TI-83 Premium CE, aux journées APMEP à Bordeaux :
viewtopic.php?t=21871&p=235639#p235639

Il a bien été testé avec le module en question sur le stand de TI, et nous savons où l'insérer dans ce classement. ;)
Mais nous n'avons pas encore eu de réponse à notre demande d'utiliser les informations et photos collectées sur le stand dans des articles publics.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.3%
 
Posts: 41958
Images: 15681
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: CP5 - Championnat des Pythons : mémoire de travail

Unread postby critor » 05 Dec 2018, 14:06

Voilà, je cesse de vous faire languir, voici enfin le classement amélioré des mémoires de travail Python incluant le module de TI à venir : :D
viewtopic.php?f=41&t=22050
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.3%
 
Posts: 41958
Images: 15681
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor


Return to News Divers

Who is online

Users browsing this forum: ClaudeBot [spider] and 8 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
741 utilisateurs:
>706 invités
>26 membres
>9 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)