21.04.14 09:11 Uhr
 10.805
 

Raytracing-Demo "The Timeless" zeigt, was mit nur 64 Kilobyte Speicher möglich ist

Auf der Demoszene-Party "Revision 2014" in Saarbrücken hat ein Programmierer das Raytracing-Demo "The Timeless" eingereicht.

Das Erstaunliche dabei ist, dass der kleine Algorithmus des Echtzeit-Rendering-Demos inklusive der Musik gerade einmal einen Speicher von 64 Kilobyte benötigt.

Der Autor schrieb den OpenGL-Code unter der Shading-Language in der 4.3 Version.


Videoplayer auf dieser Seite ausblenden
WebReporter: montolui
Rubrik:   High Tech
Schlagworte: Demo, Speicher, Möglichkeit, Raytracing
Quelle: www.phoronix.com

Jetzt Deinen
Kommentar abgeben!

DAS KÖNNTE DICH AUCH INTERESSIEREN

Cyberangriff: ThyssenKrupp von Hackern angegriffen
Auswertung: Was Pegida-Fans auf Facebook gefällt
Twitter-Chef Jack Dorsey findet Donald Trumps Tweets "kompliziert"

Diese News zu meinen Favoriten hinzufügen Beitrag abgeben

19 User-Kommentare Alle Kommentare öffnen

Kommentar ansehen
21.04.2014 09:40 Uhr von Hanna_1985
 
+7 | -5
 
ANZEIGEN
... und jetzt warte ich auf den C64-Port :D

Aber wirklich beeindruckend, was die Programmierer heute so erschaffen können...
Kommentar ansehen
21.04.2014 09:48 Uhr von Jlaebbischer
 
+15 | -1
 
ANZEIGEN
Auch wenn man deutlich erkennt, dass alle Objekte unzählige Male kopiert wurden, es ist verdammt bemerkenswert, das man mit 64Kb Speicher alles anstellen kann, wenn man sich Müghe gibt.

Wenn ich mir vorstelle, ein paar derartige Genies würden es schaffen, ein Spiel zu programmieren...
Kommentar ansehen
21.04.2014 10:02 Uhr von wite
 
+5 | -11
 
ANZEIGEN
mein erster computer (1983) hatte sein betriebssystem in 48 kb gepackt
Kommentar ansehen
21.04.2014 10:49 Uhr von stoske
 
+34 | -1
 
ANZEIGEN
Naja, die 64 kB beziehen sich, wie immer bei solchen Demos, auf die nackten Daten des Inhaltes. Die Darstellung übernimmt OpenGL, was ein ziemlich komplexer Klotz ist. Genauso könnte man beeindruckt sein, wie klein Midi-Daten sind, die lediglich enthalten, wann und wie lange ein Instrument gespielt wird, welche aber selbst aus der Hardware des Gerätes kommen. So wie hier 99% der Ausgabe von der Grafikkarte und OpenGL ausgeführt werden. Ein anderes Beispiel ist Postscript, da ist die Beschreibung auch nur winzig während die eigentliche Leistung im Interpreter der Hardware steckt. Bedeutend beeindruckender waren solche Demos in der 80ern, wo der Code tatsächlich auch alle Routinen der Darstellung enthielt und völlig unabhängig von externen, komplexen Libraries war.
Kommentar ansehen
21.04.2014 10:51 Uhr von Mecando
 
+3 | -4
 
ANZEIGEN
"Wenn ich mir vorstelle, ein paar derartige Genies würden es schaffen, ein Spiel zu programmieren..."

Sicher ein sehr gut Leistung, aber das hat nichts mit Genie zu tun. Solche Spielereien gibt es schon seit über 20 Jahren zu genüge.

Hier geht es um einen geringen Speicherbedarf, bezogen auf den kompilierten Quelltext. Nachteil dieses geringen Speicherbedarfs ist ein erhöhter Leistungsbedarf. Oder simpler Ausgedrückt: Muss ich weniger Speichern, muss ich mehr berechnen.

Würden nach dem Motto Spiele programmiert werden, so wie von dir scheinbar gewünscht, dann wären die Systemanforderungen um einiges höher.
Also wird ganz einfach ein Teil vorgerendert um die Systemresourcen zu schonen.
So teuer ist Speicher ja nun nicht wirklich, daher macht es schon Sinn Spiele nicht so speichereffizient zu erstellen, dafür aber resourcenschonender.
Kommentar ansehen
21.04.2014 11:55 Uhr von Joeiiii
 
+1 | -0
 
ANZEIGEN
In der heutige Zeit ist es zum Glück, aber auch leider, so, daß man nicht mehr allzu sehr auf den Speicherverbrauch achten muß, denn die Zeiten der Festplatten, die kleiner als ein Gigabyte sind, sind längst vorbei. Weil jedem normalsterblichen PC-Besitzer Hunderte Giggabyte oder vielleicht sogar mehrere Terabyte an Speicher zur Verfügung stehen, ist es egal geworden, ob ein Programm 500kb, 9MB oder 100MB groß ist.

