Autor Thema: FVDI Saga Treiber für Saga Optimieren  (Gelesen 37793 mal)

0 Mitglieder und 3 Gäste betrachten dieses Thema.

Offline mfro

  • Benutzer
  • Beiträge: 1.640
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #20 am: Mo 11.03.2019, 17:52:29 »
wenn das eine "memory barrier" sein soll, würde ich das so schreiben:

__asm__ __volatile__("" ::: "memory");
Aber nur, wenn es tatsächlich gebraucht wird - schließlich hindert das gcc ja am Optimieren.
« Letzte Änderung: Mo 11.03.2019, 17:55:26 von mfro »
And remember: Beethoven wrote his first symphony in C

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.315
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #21 am: Mo 11.03.2019, 18:00:25 »
Das würde wohl nichts nutzen, weil gcc nichts von nötigen memory barriers für m68k weiss, und das genauso ignoriert würde. Wenn überhaupt, müsste man wohl einfach
#define KEEP_ORDER() (void)keep_order

verwenden.

Abgesehen davon, die bisherigen Änderungen könnten den Fehler beim Bild-Spiegeln erklären, aber noch nicht die merkwürdigen Effekte in der Menüzeile. Müsste man aber wohl erstmal ausprobieren.

Offline mfro

  • Benutzer
  • Beiträge: 1.640
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #22 am: Mo 11.03.2019, 18:05:29 »
Das würde wohl nichts nutzen, weil gcc nichts von nötigen memory barriers für m68k weiss, und das genauso ignoriert würde.
Das muss es doch auch nicht. Das Statement oben bedeutet m.E. für den gcc, daß da asm-Code eingestreut wurde, der Hauptspeicher geändert hat.

Alles, was danach kommt, muß demzufolge seine Register neu laden, alles was davor kommt, sie zurückschreiben -> memory barrier.
And remember: Beethoven wrote his first symphony in C

Offline 1ST1

  • Benutzer
  • Beiträge: 8.661
  • Gesperrter User
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #23 am: Mo 11.03.2019, 19:24:58 »
Ist das schon auf "unserer" Hardware, oder noch drüben?
Ausgeloggter Mitleser, der hier NIE mehr aktiv wird. Am besten, meine Inhalte komplett löschen. Dabei berufe ich mich auf mein Urheberrecht, die DSGVO und auf die Rechte, die mir unter Impressunm&Datenschutz zugestanden werden. Tschö!

Offline Arthur

  • Benutzer
  • Beiträge: 10.310
  • Mein Atari erinnert mich an die gute alte Zeit..
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #24 am: Mo 11.03.2019, 19:40:29 »
@tuxie, kannst du die Screenshots noch mal direkt auf forum.atari-home.de hoch laden?

Ingo, ich schieb hier mal ein wenig.

Offline tuxie

  • Benutzer
  • Beiträge: 6.835
  • Falcon! Milan! Schuetzt die Raubvoegel!
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #25 am: Mo 11.03.2019, 21:17:56 »
Habe nur den einen und den habe ich angehaengt!
Tschau Ingo

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.315
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #26 am: Di 12.03.2019, 00:33:55 »
@mfro: memory-barrier sind was anderes als out-of-order execution. Ersteres wird z.B. benötigt um sicherzustellen, daß Variablen die zur thread-synchronisation benutzt werden, tatsächlich im Speicher stehen. Letzteres ist was, was lediglich die CPU betrifft. Da sowohl mit dem bisherigen Konstrukt und mit deinem Vorschlag (oder auch wenn man es ganz weglässt) der gleiche Code erzeugt wird, kann es hier allerdings keinen Effekt haben. Es gibt lediglich einen Unterschied: wenn man es ganz weglässt, wird tatsächlich die Funktion für EXPR_NOP komplett wegoptimiert. Wenn man eines der Konstrukte benutzt, besteht die aus Schleifen die absolut keinen Effekt haben, weil sie weder Speicher lesen noch schreiben.

@tuxie: welchen Compiler verwendet ihr denn bzw. die Amiga-Leute? ich weiss daß Beppo da schon was Richtung Apollo-Code-Erzeugung gemacht hat, aber ist das auch schon im Einsatz?

Offline Nervengift

  • Benutzer
  • Beiträge: 1.533
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #27 am: Di 12.03.2019, 08:43:59 »
Mal nebenbei: Vielleicht kann @Chocco euch noch helfen? Der schreibt zur Zeit ein VDI für Linux/ARM. ;D
520 ST(M) (TOS 1.02), Falcon030 (16 MHz, 16 MB RAM, CF-Karte, MiNT & MyAES), Milan040 (25 MHz, 48 MB RAM, EasyMiNT 1.90), Firebee (2nd Edition), PowerMac G5 Late 2005 (2 x 2,3 GHz, Mac OS 10.5), iMac 4K Late 2015 (intel Core i7 4 x 3,3 GHz, Mac OS 10.11.6), IBM XT SFD (640 KB RAM, DR DOS 6.0), Compaq LTE 5300 (Pentium/133 MHz, DR-DOS 7.03), AT-PC (Cyrix 6x86L/200 MHz, Windows 98 SE/MS-DOS 6.22 & Windows 3.11)

