E-UAE pour OS4.1 et un JIT …

13 sujets de 16 à 28 (sur un total de 28)

  • 1
  • 2
  • elwood

      #143687

      tu donnes la question et la réponse ;-)

      sinisrus

        #143688

        il me semble qu’il existe aussi une version de e-uae qui n’utilise pas SDL sous os4 et qui ne gere pas la les mode rtg

        Anonyme

          #143689

          Sa veux dire qu’il y a pas de bon programmeur sur amiga ;-)

          Nan, je déconne, mais pour info, le SDL, c’est du C ou c’est un langage à part?

          J’ai chercher sur internet, mais j’ai pas réellement pigé le projet du SDL en se qui concerne l’optimisation. Le seul truc que j’ai pigé, c’est la création de bibliothèque multiplateforme et en gros rien a carrer des possibilité de la machine.

          C’est en gros, mon programme fonctionne bien tant que t’a un ordi ultra puissant chez toi, mais n’importe quel bon programmeur te fais la même chose sur un 020.

          Le SDL, c’est un peu la sous merde de la programmation de l’Amiga ;-), donc arrêter avec le SDL a moins que quelqu’un optimise ces librairies et la ok, on pourra s’y intéressé.

          serge

            #143690

            Artblink a écrit :

            ….

            J’ai chercher sur internet, mais j’ai pas réellement pigé le projet du SDL en se qui concerne l’optimisation. Le seul truc que j’ai pigé, c’est la création de bibliothèque multiplateforme et en gros rien a carrer des possibilité de la machine.

            ….

            Je crois qu’il n’ y a rien de plus a comprendre.

            RyZen Rulez 😉

            Anonyme

              #143691

              @Serge:

              Pourtant, enfin je crois, le code SDL est compilé avec un compilateur C classique? non? si c’est le cas, un bon programmeur en C pourrait traduire le code SDL en code C optimisé pour ensuite le compilé, il faudrait qu’il connaisse la concordance entre les commande SDL et les commandes les plus optimisé en C pour AOS et Morphos.

              Remarque, après sa dépend comment c’est codé, si on va chercher la source SDL pour ensuite la compilé à l’arrache pour AOS et Morphos en changeant que 2 ou 3 commandes pour une histoire de compatibilité, bof bof.

              En gros, c’est un peux se que je faisait avec holly, j’allais chercher du code LUA que je traduisait (rapidement) en holly et j’exécuter le script et quand il me retourné une erreur, je modifié la ligne ou la commande, en gros, une méthode d’amateur bourrin. Le mieux, c’est de ré écrire le code, on garde la méthode de la source télécharger, mais on la retranscris intelligement, c’est à dire en optimisant, mais bon, il faut connaître quasi toutes les commandes par coeur et surtout les méthode de programmation les plus rapide, bref maitrisé le sujet.

              C’est pour sa que mes script sont imbitable puisque je ne fais jamais d’appel de function (méthode de la programmation objet) car sa ralenti l’exécution du script. Plus il y a de function, plus le script est ralenti (un appel de function est c’est un cycle de manger en plus dans l’exécution du PRG) et des fois, je vois des sources avec 40 functions et des variable de retour, un truc de dingues, alors que si t’enchaines toutes les commandes les unes derrières les autres sans appel, ton programme va un chouilla plus vite, j’ai même réussi à gagner 2 secondes sur le calcule d’une image en raytracing en virant toutes les functions du script.

              Genre, il y avait une boucle de 640 avec 2 appels de function à l’intérieur, en gros, 1280 appels de fonctions, c’est 1280 quelque chose de temps CPU de perdu

              A modifier si je me trompe ;-)

              Fab1

                #143692

                SDL est juste une API qui abstrait l’OS sous-jacent.

                Certaines implémentations de SDL sont plus rapides que d’autres. Là où ça craint, en général, c’est que passer par SDL peut parfois amener à effectuer certaines couteuses conversions de format de pixel, là où du code spécifique pourrait être plus efficace (mais là encore, ça dépend pas mal de l’implémentation de la SDL et de l’application SDL elle-même, d’ailleurs).

                serge

                  #143693

                  Artblink:

                  Je comprends bien ce que tu dis, mais tout l’intérêt du SDL est de proposer des fonctions toutes prêtes pour justement gérer les évènements graphiques, sonores et d’interface etc de manière générique et ce quelque soit le système d’exploitation.

                  Prenons l’exemple d’une application codée en C et utilisant les bibliothèques SDL comme un navigateur WEB.

                  Si tu veux faire disparaitre les parties SDL, il te faudra par exemple refaire l’interface graphique pour qu’au lieu d’utiliser les gadgets proposés par SDL, tu utilises les gadgets de ton système EX: Reaction, MUI etc.

                  En gros le SDL c’est une couche pour tout faire mais non native au système d’exploitation. C’est en suite la bibliothéque SDL de ton système qui redirige les fonctions SDL vers celles du système d’exploitation.

                  C’est totalement contre indiqué pour avoir des programmes performants et c’est totalement conseillé pour que le programme puisse être porté sur plein de systèmes.

                  Extraire le code générique d’une application SDL peut s’avérer très compliqué si plein de fonctions toutes prêtes sont utilisées car il faudra tout refaire. C’est pour cela que beaucoup de jeux ou applis SDL le restent et ne sont pas refaites avec les fonctions natives de nos système car ce serait souvent tout refaire ou presque.

                  PS: je viens de voir que Fab a apporté une réponse bien plus simple et précise que la mienne.

                  RyZen Rulez 😉

                  Anonyme

                    #143694

                    Ok, je comprend mieux, en gros, le sdl c’est un émulateur.

                    Dingue tous sa… c’est dommage que l’on soit obligé de passé par se truc.. snif, sa dessert nos OS préféré

                    Anonyme

                      #143695

                      Artblink : le terme émulateur est mal choisi, c’est une couche intermédiaire mais en soit, ce n’est pas cela qui est coûteux en terme de vitesse d’exécution (cf facteurs mentionnés par Fab).

                      Par contre, ce qui clair c’est que les softs multiplateformes ne sont pas conçus avec le hardware limité des AmigaNG en tête, ni avec les limitations éventuelles des implémentations SDL, pilotes etc. de nos machines.

                      /me simplifie pour éviter de dire trop de conneries

                      crisot

                        #143696

                        T’es français, ton pote est allemand, tu parles pas allemand, il parle pas français. Seule langue commune connue: Le russe.

                        Bah SDL c’est pareil, sauf qu’il parle le russe très lentement.

                        serge

                          #143697

                          pour reprendre l’analogie de crisot que je trouve intelligente et rigolotte, je dirais aussi que certains sont plus doués pour les langues étrangères que d’autres ;-)

                          RyZen Rulez 😉

                          LorD

                            #143698

                            Après SDL peu servir à gérer seulement des éléments précis :

                            – le son

                            – le pad

                            – des évènements

                            Brefs, pas des trucs trop lourds qui peuvent être codé en d’autres langages. L’avantage, c’est de ne pas recoder des trucs basiques pour tout les systèmes.

                            Anonyme

                              #143699

                              Oui, mais, parfois, il faut faire attention, les codes les plus simples ne sont pas forcément les plus rapides, et tu peux perdre en vitesse sur un simple test de touche de clavier. Tu va me dire, oui mais bon, c’est pas sa qui va faire ramer le programme, d’accord avec toi, mais plein de petites routines mal programmé dans un programme ou plutôt non optimisé, et au bout d’un moment, le dit programme devient une usine à gaz.

                              Remarque, je ferai mieux de la fermer car je ne connais pas une seul commande du SDL, donc je ne sais pas comment il réagi, ni la vitesse d’exécution des programmes. Je m’y pencherai peut être, si je trouve sa sympa, car je connais quelques commandes du C, mais sa m’inspire pas (le C et le SDL).

                            13 sujets de 16 à 28 (sur un total de 28)

                            • 1
                            • 2
                            • Vous devez être connecté pour répondre à ce sujet.

                            Forums AmigaOS, MorphOS et AROS Émulation et autres OS E-UAE pour OS4.1 et un JIT …

                            Amiga Impact