Ich finde es schade, daß man so verschwenderisch mit Speicherplatz umgeht, was ja meist daher kommt, daß das Programm aus unoptimiertem Code besteht, in dem viel unnötiger Müll drin steckt, der das Programm nur aufbläht.

Ein Negativbeispiel eines Speicherwahnsinns gefällig?

http://www.shortnews.de/...

Fast 100GB allein für die Firmware und damit ein Fünftel der 500GB-Festplatte? Hallo? Gehts noch!! Da kann mir keiner sagen, daß es da nicht nahezu unendlich viele Optimierungsmöglichkeiten gäbe.

[ nachträglich editiert von Joeiiii ]
Kommentar ansehen
21.04.2014 12:18 Uhr von stoske
 
+1 | -0
 
ANZEIGEN
@Joeiiii: Auf Ebene der Logik, sprich dem Programm selbst, gibt es keine Verschwendung. Im Gegenteil, heutige Compiler sind extrem effektiv. Die Firmware der PS4 ist nur wenige MB groß, der Rest, also gut 98% sind grafisches und akustisches Material. Der verlinkte Artikel unterscheidet nur nicht.
Kommentar ansehen
21.04.2014 17:02 Uhr von Purposer
 
+1 | -0
 
ANZEIGEN
Der Code hat 64 Kilobyte, die Daten die durch die Algorythmen generiert werden sind aber mehrere Gigabyte groß. Es wird also fälschlicher Weise suggeriert, dass dies mit 64 Kilobyte Speicher möglich wäre. Sachlich ist diese News einfach falsch.
Kommentar ansehen
21.04.2014 19:10 Uhr von sv3nni
 
+1 | -0
 
ANZEIGEN
hm.. 10 fps. haette eigentlich erwartet dass es schneller laeuft
Kommentar ansehen
21.04.2014 19:42 Uhr von ako82
 
+1 | -0
 
ANZEIGEN
alles wird immer kleiner. hardware sowieso und software eben auch.
Kommentar ansehen
21.04.2014 19:53 Uhr von bigpapa
 
+1 | -0
 
ANZEIGEN
@wite

Mein erster Computer hatte 1 KB Ram (1024 Bytes) und da lief sogar ein Schach-Prg. mit "Grafik" drauf.

Das Problem ist das die heute 1000 von fertigen DLL´s nehmen, und dann daraus was zusammen kochen.

Vorteil : Schnelle und einfache Programmierung.

Nachteil der ganzen ganzen. Alles wird der selbe Einheitsbrei.

Gute Innovative Spiele mit coolen Ideen und neuen Konzepten hab ich seit Jahren keins mehr gesehen.

Gruß

BIGPAPA

ps. : Der genannte Computer nannte sich ZX-81. Und ich habe ihn sogar selbst zusammen gelötet weil der Bausatz 100 DM preiswerter war.
Kommentar ansehen
21.04.2014 20:00 Uhr von Mecando
 
+1 | -0
 
ANZEIGEN
"Aktuelle Vollpreis Spiele verwenden Genauso OpenGL oder DirectX,..."

Nein, echt? ...

Was ändert das an dem Umstand, dass solche Vollpreispiele (Dir ist der Unterschied zwischen einer Techdemo und ´nem Vollpreisspiel schon klar, oder?) massenhaft vorgerenderten Content haben?

Beim Appdesign ist es ähnlich:
Ich kann die Grafiken problemlos auch per Quelltext erzeugen, dennoch hinterlege ich sie lieber als fertige Grafiken. Man merkt einen Vorteil bezüglich der Resourcenauslastung, zu einem Nachteil in Sachen Fest- bzw. Arbeitsspeicher.
Kommentar ansehen
21.04.2014 21:33 Uhr von wombie
 
+1 | -0
 
ANZEIGEN
Eh... nach Raytracing sieht das aber eher nicht aus.
Kommentar ansehen
21.04.2014 23:01 Uhr von alex070
 
+2 | -0
 
ANZEIGEN
Wer meint die Größe von compilierter Voll-Software (im Vergleich zu TechDemos) steht in einem direkten Verhältnis zur Güte der Programmierung und dazu Vergleiche von Programmiersprachen und Konzepte aus den 90zigern heranzieht ist wohl eher schon ne ganze Weile nicht mehr in der Materie.

Gerade durch die Objektorientierung und Auslagerung in spezialisierte Bibliotheken ist die Effizienz der Ausführung massiv gesteigert worden. Nicht jede "bastelt" sich seine eigenen fehlerbehafteten langsamen Routinen, sondern kann bereits optimierte einbinden und benutzen. Reichen die nicht aus müssen Spezialisten her.

