π
<-
Chat plein-écran
[^]

TI-83 Premium CE EDITION PYTHON version 5.3.6

:32ti73: :32ti73e: :32ti73e2: :32ti76f: :32ti80: :32ti81: :32ti82: :32ti85: :32ti86: :32ti82s: :32ti82sf: :32ti82sfn: :32ti83: :32ti83p: :32ti83pb: :32ti83pr: :32ti83pfr: :32ti83pse: :32ti84p: :32ti84pse: :32ti84ppse: :32ti84pfr: :32ti84pcse: :32ti83pfrusb: :32ti82p: :32ti82a: :32ti84pce: :32ti83pce:

Re: TI-83 Premium CE EDITION PYTHON version 5.3.6

Message non lude Adriweb » 03 Sep 2019, 18:20

Ca y est j'ai réparé le LLVM sur le PB :P

Tu peux retenter en faisant clean puis ceci (puis download, puis teste) :



En vrai je sais pas si ca va changer grand chose vu que le code est simple, mais sait-on jamais :)

Edit: mais en fait dans ton code, non, LLVM ne supporte pas quelque chose qui s'y passe (c'est un gros projet en WIP depuis plusieurs années, peu de temps y est passé dernièrement, un jour ca sera amélioré/fini :P)
Edit2: en enlevant le floor(), ça passe.
Edit3: ouai avec LLVM c'est instantané... il y a de l'optimisation dans l'air.
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: TI-83 Premium CE EDITION PYTHON version 5.3.6

Message non lude emilechombier » 03 Sep 2019, 20:17

tu es sûr qui a pas un bug dans le compilateur LLVM?
Ca me fait 10 millions d'itérations en 0 secondes :#fou#: :~o :#fou#: alors qu'en passant par le ZDS ça prend 25 secondes, ce qui est plus plausible...
à moins que tu aies trouvé un moyen de faire des calculs en supraconductivité sur Ti83 par voie logicielle ...
Avatar de l’utilisateur
emilechombier
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 8.6%
 
Messages: 51
Inscription: 01 Sep 2019, 17:29
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: TI-83 Premium CE EDITION PYTHON version 5.3.6

Message non lude Adriweb » 04 Sep 2019, 05:10

Probablement parce que LLVM détecte que la boucle est inutile pour le reste du programme, donc il optimise ca en l'enlevant, tout simplement. On peut le forcer à ne pas optimiser ce bout la si on veut vraiment.

ZDS n'est pas très doué pour les optimisations, malheureusement, mais est plus "fini" en terme de support.

Le fork de LLVM en question : https://github.com/jacobly0/llvm-z80
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: TI-83 Premium CE EDITION PYTHON version 5.3.6

Message non lude emilechombier » 04 Sep 2019, 07:08

... et il pousse même le luxe à incrémeter le compteur d'un coup!: ce qui expliquerait que quand je fais afficher le nombre de tours à la fin il m'indique bien 10 millions d'itérations en zéro secondes ! (c'est un ptit tricheur celui-là ! :D)
En revanche quand c'est optimisé avec LZD il m'indique un nombre farfelu (3 millions .. etc.) un problème d'adressage mémoire? bref peu importe

"On peut le forcer à ne pas optimiser ce bout la si on veut vraiment."

La doc indique plein de transformations possibles :http://llvm.org/docs/Passes.html
La mienne devrait être celle-là :
-loop-deletion: Delete dead loops
This file implements the Dead Loop Deletion Pass. This pass is responsible for eliminating loops with non-infinite computable trip counts that have no side effects or volatile instructions, and do not contribute to the computation of the function’s return value.

Sais-tu comment peut-on personnaliser la commande avec PB ?
Avatar de l’utilisateur
emilechombier
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 8.6%
 
Messages: 51
Inscription: 01 Sep 2019, 17:29
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: TI-83 Premium CE EDITION PYTHON version 5.3.6

Message non lude Adriweb » 04 Sep 2019, 12:41

Oui et non, pas directement. Mais bon, on peut jouer avec l'attribut "volatile" sur l'index de la boucle, par exemple.
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: TI-83 Premium CE EDITION PYTHON version 5.3.6

Message non lude emilechombier » 04 Sep 2019, 13:51