Offline mfro

  • Benutzer
  • Beiträge: 1.640
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #28 am: Di 12.03.2019, 09:39:33 »
@mfro: memory-barrier sind was anderes als out-of-order execution.

Natürlich.

Mit letzerem werden m68k-Compiler (und erst recht "Legacy"-Code) schlicht nicht umgehen können. M.E. darf der Apollo-Core so etwas nur dann machen, wenn es keine Auswirkungen auf das Ergebnis hat.

M.W. macht auch ein 68060 - obwohl er "die Kraft der zwei Pipelines" hat - immer in-order. ColdFire genauso.

And remember: Beethoven wrote his first symphony in C

Offline tuxie

  • Benutzer
  • Beiträge: 6.835
  • Falcon! Milan! Schuetzt die Raubvoegel!
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #29 am: Di 12.03.2019, 09:50:26 »
Ich nutze aktuell den Compiler von Vincent auf meinem MacBook, hatte jetzt versucht den GCC 8 von Thorsten einzurichten, es fehlt allerdings noch ein Paket ein -as fehlt. Habe aber gestern Abend dann nicht weiter geschaut.

Die nonarkitten aus dem Apollo Team die auch die Blit Routinen geschrieben hat, hat mir auch schon gesagt das Beppos Compiler den 68080 bereits Unterstützt. Nur die Frage wie man ihn am besten einbinden könnte.

Tschau Ingo

Offline tuxie

  • Benutzer
  • Beiträge: 6.835
  • Falcon! Milan! Schuetzt die Raubvoegel!
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #30 am: Di 12.03.2019, 09:53:24 »
Hab ihn eben gefunden, er hat ihn auf Github

https://github.com/bebbo/amiga-gcc
« Letzte Änderung: Di 12.03.2019, 10:23:07 von tuxie »
Tschau Ingo

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 1.315
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #31 am: Di 12.03.2019, 10:59:05 »
es fehlt allerdings noch ein Paket ein -as fehlt.

Der Assembler? Sollte eigentlich bei den binutils dabei sein (ist es auch wenn ich nachschaue). Zur Not müssten aber auch die binutils-2.30 von Vincent funktionieren.

[quoteNur die Frage wie man ihn am besten einbinden könnte.[/quote]

Hauptproblem ist vermutlich, daß er momentan noch vasm verwendet, und gas noch nicht die opcodes versteht.

Offline tuxie

  • Benutzer
  • Beiträge: 6.835
  • Falcon! Milan! Schuetzt die Raubvoegel!
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #32 am: Di 12.03.2019, 11:28:15 »
Schaue ich heute Abend, bin Arbeiten und habe heute meinen Rechner nicht mit.
Tschau Ingo

Offline Chocco

  • Benutzer
  • Beiträge: 228
  • May the force be with you
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #33 am: Mi 13.03.2019, 20:06:34 »
Mal nebenbei: Vielleicht kann @Chocco euch noch helfen? Der schreibt zur Zeit ein VDI für Linux/ARM. ;D

Nein, das passt leider nicht ganz. Für den ARM-Port habe ich mich inzwischen vom Framebuffer getrennt und nutze openvg mit HW-Beschleunigung.

Augenscheinlich würde ich auf vro_cpyfm() tippen, wenn sowohl SCR- als auch DST-Raster im aktuellen Bildspeicher liegen. In diesem Fall wird NULL als Zeiger auf das Raster gesetzt und vielleicht werden die MFDB-Strukturen mit inkorrekten Default-Werten belegt.
Atari TT030 mit CrazyDots
Milan 060 (ATI Rage Pro)
Apple MBP

Offline tuxie

  • Benutzer
  • Beiträge: 6.835
  • Falcon! Milan! Schuetzt die Raubvoegel!
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #34 am: Do 14.03.2019, 00:44:56 »
Wie ist den da eigentlich der Status bei deinem Port ?
Tschau Ingo

Offline Chocco

  • Benutzer
  • Beiträge: 228
  • May the force be with you
Re: FVDI Saga Treiber für Saga Optimieren
« Antwort #35 am: Sa 16.03.2019, 17:25:13 »
Wie ist den da eigentlich der Status bei deinem Port ?
Das ist noch eine große Baustelle. Dazu mache ich mal einen extra Thread zu auf.
Atari TT030 mit CrazyDots
Milan 060 (ATI Rage Pro)
Apple MBP