Amiga – Apollo MMX : Accélérateur de sensations


Facebooktwitterredditpinterestlinkedintumblrmail

AMMX JPEGOn a tous entendu parler de ce fameux AMMX qui serait intégré au 68080 de l’Apollo Core mais savez vous réellement de quoi il s’agit ?

L’AMMX qui rappel la dénomination de la technologie MMX intégrée au processeurs Intel Pentium est une extension de type SIMD 64 bits. Le principe de ces extensions est d’ajouter des instructions permettant de faire plusieurs manipulations en une seule fois. En plus de cela, l’AMMX de l’Apollo Core offre 24 nouveaux registres exclusivements réservés à l’usage de ces instructions SIMD.

Dans la pratique cela pourrait offrir un gain de performance considérable sous condition de réécrire spécifiquement des applications en utilisant ces nouvelles instructions AMMX. Pour s’en convaincre il suffit de voir ce que donne la recompilation du datatype JPEG faite par Bax en utilisant ces fameuses instructions. En utilisant l’application Visage en mode timetest sur la même image on passe de 1,759 seconde avec le datatype d’origine à un fulgurant 0,723 seconde avec le datatype recompilé en AMMX. Soit une vitesse multipliée par près de 2,5 fois.

Si vous souhaitez en apprendre plus sur cette extension AMMX je vous recommande chaudement de lire ce post de Bax sur le forum Apollo-accelerators.com.

Jim Neray
Remerciements à Tuko pour l’information partagée sur nos forums.

