programmierung

Matrix Multiplikation auf der Grafikkarte mit .NET und Cudafy

Tim Riemann
Die Parallelisierung von Algorithmen und Programmteilen hat mir schon immer Spaß gemacht und ich habe mir sogar zu Hause einen Rechencluster gebaut, mit dem ich experimentieren konnte. In der aktuellen dotnetpro Ausgabe (07/2013) beschreibt Bernd Marquardt, bei dem ich auf der Parallel 2012 Konferenz einen .NET TPL Workshop mitmachen durfte, in einem Artikel die Parallelisierung von Algorithmen mit AMP unter C++, die dann auf der Grafikkarte ausgeführt werden. Leider muss man hier immer noch den Umweg über C++ gehen, aber glücklicherweise gibt es für .

C# - Byte Array als Key in einem Dictionary / HashSet

Tim Riemann
Heute stand ich vor dem Problem, dass ich ein Byte Array als Index in einem Dictionary in .NET verwenden wollte. Das hat natürlich nicht funktioniert, da der Hash-Code von zwei inhaltsgleichen Byte-Arrays ungleich ist und dadurch der Vergleich beim Zugriff fehl schlägt. Wenn ich also überprüfen möchte, ob ein Key bereits in der Datenstruktur vorhanden ist, wird es immer fehl schlagen, da das erzeugte Objekt mit in den Hashwert eingeht.

DES / 3DES Verschlüsselungsbibliothek für Arduino

Tim Riemann
Für ein kleines Projekt auf dem Arduino Leonardo habe ich vor kurzem eine Crypto-Bibliothek gesucht, mit der ich DES und 3DES Nachrichten verschlüsseln und entschlüsseln kann. Leider bin ich nicht fündig geworden, bzw. zumindest nicht als Bibliothek für die Entwicklungsumgebung des Arduinos. Bei “Das Labor” gibt es aber eine hervorragende Crypto-Bibliothek für Atmel AVR Mikrocontroller – nichts anderes ist ja auch ein Arduino – also habe ich mir den DES / 3DES Teil geschnappt und ihn auf den Arduino portiert.

Neuer Spielkram

Tim Riemann
In den letzten Monaten habe ich mir einiges an komischen Zeug für diverse Projekte bestellt. Zu einem meiner Projekte zählt ein “Super 8 Digitizer”, also eine Vorrichtung, mit der man Super 8 Filme digitalisieren kann. Klar, man könnte einfach den Film an die Leinwand projizieren und dann abfilmen, das Problem ist aber dabei, dass ein Super 8 Film mit 18 fps läuft und eine Digitalkamera die Bilder mit 25 fps aufnimmt.

ProjectEuler.NET - was zum Knobeln für Zwischendurch

Tim Riemann
Eigentlich wollte ich schon lange mal wieder etwas bloggen, genug Material hatte ich ja schon dafür, aber irgendwie hatte ich bisher noch keine Lust. Trotzdem will ich jetzt ein Projekt vorstellen, mit dem ich momentan viel Spaß habe: Project Euler. Project Euler lässt sich relativ einfach beschreiben: Es werden mathematische Aufgaben gestellt, die mit Hilfe einer frei wählbaren Programmiersprache (oder halt auch nur mit einem Zettel, wenn man das kann) gelöst werden sollen.