Früher war es einfacher, es gab nur die Hardware und die Betriebssystem-Software (Basic, C64, ....). Jeder Programmierer konnte noch alles alleine überblicken. Heute gibt es spezialisierte Programmierer für jeden Bereich oder halt Bibliotheken.

Sicherlich verschwenden manche Programmierer damals wie heute Ressourcen, aber dies aus der Größe der Software auf der Festplatte abzuleiten ist zu reduziert gedacht.

kkrieger ist ne tolle Sache, aber nicht mit einem kompletten Spiel zu vergleichen.

Ich mag Demos, sie reduzieren alles auf Licht, Farben und Effekte mit hoher Effizienz bei äußeren Schranken (64kb), aber sie sind bei weitem keine Anwendersoftware. Sie sind Demos.
Kommentar ansehen
22.04.2014 01:21 Uhr von bigpapa
 
+0 | -0
 
ANZEIGEN
@alex070 und andere.

Es geht nicht um den Verbrauch auf der Festplatte. Das ist in Zeiten von TB-Platten eh unwichtig.

Es geht um Arbeitsspeicher. Dessen Ausnutzung und den Zugriff auf verfügbare Ressourcen. Und da liegt das Problem. Schon schlimm genug das Windows damit nicht umgehen kann (was Historisch bedingt ist), so machen die Programmierer es ihnen gleich.

Ich habe ein 8-Kerne CPU und trotzdem merke ich das die Programme nicht wirklich schneller sind. Grund ist einfach das man mit Ressourcen nur so verschwenderisch umgeht. Ich habe lt. Taskmanager /CPU - Auslastung es nicht nie geschafft 100 % zu erreichen. Ich finde aber das eine CPU bei ca 95% laufen sollte (Es sei den das Programm sagt expliziert es will das nicht).

Die CPU´s der Homecomputer liefen immer mit fast Volllast. Na und, Sie sollten ein Job erledigen und das bitteschön zügig.

Denkt mal drüber nach.

Gruß

BIGPAPA
Kommentar ansehen
22.04.2014 07:51 Uhr von aminosaeure
 
+0 | -0
 
ANZEIGEN
Programmierer verhalten sich wie ideale Gase, sie füllen jeden vorhandenen Raum aus.
Kommentar ansehen
22.04.2014 08:35 Uhr von alex070
 
+0 | -0
 
ANZEIGEN
@bigpapa

Multikern/-threading Probleme sind ja nochmal ein eigenes Thema. Deine 8 Kerne (vermutlich 4 Kerne + 4 Hyperthread oder doch 2 CPUs?, egal) werden einfach nicht optimal angesteuert weil die Softwaare dafür nicht optiomiert ist.

Muss sie eigentlich auch nicht, die meisten Aufgaben lassen sich einfach nicht parallel sinnvoll lösen.

Das Auslastungsverhalten hingegen wird primär von dem Prozess-Scheduler beeinflusst und nicht von der Anwendungssoftware. Sie bekommt die Ressourcen nur zugeteilt und läuft dann ab.

[ nachträglich editiert von alex070 ]
Kommentar ansehen
22.04.2014 23:53 Uhr von Gorli
 
+0 | -0
 
ANZEIGEN
Der Algorithmus für das Madelbrot hat im grunde nur 136 bit (2 Gleitkommazahlen und ein Operator). Aber daraus wird noch lang kein Bild. Das OpenGL gehört schon dazu.
Kommentar ansehen
23.04.2014 10:08 Uhr von ksros
 
+0 | -0
 
ANZEIGEN
Wie hier schon erwähnt, handelt es sich im eine ausführbare Datei, die 64KB groß ist und weit mehr als 64KB Arbeitsspeicher belegt.

Es geht aber auch mit 256 Byte Filegröße
http://www.pouet.net/...

Refresh |<-- <-   1-19/19   -> -->|
Diese News zu meinen Favoriten hinzufügen Beitrag abgeben


Copyright ©1999-2016 ShortNews GmbH & Co. KG

Die News auf dieser Website werden eigenverantwortlich von Nutzern erstellt. Die Shortnews GmbH & Co. KG nimmt keinen redaktionellen Einfluss auf die Inhalte.

impressum | agb | archiv | usenet | zur mobilen Ansicht
SCHLIESSEN

Willst Du die Seite wirklich verlassen?


DAS KÖNNTE DICH AUCH INTERESSIEREN

USA: Astronaut John Glenn ist tot
Pro Asyl beklagt Kurswechsel der CDU in Flüchtlingspolitik
Jeder zehnte Arbeitnehmer hat nur einen befristeten Job


...oder unseren und keine aktuellen News mehr verpassen?