dWing — die Welt ist nicht gerecht

sign in

Tagesrückblick 2010-02-25

Ich habe meinen Server weiter optimiert, nun schafft die komplexe Startseite von dWing 150 Zugriffe pro Sekunde, einfachere Seiten schaffen bis zu 400.

Es pisst mich total an, dass Michael Larabel immer noch keine Bootcharts lesen kann.

Habe selbst auch mit Lucid experimentiert… Leider funktioniert Nouveau KMS nicht auf meinem Laptop. Das Bild wird schwarz und nichts geht mehr. Vielleicht sollte ich einfach probieren mein Passwort einzugeben, vielleicht wird dies akzeptiert obwohl der Bildschirm Schwarz bleibt.

Ohne Worte

public class ContentItemServiceImpl implements ContentItemServiceLocal, ContentItemServiceRemote {
	// …
	public void updateTextContentWithoutStoringPipeline(ContentItemI item, String content) 
		throws TextContentNotChangedException {
		
		ContentItem _item = item.getDelegate();
		
		if(renderingPipeline.renderEditor(_item.getTextContent()).equals(content)) {
			throw new TextContentNotChangedException("Could not create TextContentUpdate for an unchanged text content");
		}
		// …
	}
	// …
}

Effiziente Resource-Dateien

In einem meiner letzten Beiträge hatte ich das Laden von Spielinhalten in aktuellen Spielen kritisiert und davon geträumt, dass Spielinhalte mit mmap() in den Prozessspeicher abgebildet werden aber tatsächlich im pagecache des Betriebssystems liegen. Nun habe ich einen sehr interessante Blog Eintrag über effiziente Ressourcenverwaltung in einer Engine gelesen. Dabei werden die Inhalte direkt als C-Strukturen in Dateien geschrieben und von denen direkt gelesen.

Irgendwie finde ich es toll, dass jemand anders die selben Ideen wie ich hat und diese auch umsetzt, ich werde mich auf die Engines freuen die so etwas umgesetzt haben.

Tagesrückblick 2010-01-26

Ich habe mir vorgenommen etwas öfter zu bloggen. Möglicherweise im Stil kleiner Tagesrückblicke.

Ich habe den ersten Schritt gemacht und habe gelernt wie in Mozilla ein neues CSS Property definiert wird. Es war komplizierter als ich dachte. Die Teile für den Parser und die DOM Unterstützung sind getrennt aber auch darüber hinaus gibt es sehr viele Dateien in denen man etwas rumwerkeln muss. Leider fehlt mir jetzt die Motivation die nächsten Schritte auch zu tun.

Ich bin auf das LuxRender Wiki gestoßen. Dort werden Erfahrungen mit OpenCL im Bezug zu Path Tracing gesammelt. Intel arbeitet ja seit langer Zeit an spielefähigem Ray Tracing. Dafür OpenCL und somit die Grafikkarte zu nutzen liegt sehr nahe. Scheinbar kann man damit auch sehr gute Ergebnisse erzielen.

Über Umwege bin ich dann zu einem kleinen Tutorial gelangt, wie man Schrittweise die Größe von Linux Executables verkleinert. Ein simples C Programm wird von ~4K auf 45B geschrupft. Es ist zwar keine valide ELF Datei mehr, aber wird trotzdem von Linux ausgeführt. Sehr interessant zu lesen, auch wenn es keine praktische Bedeutung hat.

In letzter Zeit spiele ich immer mehr Team Fortress 2. Um mich zu entspannen und vom Leben abzulenken. Aber es lädt extrem lange und hängt dabei auch noch das gesamte Betriebssystem auf. Experimente im Fenstermodus und mit dem Windows Resource Monitor haben gezeigt, dass die Festplatte für einige Zeit zwar voll ausgelastet ist, aber keine Daten liefert. Für den Steam Prozess werden über 10 Sekunden bei der Reaktionszeit einiger Lesezugriffe angezeigt. Ist auch logisch, dass während dieser Zeit keine anderen Daten gelesen werden können und somit keine neuen Prozesse wie beispielsweise der STRG+ALT+ENTF Prozess gestartet werden können. Der Verdacht liegt nahe, dass etwas mit der Laptop Festplatte nicht stimmt. Unter Linux zeigt es mir bereits seit längerer Zeit einen Fehlerhaften Sektor an. Da heißt es demnächst nochmal Backup machen.

Die Kombination aus Steam und TF2 ist außerdem absolut ineffizient. Steam selbst braucht 80M und TF2 in Fenstermodus mit niedrigsten Grafikeinstellungen 600M. Auf hohen Einstellungen frisst es 1G. Die Grafik läuft flüssig aber da das OS viel swapt hat man merkbare Hänger drin. Sowieso ist es komisch, dass die TF2 Content Dateien von Steam gelesen werden und danach einige vom TF2 Prozess wieder auf die Festplatte geschrieben werden. Das Digitale Rechte Management von Steam schlägt da enorm auf die Ladezeit und Effizienz. Ich wünschte mir, dass 64bit bei Spielen endlich Einzug hält und die Spielinhalte mit mmap() in den Adressraum abgebildet werden. Somit würde das Spiel weniger RAM verbrauchen und das Betriebssystem könnte den Page-Cache effizienter verwalten.

Freie Video Formate und Idealismus

Die letzte Woche ist ein sehr positiver Trend zu erkennen. Sowohl Youtube als auch Vimeo stellen auf HTML5 <video> um. Somit sind die Tage von Flash hoffentlich gezählt.

Was allerdings bei beiden Diensten negativ auffällt ist die Fixierung auf H264. An sich ist es ein super Codec der qualitativ hochwertige und hochauflösende Inhalte bietet. Einen nachteil hat er allerdings: Der Codec verwendet patentierte Technologie. Dies ist auch der Grund warum Mozilla ihn nicht einsetzen will.

Robert O'Callahan erläutert die Gründe nochmals im Detail. Die Lizenzen für H264 sehen nicht nur Abgaben für Softwarehersteller wie Mozilla vor, die De- und Encoder entwickeln. Weiterhin sollen auch die Ausstrahlung mit einer Gebühr belegt werden.

Angesichts dessen ist es für mich noch weniger verständlich wieso Video Portale auf H264 setzen, wenn sie für die Ausstrahlung solcher Videos gebühren bezahlen müssen. Die Lizenzpolitik der MPEG-LA ist darüberhinaus sehr verwirrend und ändert sich Anfang nächsten Jahres grundlegend.


Besonders gefallen hat mir an Rocs Eintrag, dass Mozilla als Idealist hervorgehoben wird, dem die Freiheit des Web und dessen Benutzer am Herzen liegt. Noch ein Grund mehr, dass ich die Zweifel an mir selbst endlich überwinden muss und doch diese Richtung einschlagen sollte.

Die Kontakt- bzw. Rekrutierungsmesse an der FH am Donnerstag war interessant. Ich konnte einige technische Diskussionen mit Firmenvertretern führen. Alle samt waren sie daran interessiert technisch hochwertige Software zu schreiben und sagten, dass sie mitdenkende Mitarbeiter eher wünschen als welche die nur nach Befehlen handeln. Dennoch habe ich bei keinem der anwesenden Unternehmen eine Art Idealismus verspürt die (Software-)Welt in Richtung mehr Freiheit zu verändern.

Mein fünftes Semester dauert noch vier Tage lang, es stehen mir noch einige Klausuren bevor. Ich bin froh wenn es endlich vorbei ist. Leider habe ich größtenteils schlechte Gefühle wenn ich an mein bevorstehendes Praktikum denke.


older posts