|
|||||||||||
AW: Lang Emus auf Reflection Modul
Eher unwahrscheinlich dass der schnelle Programmspeicher solche Auswirkungen hat. Der schnellste Motorola kann die Befehle nicht so schnell abarbeiten wie der Speicher die Daten liefern kann. Insofern bewegen sich die Vorteile durch die schnellen ROM-Speicher wohl eher im Promillebereich. Viel wichtiger wäre hier der Speicher für den Hash gewesen. Damit hätte man tatsächlich noch mehr herauskitzeln können.
__________________
Mein Profil beim ICCF (International Correspondence Chess Federation) https://www.iccf.com/player?id=89948&tab=3 |
|
|||||||||||
AW: Lang Emus auf Reflection Modul
Das Programm legt nicht nur Daten im Hash ab. Insofern halte ich die 20ns RAM nicht für falsch dimensioniert. Ich kann mir auch nicht vorstellen, dass die H&G Entwickler hier aus Spaß schnellere Chips als notwendig verbaut haben...
Dass der Hash langsamer ist, hat vermutlich Platz (Genius) als auch Kostengründe (TM, hier wäre zumindest Platz gewesen). Vl. waren es aber auch pragmatische Erwägungen, dass es beim Hash doch nicht soo viel ausmacht? Also der Vorteil durch den Hash an sich ist enorm. Den dann gegen hohe Kosten nochmal etwa um Faktor 3 zu beschleunigen, bringt ev. nicht mehr den entscheidenden Gewinn. So mag die Überlegung gewesen sein... |
|
||||||||||||
AW: Lang Emus auf Reflection Modul
Im Richard Lang modulen wird dem schachprogramcode kopiert nach dem meist hochgeschwindige RAM. Am besten dem sogennante cache rams (~20ns), die genutzt werden im TM. Die Hash tabelle brauchen eigentlich keinem schnellen ram. Deswegen das im TM diesem ram SRDAM ist (>50ns) . Warum ? die Hash soll schnell sein, aber im code ist zugriff am Hash nur relativ wenig. Die programm code soll die schnellste sein. Nicht dem Hash zugriff.
Kopieren dem code ist wegen das die Eprom sehr langsam ist, und dabei nur 8 oder beim 2 eprom 16 bit breit. Die Tasc machen exact dasselbe. Im zeitem dem modulen war dem cache RAM sehr teuer, entgegen dem SDRAM. Ubrigens werden die Cache RAMS nicht als L2 oder L3 cache genutzt. Wenn das so war, dan war einem kopie nicht benotigt nach das RAM.
__________________
Grusse, Ruud Martin |
Folgende 3 Benutzer sagen Danke zu Ruud Martin für den nützlichen Beitrag: | ||
|
||||||||||||
AW: Lang Emus auf Reflection Modul
Die 68020 hatte eine kleine Pipeline (damit kann die Ausführung eines Befehls schon begonnen werden während der vorige noch bearbeitet wird). Allerdings muss die Pipeline oft weggeworfen werden, d.h. der Nutzen ist gering und braucht ein optimiertes Programm (z.B. durch Umstellung von Befehlen ohne nötige Reihenfolge).
Außerdem wurde ein kleiner Cache (256 Bytes) vorgesehen, das vermeidet viele der sonst eventuell nötigen Waitstates. Allerdings profitieren dabei vor allem kleine, oft hintereinander genutzte Programmteile ohne zu viele Speicherzugriffe für Daten. Kleine Schleifen, die mit Daten in Daten in den Registern arbeiten sind also ideal. Bei der 68030 kommt jetzt noch ein Datencache von 256 Byte hinzu. Damit werden Rechnungen auf kleinen Datenmengen gut beschleunigt, aber bei "richtigen" Programmen geht die Trefferquote schnell in den Keller. Nur wenige Variablen (die bereits bevorzugt Register belegen) profitieren davon, meist wirft ein Zugriff etwas anderes raus, was dann ein paar Takte wieder geladen werden muss. Der Cache ist also besser als nichts, aber nicht z.B. mit den 32 KB bei Rechnern mit 80386 und 33 MHz vergleichbar ist. Der Zugriff auf Hashtables ist nur ein kleiner Teil der Berechnung eines Knotens, d.h. der Zeitaufwand für Waitstates bei vier oder sechs Zugriffen pro Knoten (8 oder 12 Bytes erst lesen und dann ggf. speichern) spielt letztlich keine große Rolle. Es ist daher eine durchaus plausible Rechnung, wenn statt einer externen Cachelogik mit extra RAM (mehrere Chips für 32 Bit-Zugriffe) gleich statisches RAM für den normalen Speicher vorgesehen wird und für die Hashtables langsameren und preiswerteren Speicher. Außerdem wird durch die Trennung die Aufrüstung einfacher und preiswerter möglich. |
Folgender Benutzer sagt Danke zu Solwac für den nützlichen Beitrag: | ||
Mapi (29.04.2017) |
|
|||||||||||
AW: Lang Emus auf Reflection Modul
Danke Ruud für die Bestätigung der Überlegungen zum ROM. Es macht anders wirklich keinen Sinn und erklärt, warum langsame EPROMS ausreichen und vor allem 1 einziges mit 8 Bit Breite...
Aus theoretischen Erwägungen müsste der interne (sowieso sehr kleine) Cache unwirksam sein, da der externe 20ns SRAM auch ohne Waitstates genutzt werden kann. Zumindest bei den genutzten Frequenzen von 25 oder 33 MHz. Bei den Intel-System gab es damals sogar den Effekt, dass ein Cache Miss zu einem langsameren Speicherzugriff führte, als wenn gar kein Cache vorhanden gewesen wäre... |
|
|||||||||||
AW: Lang Emus auf Reflection Modul
Im Richard Lang modulen wird dem schachprogramcode kopiert nach dem meist hochgeschwindige RAM. Am besten dem sogennante cache rams (~20ns), die genutzt werden im TM. Die Hash tabelle brauchen eigentlich keinem schnellen ram. Deswegen das im TM diesem ram SRDAM ist (>50ns) . Warum ? die Hash soll schnell sein, aber im code ist zugriff am Hash nur relativ wenig. Die programm code soll die schnellste sein. Nicht dem Hash zugriff.
Kopieren dem code ist wegen das die Eprom sehr langsam ist, und dabei nur 8 oder beim 2 eprom 16 bit breit. Die Tasc machen exact dasselbe. Im zeitem dem modulen war dem cache RAM sehr teuer, entgegen dem SDRAM. Ubrigens werden die Cache RAMS nicht als L2 oder L3 cache genutzt. Wenn das so war, dan war einem kopie nicht benotigt nach das RAM.
__________________
Mein Profil beim ICCF (International Correspondence Chess Federation) https://www.iccf.com/player?id=89948&tab=3 |
|
||||||||||||
AW: Lang Emus auf Reflection Modul
Beim Mac II (68020 mit 16 MHz) wurden 130ns-RAM benutzt, mit 2 Waitstates.
Schnelleres RAM mit 80ns hätte 1 Waitstate bedeutet. Beim Mac IIci (68030 mit 25 MHz) wurde auf das 80ns-RAM mit 2 Waitstaes zugegriffen, so dass ein 32 KB großer Cache (SRAM mit 25ns) verwendet wurde, dies brachte minestens 15% mehr Geschwindigkeit. Diese Zahlen passen auch zu den PC aus den Jahren. Nun ist aber der Aufwand bei Mac und PC für einige MB Hauptspeicher gedacht und bei einem Schachcomputer bringen die paar Takte pro Knoten beim Speicher für Hash nicht so viel und 256 KB SRAM dürften billiger als 32 KB SRAM plus Cachelogik plus DRAM sein. Jeder Chip weniger spart Geld. |
|
|||||||||||
AW: Lang Emus auf Reflection Modul
Hartmut, ich hatte das oben bereits beschrieben. Für den Stellungsspeicher gibt es einen eigenen SRAM. Bei den Modulsets befindet sich dieser im Display-Modul inkl. Pufferbatterie. Bei den TMs auf der Hauptplatine. Jeweils in (preiswerter) langsamer Ausführung um 100ns.
Die Brettansteuerung ist zwangsläufig in jedem Mephisto Modulset enthalten. Sie erfolgt über Adressdecoder im Modul und durch diese aktivierte Register/Latches direkt im Brett. SRAM Speicher ist hierfür nicht vonnöten und auch gar nicht in jedem Modulset enthalten. Die 20ns SRAMs im 68030 Genius und TM machen die Verwendung nur eines einzigen 8Bit Eproms in langsamer Ausführung erst möglich. Sicher hätte man hier auch langsamere Speicher benutzen können, die wären preiswerter gewesen und hätten weniger Platzbedarf gehabt. Es muss also einen Sinn ergeben, genau diese schnellen Chips einzusetzen. Und den sehe ich im Einsparen von Waitstate Zyklen. Bei 33 und mehr MHz Takt sind 100ns RAMs ohne Waistates nicht ansprechbar, es sei denn man arbeitet mit Tricks wie mehreren Bänken die interleaved angesprochen werden. Dies wäre im Genius Modul vom Platzbedarf her schwierig geworden. Ich schließe mich Solwac an: die Speicherzugriffe werden beschleunigt und das System ist insgesamt platz- wie auch kostenoptimiert. Grüße Andreas |
|
|||||||||||
AW: Lang Emus auf Reflection Modul
Die 20ns SRAMs im 68030 Genius und TM machen die Verwendung nur eines einzigen 8Bit Eproms in langsamer Ausführung erst möglich. Sicher hätte man hier auch langsamere Speicher benutzen können, die wären preiswerter gewesen und hätten weniger Platzbedarf gehabt. Es muss also einen Sinn ergeben, genau diese schnellen Chips einzusetzen.
Zitieren:
Und den sehe ich im Einsparen von Waitstate Zyklen. Bei 33 und mehr MHz Takt sind 100ns RAMs ohne Waistates nicht ansprechbar, es sei denn man arbeitet mit Tricks wie mehreren Bänken die interleaved angesprochen werden. Dies wäre im Genius Modul vom Platzbedarf her schwierig geworden.
Zitieren:
Ich schließe mich Solwac an: die Speicherzugriffe werden beschleunigt
Zitieren:
und das System ist insgesamt platz- wie auch kostenoptimiert.
Gut, mag sein, dass sich die Entwickler bei H&G was dabei gedacht haben, als sie die Dinger so entwickelt haben, wie sie eben jetzt sind. Umsonst macht man so eine Mixtur aus SRAM und DRAM sonst nicht. Ich zweifle nur daran, dass es wirklich so effizient ist, wie man es sich vorgestellt hat. Der einzig wirklich gute Effekt ist der geringere Energieverbrauch, der bei der Benutzung von SRAM anfällt. Allerdings habe ich meine Zweifel, dass das die Idee der Platinenplanung war...
__________________
Mein Profil beim ICCF (International Correspondence Chess Federation) https://www.iccf.com/player?id=89948&tab=3 Geändert von Hartmut (01.05.2017 um 04:02 Uhr) |
|
|
Ähnliche Themen | ||||
Thema | Erstellt von | Forum | Antworten | Letzter Beitrag |
Info: Phoenix Chess Systems REFLECTION | Ruud Martin | Die ganze Welt der Schachcomputer / World of chess computers | 69 | 12.11.2023 18:05 |
Info: BT test für Reflection Modul London | Mapi | Die ganze Welt der Schachcomputer / World of chess computers | 8 | 02.04.2017 23:39 |
Frage: Geschwindigkeitsvergleich Reflection zu Revelation II | MaximinusThrax | Die ganze Welt der Schachcomputer / World of chess computers | 20 | 02.03.2017 19:48 |
Partie: Reflection London | Mapi | Partien und Turniere / Games and Tournaments | 2 | 19.01.2017 20:52 |