ares a écrit…
Je me demande d'ailleurs si "l'Amiga" n'est pas une formidable copie issue des travaux du PARC Xerox 🙂
Je ne sais pas, compare les dates des projets ?
Dans l'exemple ASM que tu donnes... on ne fait pas une soustraction mais une décrémentation de registre :
* on gagne un octet dans le code
* la décrémentation ; c'est 1 cycle horloge, une soustraction c'est plus.
Sympa les démos... j'ai un ami (Amiga-iste) qui en a des "tonnes"... certaines sont des merveilles artistiques.
Hum ! on parle de quoi ?!? c'était quoi le sujet ?!?
Bon je vous laisse, faut que je passe chez l'Amiga-iste fou me faire une soirée rétrospective demoscene ~~~~~~~>[]
J'adore !
C'est vrai pour la décrémentation, mais la dernière fois que je me suis plongé dans l'assembleur 68k remonte à l'an 2000 ou 2001 …
Sans pratiquer depuis, j'ai gardé le principe de la boucle, avec le réflexe de mettre un subq #1,d0 parce que le quick pouvait coder -8 à +7 à l'intérieur de l'instruction sans rallonger le code en effet, mais je devrais replonger dans tout ça si j'avais le temps … si j'avais le temps … ou si je prenais le temps … autant me farcir les 4600 pages du langage machine x86_64 … et de voir ce qu'on peut faire avec un PC … puisque je n'ai plus de machine matérielle sous 68k, à part la TI92+, mais j'aurais l'impression de perdre du temps …
PS : Je ne sais même pas si le programme que j'ai donné, tapé en mode texte sans programme d'assemblage avec les couleurs, les vérifications de syntaxe, le classeur de 500 pages du Cybex que j'avais autrefois à proximité, tourne sans faute de syntaxe, c'est juste un principe de ce qui ressemble à l'assembleur, qui reste très humain, afin de comparer au LM en hexadécimal par exemple, mais qui pourrait se lire en binaire … et qui ne sont souvent représentés que par des nombres pour faire sentir à Elzen la différence entre ces deux équivalents : l'assembleur coté humain et le Langage Machine coté processeur … sans trop diverger du sujet initial 😉 → regarder les magnifiques démonstrations écrites en assembleur ! ←
Bonjour ares, qui semble avoir plus utilisé le 68k que moi avec mon Amiga chez moi, et le module d'informatique industrielle dans ma formation EEA …
Tu sembles comparer un processeur de 1996 lapx86 (qu'est-ce ?) avec un MC68000 de 1979 …
Un
68060 de 1994 serait plus équitable 🙂
Maintenant, je ne comprends pas, bien que tu sembles connaitre le 68k alors que tu ne connais pas l'Amiga, que ta comparaison s'arrête au processeur ?
Le processeur fournissent les MIPS, mais sur les PC à l'époque, il me semble que le processeur à base intel doit tout faire, là ou l'Amiga a distribué les taches élémentaires à des processeurs conçus sur mesure … libérant le processeur Motorola, qui fonctionne un peu comme chef d'orchestre …
ares a écritPour les fondus de l'asm x86 y'a Yasm qui permet de faire des "trucs" sympas.
Yasm est très complet et prend en charge les spécificités des CPUs AMD, Intel, etc
Comme le faisaient les Assembleurs de motorola … 🙂 Mais écrire un code optimisé 68030 ne tournerait pas sur 68000 … à moins de faire du code à rallonge … version de base 68000 et de récrire chaque routines sensible en fonction de processeur pour n'avoir qu'un programme, et d'autres programmes optimisés pour chaque processeurs donnaient des versions différentes pour 68000 68020 68030 68040 …
Un peu comme i386 et x86_64 …
ares a écritLà ou nous ne sommes pas d'accord L_d_v_c@ ... c'est de comparer l'AmigaOS avec Windows NT4, car c'est pas flatteur pour l'Amiga.
J'aurais plutôt choisi "OS2/Warp" un bon OS multitâche qui m'a enfin décidé dans mon choix à l'époque big_smile
Si la comparaison est
flottante flattante 🙂 je trouve pourtant, NT4 est ce qui fonctionnait le mieux sur PC à l'époque (vers 2000)
parmi mes copains présents à l'université ! 🙂
L'Amiga 1200 (de 1992) avec une blizzard IV (68030+68882 + 16 Mio EDO) à 50 MHz (de 1995) tournait à la même vitesse que le PC sous NT4 à 200 MHz (de 2000) … avec la même latence d'utilisation.
Quoi de plus flatteur pour l'Amiga à base Motorola ?
Un peu comme le nouvel Amiga acheté en 2004 :
L_d_v_c@ a écritLe PowerPC 603 équipait les nouveaux Amiga de 2004.
Nos tests succincts sur le PowerPC 603 à 900 MHz (sur Yellow Dog Linux) le ramenait à un Intel à 1400 MHz virtuels (sur Debian). Tests aux décimales de Pi programmés en C.
En fait le PC sous Debian à 1600 MHz allait à 114% de l'Amiga sous Yellow Dog Linux avec le processeur PowerPC 603 à 900 MHz.
C'est connu depuis longtemps que PC (Intel et Amd) aiment afficher des MHz et des GHz qui ne reflètent pas les puissances de calculs.
Les Amiga ont toujours été plus performants de leur époque
Et pourtant l'Amiga de 2004 n'était plus conçu sur le principe de ce qui fait un Amiga d'origine : une osmose technologique informatique.
En 2004, la comparaison était le reflet du PPC comparé à Intel.
En bref, un PPC603 à 1GHz ferait le même travail qu'un Intel à 1555 MHz. Mais la course des CPU est indicative, mais quand tu te sers vraiment d'un ordinateur, c'est l'architecture interne qui compte.
Apparemment, la mémoire partagée multi-accès des premiers Amiga (chaque composant : son, vidéo, port série et parallèle, contrôleur de disques, avaient accès direct à la mémoire sans passer par le CPU) a plus ou moins été copié par intel …
→Mais sur un PC classique, il ne me semble pas que la mémoire soit physiquement double-access ?
http://wiki.amigaos.net/wiki/Programming_in_the_Amiga_Environment#Dynamic_memory_architecture a écritTwo Kinds of Memory
To keep the Classic Amiga running efficiently, the Classic Amiga has two memory buses and two kinds of memory. Chip memory is memory that both the CPU and custom chips can access. Fast memory is memory that only the CPU (and certain expansion cards) can access. Since Chip memory is shared, CPU access may be slowed down if the custom chips are doing heavy-duty processing. CPU access to Fast memory is never slowed down by contention with the custom chips.
The distinction between Chip memory and Fast memory is very important for Classic Amiga programmers to keep in mind because any data accessed directly by the custom chips such as video display data, audio data or sprite data must be in Chip memory.
Mais pourquoi pas comparer une grosse configuration PC i7 et un processeur Cell équipant les PS3 tant qu'on y est ? 😛
le processeur Cell utilisé par la console, qui dispose d'une puissance de calcul vectoriel de
230.4 Gigaflops (février 2005)
En 2013 un Ordinateur personnel peut disposer d'une puissance d'environ
200 gigaFLOPS avec un microprocesseur de puissance comparable aux superordinateurs de 1995 comme l'Intel Core i7-3770 (pour seulement 269€ ! ha ha ha)
Je suis sur PC parce que le porte feuille ne le permet pas encore d'avoir mon ordinateur avec un
processeur TiILE-Gx 100 …
Processeur TiILE-Gx 100 à environs 1000 $ début 2011.
Précisions importantes sur le TILE-Gx à 100 cœurs tournant à 1,5 GHz.
Gravure 40nm. 10W à 55W pour les applications typiques.
(
55 watts en pleine charge sur les 100 cœurs ? )
Array of 16 to 100 general purpose processor cores (tiles)
64-bit VLIW processors with 64-bit instruction bundle
Three-deep pipeline with up to 3 instructions per cycle
Massive 32 Mbytes of on-chip cache in the TILE-Gx100
Up to 750 billion 32-bit operations per second (BOPS)
Up to 200 Tbps of on-chip mesh interconnect
Over 500 Gbps memory bandwidth with two or four 64-bit DDR3 controllers
Mais je l'aurai cette ordinateur si le Studio musical fonctionne 😉
Tiens, je vais éteindre l'ordinateur et reprendre une activité électronique …