π
<-
Chat plein-écran
[^]

QCC 2019 épisode 6 : performances & Python

Re: QCC 2019 épisode 6 : performances & Python

Unread postby parisse » 08 Sep 2019, 08:27

Voici un programme implementant le test de primalite avec test modulo 6:
Code: Select all
def isprimep(x):
    if x==2 or x==3 or x==5:
        return True
    if int(x)!=x or x%2==0 or x%3==0 or x%5==0:
        return False
    for k in range(6,x,6):
        if k*k>x:
            return True
        if x % (k+1) == 0 or x%(k+5)==0:
            return False
    return False

Sur l'emulateur Mac de la Graph 90+e,
Code: Select all
isprimep(10000019)=>,

renvoie un temps d'execution de 0.49 secondes, donc sur une vraie Graph 90+e non overclockee, cela devrait prendre environ la moitie, i.e. on passe de l'avant-derniere place a 24secondes a la premiere place avec 100 fois moins de temps d'execution.
Bien sur les autres modeles iront aussi beaucoup plus vite avec un algorithme plus efficace. Mais la morale de l'histoire c'est quand meme qu'il faut relativiser ce classement de performances,
ce qui compte avant tout c'est de choisir un algorithme efficace ou de pouvoir utiliser un algorithme efficace deja programme
, et dans le domaine de l'arithmetique, KhiCAS est bien meilleur que les implementations Python natives.
User avatar
parisseVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 69.9%
 
Posts: 1704
Joined: 13 Dec 2013, 16:35
Gender: Not specified

Re: QCC 2019 épisode 6 : performances & Python

Unread postby critor » 08 Sep 2019, 14:43

Comme déjà dit une année précédente, les performances ne comptent vraiment pour pas grand chose dans le classement QCC.
Pour la grande majorité des calculs/algos de lycée la calculatrice fournit la réponse avant même que l'utilisateur ait le temps de relâcher la touche de validation, donc il est peu pertinent de discriminer là-dessus.

Et de toutes façons, si je mets KhiCAS au classement QCC 2019 en cours de rédaction, ce sera en bonus et donc pour appuyer sur ce qu'il apporte/ajoute. Pas ce que j'estimerais qu'il remplace en moins bien. :)

Par contre, je trouve qu'il reste pertinent d'informer sur les extrêmes et donc ici notamment sur les performances remarquablement désastreuses de la Casio fx-CP400+E, avec plusieurs petits algos de BAC qui mettent des minutes à mouliner la réponse quand tous les autres modèles ont terminé depuis longtemps.
Et le pire c'est que le moteur de calcul fx-CP400+E ne travaille que sur des flottants de 31 bits significatifs. Qu'est-ce que ça aurait été avec 40 bits significatifs comme sur les TI-82/83/84 et Casio Graph...
Image
User avatar
critorAdmin.
Niveau 18: DC (Deus ex Calculatorum)
Niveau 18: DC (Deus ex Calculatorum)
Level up: 95.2%
 
Posts: 32844
Images: 8599
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Re: QCC 2019 épisode 6 : performances & Python

Unread postby parisse » 08 Sep 2019, 15:18

critor wrote:Comme déjà dit une année précédente, les performances ne comptent vraiment pour pas grand chose dans le classement QCC.
Pour la grande majorité des calculs/algos de lycée la calculatrice fournir la réponse avant même que l'utilisateur ait le temps de relâcher la touche de validation, donc il est peu pertinent de discriminer là-dessus..

Je suis complement d'accord, les performances brutes ne seront pas tres importantes au lycee. Mais il y a quand meme un topic la-dessus et les lecteurs, en voyant le classement et les temps affiches pour KhiCAS sur le test perfomances en entiers avec votre programme, risquent d'en tirer une mauvaise impression et du coup pourraient ne meme pas l'essayer. Je testerai demain avec une vraie calculatrice le programme isprimep que j'ai donne ci-dessus (celui modulo 6), je pense que le rapport des temps de calcul entre l'interpreteur KhiCAS et l'interpreteur Python natif ne doit pas etre aussi grand qu'avec le votre et qu'il est plus representatif des performances a attendre en arithmetique entiere. Sur PC j'observe en general des rapports proche de 4, alors qu'ici on est a 20... Or un rapport 4, je ne pense pas que ca derange grand monde, surtout si on y gagne en confort (debugger/editeur/etendue du catalogue de commandes integrees).
User avatar
parisseVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 69.9%
 
Posts: 1704
Joined: 13 Dec 2013, 16:35
Gender: Not specified

Re: QCC 2019 épisode 6 : performances & Python

Unread postby parisse » 08 Sep 2019, 15:29