je ne suis pas assez expert pour gérer ce qu'est cet attribut "volatile" .
J'ai recommencé en "remplissant la boucle" en affichant le compteur et j'ai mis 2 boucles imbriquées de 100 tours (donc 10000 tours).
Cette fois ça fonctionne, LLVM ne saccage plus mes boucles! et c'est plus près d'une "expérience utilisateur" normale.
https://tiplanet.org/pb/?id=229901_1567 ... 86bf32715a
LZD me donne 43 secondes et une taille de 476 o. et IDEM pour LLVM 43 secondes aussi... mais le prog est (un peu) plus grand avec 505 o.
Donc apparemment LLVM n'est pas si miraculeux que ça dans le cas de petits programmes simples....
Je vais refaire mon test sur TiBasic et Python avec ce protocole et je vais essayer de m'y coller en assembleur ça me fera un bon exercice de départ pour apprendre.
Allez je vous laisse tranquille, ça commence à faire troll :troll:
Avatar de l’utilisateur
emilechombier
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 8.6%
 
Messages: 51
Inscription: 01 Sep 2019, 17:29
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: TI-83 Premium CE EDITION PYTHON version 5.3.6

Message non lude Adriweb » 04 Sep 2019, 14:12

ZDS (et non pas LZD) tu veux dire ? :P

Oui, pour des trucs triviaux, a partir d'un moment ca va être difficile de mesurer des différences.
Tu peux voir toi même la comparaison de l'assembleur généré (avec le choix du bouton "Diff ASM..."

Par contre dans les options du projet, tu peux choisir d'optimiser pour la taille, ou pour la performance. Et pareil pour LLVM mais ca se fait à la main dans le champ des options (-O0, -O3, -Os, -Oz... cf. la doc).
En tentant d'optimiser pour la taille, j'ai moins de 30 octets de différences entre les 2 compilateurs. (Mais sur des plus gros programmes, la différrence est nette, et qand on reste dans les limites de ce que LLVM est pour le moment capable de gérer, il est infiniment mieux).
En optimisant pour privilégier la vitesse, LLVM inline (il en est capable, en tout cas, et le fait des que c'est mieux) beaucoup de choses, c'est à dire que certains contenus de fonctions peuvent se retrouvés directement à l'intérieur d'autres bouts de code, quand la performance en sera affectée positivement pour une raison ou pour une autre, meme si c'est plus gros.

Toujours est-il que ZDS est limité à du C ANSI (C89) et produit de temps en temps du code invalide et crashe aussi parfois. LLVM, parmi le subset supporté (oui, c'est contraignant aussi, ce n'est pas un projet terminé....), produit du code largement mieux.
Et puis tu peux faire du C99, C11, C++17 meme si tu veux :P Exemple ici avec une classe C++ de Point 2D et dans le main je vais un calcul simple avec 2 instances : https://tiplanet.org/pb/?id=1381_149565 ... =Point.cpp

Par "volatile" sinon, c'était juste une question de mettre "volatile int toto = 1;" au lieu de "int toto = 1;".

Je dois avoir des programmes du type fractales etc où l'on voit mieux la différence de performance entre le code généré par LLVM et celui de ZDS...
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: TI-83 Premium CE EDITION PYTHON version 5.3.6

Message non lude Chilperic99 » 12 Sep 2019, 22:46

grosged a écrit:Salut,
Je viens d'acheter une TI-83 Premium CE EDITION PYTHON, apparemment en version 5.3.6 (car le BOOT Code est en version 5.3.6.0017 , et le BASE Code en 5.3.6.0018)

Et quand j'essaye de passer en mode python...
Image
j'ai ceci...Image
L'application Python App v5.3.6 n'a pas l'air encore disponible, on dirait ..?
Il ne me reste plus qu'à attendre que celle-ci soit disponible , ou y aurait-il un autre moyen ?

Bonjour tout le monde, mais dites-donc ! Ce modèle m’intéresse beaucoup, je voudrai en savoir plus s’il vous plaît, est-ce possible ? Merci de votre retour  Cependant j’ai une petite question à vous confier si c’est possible. Amicalement
Avatar de l’utilisateur
Chilperic99
Niveau 0: MI (Membre Inactif)
Niveau 0: MI (Membre Inactif)
Prochain niv.: 0%
 
Messages: 1
Inscription: 12 Sep 2019, 22:45
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: TI-83 Premium CE EDITION PYTHON version 5.3.6

Message non lude critor » 12 Sep 2019, 23:03

Bonsoir.

Quelle est la question ?
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.8%
 
Messages: 41465
Images: 14479
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Précédente

Retourner vers Problèmes divers / Aide débutants

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 98 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
2249 utilisateurs:
>2238 invités
>7 membres
>4 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)