Fibonacci-Folge / Benchmarks

Pascal, Basic und andere nicht aufgelistete
Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8499
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Fibonacci-Folge / Benchmarks

Beitrag von Xin » Di Aug 27, 2019 9:27 am

mfro hat geschrieben:
Mo Aug 26, 2019 7:23 pm
Es ging mir hier nur darum auszuprobieren, ob "rekursive Hardware" überhaupt möglich ist und erstaunlicherweise ist sie das - mit der Einschränkung, dass man eben die Rekursionstiefe beschränken muss. Der Hauptspeicherverbrauch des Synthesetools beim "Bauen" ist für das Ergebnis einigermassen unerheblich: das belegt nämlich tatsächlich locker auch im kleinsten verfügbaren FPGA weniger als 10%.
Schon klar, dass der den Hauptspeicher für die Berechnung des Layouts braucht.
mfro hat geschrieben:
Mo Aug 26, 2019 7:47 pm
VHDL ist eine vollwertige Programmiersprache (die unverkennbar von Ada abstammt), mit Packages, Funktionen, Prozeduren, Records und Pointern (wollte man, könnte man damit auch einen Editor schreiben), aber nur ein Subset davon lässt sich tatsächlich in Hardware (Flipflops und kombinatorische Logik als Netzliste) umsetzen (man muss sich also einschränken, wenn Hardware draus werden soll). Aus der Netzliste baut der Fitter (ähnlich des Autorouters bei einem Platinenlayoutprogramm), das Ergebnis kann man auf ein FPGA laden oder - wenn man sich's leisten kann - in der nächsten Chipschmiede um die Ecke in Silikon "giessen" lassen.
Das klingt nicht uninteressant....

Gibt's da ein passendes Tutorial zu, bzw. wo lernt man sowas? Ich habe da keine Ahnung von, aber ich spiele gerade gedanklich ein paar Ideen durch, zum einen als Compilerbauer, zum anderen als Softwareentwickler von Software, die rechenaufwendig ist...
Die 60ns für eine rekursive Abarbeitung eines fib(20) klingen nämlich durchaus interessant, dass man da mal etwas mit experimentieren könnte.
Ich stelle mir eine PCIe Karte vor, auf der dann rechenintensive Algorithmen ausgelagert werden.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

mfro
Beiträge: 311
Registriert: Mi Jan 16, 2013 4:58 pm

Re: Fibonacci-Folge / Benchmarks

Beitrag von mfro » Fr Aug 30, 2019 5:53 am

Xin hat geschrieben:
Di Aug 27, 2019 9:27 am
Ich stelle mir eine PCIe Karte vor, auf der dann rechenintensive Algorithmen ausgelagert werden.
Das ist genau der Grund, warum Intel vor nicht allzu langer Zeit Altera (einen der beiden grössten Hersteller von FPGAs) gekauft hat. Die wollen wohl künftig Server-Boards mit integrierter, konfigurierbarer Hardware anbieten.

Den Kauf fanden wohl auch alle ganz toll - ausser den Jungs von Altera. Leider scheint sich Intel nun mit der Integration ein wenig schwer zu tun, seither ist von dort praktisch nichts Neues gekommen. Die scheinen sich nur damit beschäftigt zu haben, auf das Altera-Zeugs überall das Intel-Logo draufzukleben.
It's as simple as that. And remember, Beethoven wrote his first symphony in C.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8499
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Fibonacci-Folge / Benchmarks

Beitrag von Xin » Fr Aug 30, 2019 3:44 pm

Was gibt da für Erfahrungen?

Bist Du da losgezogen, hast Dir ein Board gekauft und dann damit gearbeitet oder ist das alles simuliert?
Und ich sehe vor allem kleine Mainboards mit zig Anschlüssen. Für mich stellt sich gerade die Frage, ob man gewisse rechenintensive Algorithmen auf eine PCI-Karte auslagern könnte.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

mfro
Beiträge: 311
Registriert: Mi Jan 16, 2013 4:58 pm

Re: Fibonacci-Folge / Benchmarks

Beitrag von mfro » Fr Aug 30, 2019 5:32 pm

Xin hat geschrieben:
Fr Aug 30, 2019 3:44 pm
Was gibt da für Erfahrungen?

Bist Du da losgezogen, hast Dir ein Board gekauft und dann damit gearbeitet oder ist das alles simuliert?
Und ich sehe vor allem kleine Mainboards mit zig Anschlüssen. Für mich stellt sich gerade die Frage, ob man gewisse rechenintensive Algorithmen auf eine PCI-Karte auslagern könnte.
Genau. Board kaufen und loslegen. Und dann sich erst mal monate- bis jahrelang wundern, was da alles anders ist :lol:
Ernsthaft: am besten vergisst man erstmal alles (oder das meiste davon), was man bis dahin über Programmieren gelernt hat. Man fängt praktisch bei NULL an. Das ist nicht Programmieren (auch wenn's so aussieht), das ist digitale Schaltungen entwickeln.

Wenn ein FPGA ernsthaft mit einem modernen Vielkern-GHz-PC konkurrieren (bzw. ihn überflügeln) soll, muss sowohl das Problem geeignet sein (überlange Bitbreiten, massiv parallele Algorithmen, möglichst Integer- oder Fixpunktarithmetik) als auch der Entwickler was drauf haben (Pipelining, z.B.). Ansonsten zieht er den Kürzeren.
It's as simple as that. And remember, Beethoven wrote his first symphony in C.

Antworten