Amiga – Apollo MMX : Accélérateur de sensations

  • Ce sujet contient 55 réponses, 12 participants et a été mis à jour pour la dernière fois par Crisot, le il y a 6 années et 2 mois.
  • Créateur
    Sujet
  • #18148
    Amiga France

      AMMX JPEGOn a tous entendu parler de ce fameux AMMX qui serait intégré au 68080 de l’Apollo Core mais savez vous réellement de quoi il s’agit ?

      L’AMMX qui rappel la dénomination de la technologie MMX intégrée au processeurs Intel Pentium est une extension de type SIMD 64 bits. Le principe de ces extensions est d’ajouter des instructions permettant de faire plusieurs manipulations en une seule fois. En plus de cela, l’AMMX de l’Apollo Core offre 24 nouveaux registres exclusivements réservés à l’usage de ces instructions SIMD.

      Dans la pratique cela pourrait offrir un gain de performance considérable sous condition de réécrire spécifiquement des applications en utilisant ces nouvelles instructions AMMX. Pour s’en convaincre il suffit de voir ce que donne la recompilation du datatype JPEG faite par Bax en utilisant ces fameuses instructions. En utilisant l’application Visage en mode timetest sur la même image on passe de 1,759 seconde avec le datatype d’origine à un fulgurant 0,723 seconde avec le datatype recompilé en AMMX. Soit une vitesse multipliée par près de 2,5 fois.

      Si vous souhaitez en apprendre plus sur cette extension AMMX je vous recommande chaudement de lire ce post de Bax sur le forum Apollo-accelerators.com.

      Jim Neray
      Remerciements à Tuko pour l’information partagée sur nos forums.

      Vous aimez Amiga France ? Alors aidez nous en partageant et en participant au forum. =)

    Affichage de 15 réponses de 1 à 15 (sur un total de 55)

    Partager sur vos réseaux sociaux préférés :
    Facebooktwitterredditpinterestlinkedintumblrmail

    • Auteur
      Réponses
    • #18179
      Crisot
      • Level 5
      • Messages : 182

        Je suis un fervent convaincu de la Vampire et constate à regret son nombre de détracteur impressionnant sur les réseaux sociaux (certains vont jusqu’à parler d’implémentation pourrie, d’infériorité au 060. Je passe les Cosmos et compagnie qui voient ça comme un complot d’état pour empêcher le retour du tout puissant Amiga classic dans les rayons de la Fnac, bref).

        Juste… ce jeu d’instruction AMMX. L’idée et les perfs sont bonnes, mais… est-ce qu’on ne part pas une nouvelle fois dans une nouvelle solution qui va nécessiter de recompiler?

        Ne vaudrait-il mieux pas utiliser la place consacrer à l’AMMX à améliorer les performances globales du 68080 en ajoutant des unités de calcul?

        Je vais dire une connerie mais… quitte à ravoir un nouvelle fois un jeu d’instruction non compatible 68k historique… pourquoi ne pas implémenter le (fabuleux) jeu d’instruction du PowerPC? (au hasard, on parle ici de Datatypes, des Datatypes PPC existent depuis longtemps sans avoir à les recompiler).

        Quoi que vu qu’on a à faire à un FPGA, ça nous ferait un jeu d’instruction PPC tournant à la même vitesse que le jeu 68k.

        Bref, je médite…



        #18182
        gibs
        • Level 9
        • Messages : 978

          « Je passe les Cosmos et compagnie qui voient ça comme un complot d’état pour empêcher le retour du tout puissant Amiga classic dans les rayons de la Fnac, bref). »

          :lol:

          Edit : http://leblogdecosmos.blogspot.fr/2018/01/la-verite.html

          Diffamation, calomnie… (Traitant Philippe Lang d’escroc).

          Cosmos: « Tiens, tu me donnes une idée : je vais parler de ces fameuses coques et de la gigantesque escroquerie que ça a été… Je pense que j’ai encore les emails, je ferai des photos : j’avais demandé car les réponses du gars sur AI étaient floues… Je suis tombé de haut lorsque j’ai vu les prix réels à HK… Et j’avais publié toutes mes recherches sur AI à l’époque, me souviens bien… »

          Il a la mémoire courte, il s’était fait ridiculiser car il ne s’était pas rendu compte que la société chinoise qui faisait les moules à 2$, c’était des moules de 5cm MDR…Tu fais meme pas une gameboy avec ça….  :lol:

          :heart: Team Apollo :heart:

          #18194
          Crisot
          • Level 5
          • Messages : 182

            J’ai vu. C’est triste. Ces mecs (Cosmos n’est pas le seul à penser comme ça) ne respectent même plus la machine pour ce qu’elle est devenue. Un hobby autour d’une plateforme commercialement MORTE.

            J’ai rien contre le fait de parler « d’avenir » de l’Amiga classic quand on parle de « l’avenir de l’utilisation qu’on en fait », et bon dieu à ce petit jeu là la Vampire c’est un phénomène! Non, eux ils nous parlent « d’avenir de l’Amiga Classic », comme si la plateforme avait un avenir commercial, et que la Vampire étaient un grand méchant créé pour tuer l’Amiga.

            Faut leur mettre des chemises à l’envers…

            #18199
            DualG4
            • Level 6
            • Messages : 257

              :wacko:

              C’est du lourd les commentaires dans son article…..

              Cosmos: « Ce sont eux les saboteurs… Des agents parmi nous qui exécutent les ordres diviseurs de leurs supérieurs, histoire de mettre un maximum de merde dans la communauté… »

              Amiga 500 rev8 2Mo Chip KS 2.04 + RGB2HDMI + ACA500Plus
              Amiga 500 rev8 2Mo Chip KS 1.3 + Pistorm RPi 3A+ via Lazarustorm
              Amiga 1200 KS 3.2.2 + MBX1200z (8Mo/68881) + CF

              #18204
              Staff
              Jim Neray
              • Level 22
              • Messages : 7007

                Waho. En fait en lisant le billet sur le blog j’ai pris ca pour du second degré mal compris par les lecteurs mais non, en lisant les commentaires c’est du sérieux ..  :scratch:

                A titre purement personnel (les articles publiés sur le site évitants si possible de refléter mon opinion), je rejoint Crisot quand il dit :

                Ne vaudrait-il mieux pas utiliser la place consacrer à l’AMMX à améliorer les performances globales du 68080 en ajoutant des unités de calcul?

                Le gain serait probablement moins impressionnant dans des cas spécifiques mais la rétro compatibilité et la globalisation du gain serait plus pertinente. Car effectivement, si la tendance à l’utilisation des instructions AMMX se généralisait on se retrouverait par exemple avec des demos qui ne se lanceraient plus sur 68060 même overclocké à 100Mhz. Serais ce du coup toujours de l’Amiga ou une dérive de plus après le PPC ?

                Je ne crache pas sur les perfs du AMMX (et ne crois pas à un quelconque complot des illuminatis) mais cette question est effectivement intéressante. Si on me donne le pouvoir de décision je clique sur le bouton enlevez l’AMMX et mettez moi un putain de full FPU qui casse les pattes à un 68060  :whistle:

                A500 - A500 Plus - A600 HD - A1200 - A2000 - A4000T - CD32 - C=64 - 1040STE - CPC6128
                Mon Amiga 500 Plus : A590, 2MB Chip, 2MB Fast, HD 1,2GB, Floppy ext.
                Mon Amiga 1200 : Blizzard 1220/4, 2MB Chip, 4MB Fast, HD 80GB, Overdrive CD

                - Micromiga.com - La boutique Amiga -
                #18219
                gibs
                • Level 9
                • Messages : 978

                  Moi je suis pour l’AMMX.

                  Pour une fois que quelqu’un fait quelque chose d’innovant pour l’Amiga autant l’encourager.

                  :heart: Team Apollo :heart:

                  #18226
                  Zlandicae
                  • Level 6
                  • Messages : 290

                    Juste un petit copier/coller d’une de mes interventions sur le blog de Cosmos :

                    Tu devrais comprendre que l’AMMX (et toute nouvelle instruction implantée par la suite) est une bonne chose.

                    Tu dis que les applis AMMX nécessiteront l’achat d’une Vampire. Et bien sûr, oui… Tout comme les applications développées spécifiquement pour les 060 ne tournent pas sur les 040 et ainsi de suite. Tout comme les jeux AGA ne fonctionnent pas sur OCS/ECS, tous comme les (rare) jeux tirant parti d’Akiko ne fonctionneront pas sur autre chose qu’une CD32 (ou en émulation).
                    Pareil, ta solution d’une simple montée en fréquence fera qu’un soft développé pour profiter d’un 060 @ 200 MHz+ sera inexploitable sur le même processeur à 50, même s’il est overclocké à 100 MHz.

                    Tout ça, c’est ce qu’on appelle l’évolution.

                    Maintenant, c’est vrai que bien qu’une Vampire offre, malgré un up conséquent des perfs, et plus encore si les applications sont spécifiquement optimisées pour, par rapport à un Amiga Classique, cela reste inférieur et de très loin à ce qu’on peut voir parmi les x86/x64 ou les processeurs ARM. Cependant, il faut bien commencer quelque part.
                    Le plus important, ce n’est pas que les applications optimisées pour les Vampire soient compatibles avec les Amiga classique mais bien le contraire. C’est comme ça qu’à toujours évolué l’informatique.

                    Je refais un copié/coller d’une autre de mes interventions (avec les fautes ^^) passée en Anonyme au lieu de mon compte Google, je ne sais pourquoi :

                    Aujourd’hui, trouverais-tu même un seul professionnel qui se plaigne que Photoshop ou que tous les logiciels de montage vidéo pro nécessitent un processeur 64 bits équipé de toutes les nouvelles instructions implémentées depuis les premiers Pentium pour fonctionner ?
                    Penses-tu que les modeleurs 3D se tourneraient vers l’Amiga pour effectuer un rendu de leur films, séries ou dessins animés comme c’était le cas à l’époque de Babylon 5, Star Trek TNG ou Seaquest, époque où pourtant l’Amiga régnait en maître dans ce domaine ?
                    Non, aujourd’hui tout cela est devenu nécessaire à la vie d’une plateforme informatique moderne. Et l’AMMX du 68080 n’est qu’un premier pas vers une modernisation et remise au nécessités du jour de l’Amiga.

                    Bref, l’introduction des instruction AMMX ne peut être qu’un premier pas vers une réelle remise à niveau du (vrai) standard Amiga et c’est vrai qu’il en faudra bien plus encore si on veut le voir revenir, si ce n’est au premier plan (pour ça, je pense qu’il est trop tard), mais au moins visible sur la scène informatique. Car aujourd’hui encore, rien que son architecture 68k a quelques gros atouts à faire valoir (comme sa FPU).

                    Imaginez un peu un Amiga avec un 68k boosté aux hormones d’instructions modernes (équivalent MMX, SSE 1/2/4, VT, etc), acceptant une architecture multicore, gravé en ASIC en 10nm voire moins, tournant à 3+ GHz, prenant en charge la DDR4/5, des north/southbridge dédiés, un GPU à architecture unifiée (pour l’optimisation de l’Os et de la machine) pour les rendus 3D, l’accélération des calculs voire le E-Learning tout en conservant un chipset (S)AGA encore plus amélioré et pourrait être lui aussi à cœurs multiples (oui, j’en voit clairement l’utilisation :p) et pourrait même faire du post processing de scène 3D en 2D, par ex (une idée comme ça :p), des ports USB-C ou Thunderbolt (puisque la licence ne coûte plus 2 bras, un rein et 3 tickets gagnants du Loto), un port Réseau, des ports Sata voire PCI-E pour des SSD M2 ou tout simplement des cartes additionnelles pour les professionnels…
                    Et puis, un nouvel Amiga Os issu de la lignée 3 gardant une totale compatibilité (sans passer par la case émulation) avec les anciennes applis ou jeux sans devenir l’usine à gaz qu’est la version 4+, débuggé et optimisé aux petits oignons, conservant l’esprit de l’Amiga Os 3 d’origine mais l’équipant de tout ce qu’on demande à un Os Moderne…

                    Je sais, c’est un gros rêve et un tel projet serait proprement titanesque ce qui fait qu’on est loin encore de voir un truc pareil (très loin). Mais comme on dit : Pour atteindre la Lune, vise les étoiles. Et avec un peu de chance et de persévérance, en plus de la Lune, les étoiles tu atteindras :).

                    C’est pour ça que la Team Apollo a, en plus de tout mon soutient, aussi ma réelle admiration car la Vampire est à la fois un tout petit et un énorme pas vers une remise à niveau du standard Amiga.
                    J’aimerai tant avoir les compétences nécessaires pour en faire partie et apporter une (même modeste petite) contribution à cette aventure.

                    #18227
                    Arckheens
                    • Level 3
                    • Messages : 90

                      :cry: Dommage que le code source de Moto Racer de Delphine Software  ne soit pas disponible  ou POD mmx :cry:

                       

                      l'AMIGA c'est plus fort que toi !
                      If you type Google into Google, you can break the internet !

                      https://www.youtube.com/channel/UCpM2tu4ACvLAh2vw5NbIduA?sub_confirmation=1
                      #18229
                      gibs
                      • Level 9
                      • Messages : 978

                        @Zlandicae

                        Tu peux résumer plus simplement: il y a quelques années de ça, la communauté fantasmait sur le Natami. Il faisait l’unanimité.

                        Pourtant il était question de SAGA et les jeux et apps qui utiliseraient le SAGA ne tourneraient plus sur l’AGA…

                        Si ce que je viens d’évoquer à du sens alors on peut conclure qu’on a affaire à des gens qui se réveillent et qui courent dans les sens en agitant les bras en l’air.

                        Ce sont en fait eux, ces conspirationnistes du poltergeist qui ne savent plus quoi inventer, qui tentent de freiner l’évolution de l’Amiga (le vrai) celui qui sera 100% compatible avec tous ses prédécesseurs.

                         

                        :heart: Team Apollo :heart:

                        #18230
                        hlide
                        • Level 2
                        • Messages : 53

                          Sans être un partisan inconditionnel de l’AMMX, je ne vois pas trop comment on peut espérer améliorer considérablement les instructions actuelles – il faudrait pour cela faire comme font Intel et AMD : plus rien de CISC en interne. A ce stade-là, je ne sais pas comment 68080 opère en interne – continue-t-il à exécuter du CISC ou il procède d’une façon analogue en exécutant du RISC OOO avec renomage des registres, etc. en interne. Il y aura toujours les limites inhérentes au FPGA qui ne permet pas de monter en fréquence ou le manque de portes logiques pour booster l’implémentation interne.

                          L’AMMX est une réponse – un peu viellote et limitée à mon goût s’il s’agit que d’une recopie du MMX – pour booster le 68080 dans des domaines spécifiques. Personnellement, j’aurais plutôt considéré l’AVX qui permet de faire plus des choses et ce aussi bien pour des entiers que les réels (contrairement au MMX). J’ai aussi un gros faible pour le VFPU de la PSP qui permet de faire des calculs de vecteurs et matrices sur 128 registres par combinaison en colonne ou en ligne (seul bémol, les instructions avaient des latences qui n’étaient pas prises en charge par un méchanisme de « forwarding » contrairement à la partie MIPS de l’Allegrex) et qui étaient vraiment très funs à coder mais énergivores à optimiser.



                          #18232
                          Staff
                          Jim Neray
                          • Level 22
                          • Messages : 7007

                            Le Natami était plus de l’ordre du fantasme que de la réalité. On l’a aperçu, ca avait l’air cool et c’était de loin la meilleure option que l’on ne nous ai jamais présenté.

                            La Vampire c’est un peu différent. Elle est vraiment là, beaucoup la possède déjà et elle continue d’évoluer; Elle est sujette à tout les fantasmes et forcément elle inquiète. C’est la première fois depuis plus de 20 ans qu’une solution hardware remet tout l’acquis en question. (Ne me parlez pas du gag des Pegasos et AmigaOne). Bref c’est du concret et elle entraine forcément avec elle des questions concrètes que le Natami n’a pas eu le temps de soulever.

                            Ceci dit la team à bien évidemment tout mon soutiens et mon approbation. J’ai un profond respect pour ce qu’il font et feront demain.  :good:

                             

                            A500 - A500 Plus - A600 HD - A1200 - A2000 - A4000T - CD32 - C=64 - 1040STE - CPC6128
                            Mon Amiga 500 Plus : A590, 2MB Chip, 2MB Fast, HD 1,2GB, Floppy ext.
                            Mon Amiga 1200 : Blizzard 1220/4, 2MB Chip, 4MB Fast, HD 80GB, Overdrive CD

                            - Micromiga.com - La boutique Amiga -
                            #18259
                            TuKo
                            • Level 5
                            • Messages : 214

                              Juste… ce jeu d’instruction AMMX. L’idée et les perfs sont bonnes, mais… est-ce qu’on ne part pas une nouvelle fois dans une nouvelle solution qui va nécessiter de recompiler?

                               

                              Il y a deux approches possibles :
                              1) Adapter le software pour que si les instructions AMMX sont présentent, il les utilise.
                              2) Recompiler spécifiquement pour le 080 (comme on a beaucoup de soft qui ont des binaires 000/020/040 et 060)

                               

                              Dans tous les cas, les anciens binaires restent compatibles et la question duquel choisir n’a plus trop d’importance.

                               

                              Ne vaudrait-il mieux pas utiliser la place consacrer à l’AMMX à améliorer les performances globales du 68080 en ajoutant des unités de calcul?

                               

                              L’AMMX a été implémenté car justement il ne consomme pas beaucoup de place dans le FPGA. C’est un gain rapide et efficace pour gagner en performance. Pour le reste, Gunnar ne cesse d’améliorer les performances globales du 68080. A chaque nouvelle itération du core on a un gain de performances.

                              Ensuite, si on veut faire un grand bond dans les performances, il faut se tourner vers des FPGA plus rapides. On peut tout à faire imaginer une Vampire à 1500€ à base de FPGA Arria 10 :)

                               

                              Je vais dire une connerie mais… quitte à ravoir un nouvelle fois un jeu d’instruction non compatible 68k historique… pourquoi ne pas implémenter le (fabuleux) jeu d’instruction du PowerPC? (au hasard, on parle ici de Datatypes, des Datatypes PPC existent depuis longtemps sans avoir à les recompiler). Quoi que vu qu’on a à faire à un FPGA, ça nous ferait un jeu d’instruction PPC tournant à la même vitesse que le jeu 68k. Bref, je médite…

                               

                              Parce qu’il s’agit d’un autre processeur très différent. Gunnar bosse depuis bientôt 10 ans sur son core 68080… le PPC n’est pas et ne sera jamais couvert par la Vampire.

                              #18260
                              TuKo
                              • Level 5
                              • Messages : 214

                                Le Natami était plus de l’ordre du fantasme que de la réalité. On l’a aperçu, ca avait l’air cool et c’était de loin la meilleure option que l’on ne nous ai jamais présenté.

                                Le Natami était bien trop ambitieux pour devenir une réalité mais Thomas Hirsch travaille toujours dessus ! Qui sait un jour… :)

                                #18261
                                TuKo
                                • Level 5
                                • Messages : 214

                                  Je ne crache pas sur les perfs du AMMX (et ne crois pas à un quelconque complot des illuminatis) mais cette question est effectivement intéressante. Si on me donne le pouvoir de décision je clique sur le bouton enlevez l’AMMX et mettez moi un putain de full FPU qui casse les pattes à un 68060 :whistle:

                                  Aucun besoin d’enlever l’AMMX au profit du FPU, la consommation en éléments logiques des instructions AMMX sont très réduites, on y gagnerait pas grand chose. Tu vas par contre beaucoup aimer le GOLD2.7, le FPU 080 a bien progressé, il défonce clairement le 060, même en hybride SW/HW.

                                  #18267
                                  Staff
                                  Jim Neray
                                  • Level 22
                                  • Messages : 7007

                                    Aucun besoin d’enlever l’AMMX au profit du FPU, la consommation en éléments logiques des instructions AMMX sont très réduites, on y gagnerait pas grand chose.

                                    Bon à savoir ça merci pour l’info !

                                    Tu vas par contre beaucoup aimer le GOLD2.7, le FPU 080 a bien progressé, il défonce clairement le 060, même en hybride SW/HW.

                                    Ah oui ? Purée c’est la meilleure news de l’année ca. Le 2.7 prend son temps pour arriver mais du coup le fameux « plus c’est long, plus c’est bon » semble se confirmer !  :heart:

                                    A500 - A500 Plus - A600 HD - A1200 - A2000 - A4000T - CD32 - C=64 - 1040STE - CPC6128
                                    Mon Amiga 500 Plus : A590, 2MB Chip, 2MB Fast, HD 1,2GB, Floppy ext.
                                    Mon Amiga 1200 : Blizzard 1220/4, 2MB Chip, 4MB Fast, HD 80GB, Overdrive CD

                                    - Micromiga.com - La boutique Amiga -
                                  Partager sur vos réseaux sociaux préférés :
                                  Facebooktwitterredditpinterestlinkedintumblrmail
                                  Affichage de 15 réponses de 1 à 15 (sur un total de 55)
                                  • Vous devez être connecté pour répondre à ce sujet.