Sur l'emulateur casio, j'observe un rapport 6 environ pour isprimep(10**10+19) (KhiCAS 31s vs microPython 5s).
La commande builtin de KhiCAS met quant a elle 0.7s.
User avatar
parisseVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 69.9%
 
Posts: 1704
Joined: 13 Dec 2013, 16:35
Gender: Not specified

Re: QCC 2019 épisode 6 : performances & Python

Unread postby cent20 » 08 Sep 2019, 19:46

≈798,18s : Esquisse GCEXFR / Lexibook GC3000FR (non programmable, estimation relative par comparaison des performances en tracé de graphes avec le modèle le plus proche technologiquement, la TI-82 Advanced)


Quand on lit ceci on pourrait presque croire qu’il suffit d’attendre 13 minutes pour avoir un résultat, 🙈
Alors que non, en fait vous n’aurez aucun résultat, ni dans 13 minutes ni jamais en fait...
Mais si vous ne nous croyez pas, commencez par attendre 13 minutes après avoir soigneusement recopié le script à l’encre rose au dos de la calculatrice.
User avatar
cent20Premium
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Level up: 25%
 
Posts: 26
Joined: 17 May 2012, 09:49
Location: Avignon
Gender: Male
Calculator(s):

Re: QCC 2019 épisode 6 : performances & Python

Unread postby critor » 08 Sep 2019, 19:53

cent20 wrote:Mais si vous ne nous croyez pas, commencez par attendre 13 minutes après avoir soigneusement recopié le script à l’encre rose au dos de la calculatrice.

En effet ce serait une belle innovation, la saisie de programmes par simple transmission digitale au dos de la calculatrice; surtout pour des machines que l'on tient souvent dans la main en cours d'utilisation.

Faut envoyer ton idée à Lexibook : :troll:
Image
User avatar
critorAdmin.
Niveau 18: DC (Deus ex Calculatorum)
Niveau 18: DC (Deus ex Calculatorum)
Level up: 95.2%
 
Posts: 32844
Images: 8599
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Re: QCC 2019 épisode 6 : performances & Python

Unread postby cent20 » 08 Sep 2019, 20:02

Je l’aurais fait avec plaisir mais je n’ai pas de stylo à encre rose. Avec regrets, je passe mon tour...
User avatar
cent20Premium
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Level up: 25%
 
Posts: 26
Joined: 17 May 2012, 09:49
Location: Avignon
Gender: Male
Calculator(s):

Re: QCC 2019 épisode 6 : performances & Python

Unread postby critor » 08 Sep 2019, 20:05

Et moi je manque de place dans les 3 lignes qu'ils proposent pour leur dire tout ce que je pense de leur produit aussi exceptionnel. :troll:
Sérieusement, je n'ai pas eu la distinction d'avoir un produit ne serait-ce que comparable dans les années 1990.
Image
User avatar
critorAdmin.
Niveau 18: DC (Deus ex Calculatorum)
Niveau 18: DC (Deus ex Calculatorum)
Level up: 95.2%
 
Posts: 32844
Images: 8599
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Online

Re: QCC 2019 épisode 6 : performances & Python

Unread postby DJ Omnimaga » 09 Sep 2019, 00:04

LOL @ fx-cp400
User avatar
DJ OmnimagaPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 80.4%
 
Posts: 343
Images: 0
Joined: 21 Feb 2012, 12:04
Location: Quebec, Canada
Gender: Male
Calculator(s):
Class: Diplômé Secondaire (11ème année scolaire terminé)
YouTube: DJOmnimaga
Twitter: DJOmnimaga
Facebook: DJOmnimaga.Music

Re: QCC 2019 épisode 6 : performances & Python

Unread postby parisse » 09 Sep 2019, 07:38

@critor: je regarde les benchmarks de la fonction seuil en "mode exact", et je trouve que ca meriterait un commentaire. En effet, les lecteurs risquent de croire que l'evaluation est toujours faite avec des rationnels, alors que ca n'est evidemment pas le cas pour tous les modeles. Comparer la HP Prime ou la TI Nspire ou la Casio Classpad qui calculent avec des rationnels avec la Numworks ou les Casio (ou probablement les TI83) qui calculent en flottants risque de tromper le lecteur non averti. Et il importe de preciser que microPython fait aussi ce calcul avec des flottants.
User avatar
parisseVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 69.9%
 
Posts: 1704
Joined: 13 Dec 2013, 16:35
Gender: Not specified

PreviousNext

Return to News Divers

Who is online

Users browsing this forum: No registered users and 7 guests

-
Search
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
1
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...

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 
-
Stats.
430 utilisateurs:
>403 invités
>22 membres
>5 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)