Moblin zu Testzwecken auf einem USB-Stick installieren
Ich habe gestern auf dem IT-techBLOG einen Workshop online gestellt, wie man Moblin auf einen USB-Stick packt, um es zu Testzwecken auf einem kompatiblen Netbook laufen zu lassen, ohne es gleich auf der Festplatte installieren zu müssen. Eigentlich sind es ja drei Workshops, da alle Windows-, Mac- und Linux-Anwender in den Genuss von Moblin-on-a-Stick kommen sollen. Viel Spaß damit!
Nützliche Online-Infos rund ums Parallele Programmieren
Über das künftige Multithread-Programmiertool Parallel Studio von Intel habe ich an dieser Stelle ja schon öfter berichtet. Und heute erreichte mich die Nachricht, dass es ab sofort eine komplett neu eingerichtete Webseite gibt, auf der es eine Menge Infos zu diesem Programmierwerkzeug gibt. Klar, dass ich mir das mal genauer ansehen musste.
Mein erster Gedanke zur neuen Webseite rund um die parallele Programmierung: sehr aufgeräumt. Denn die Seite besteht lediglich aus einer Handvoll von Verweisen auf Informationen, die sich mit den unterschiedlichen Aspekten des Parallel Computing befassen.
Dazu gehören nützliche Infos zu Parallel Studio, die nur einen Mausklick entfernt sind. Dort könnt ihr euch über die einzelnen Tools der Suite informieren (Composer, Inspector und Amplifier). Ihr könnt euch aber auch für das Beta-Programm eintragen oder sogar bei QT software oder der SOS Software Service GmbH bereits heute ein Paket von Parallel Studio vorbestellen. Oder seht euch einfach mal das Video an, dass Intel mit dem Parallel-Guru James Reinders gedreht hat.
Aber die Webseite hält auch eine Menge an Informationen für alle HPC-Enthusiasten (High Performance Computing) bereit. Hier geht es primär um die ganzen anderen Tools, die Intel für das Multithreaden und Optimieren von Hochleistungsanwendungen bietet. Die Rede ist also von Compilern, Threading Building Blocks, Integrated Performance Primitives, Math Kernel Library, Thread Checker und anderen Tools.
Übrigens: All diese Produkte können ausprobiert und auch gekauft werden. Und einige dieser Software-Pakete kann man sogar kostenlos nutzen, solange man damit keine kommerzielle Anwendungen baut.
Nützliche und kostenlose Entwickler-Tools
Kennen Sie eigentlich die Code- und Download-Seite des Intel Software Network? Nein?! Dann wird’s aber höchste Zeit. Auf dieser sehr nützlichen Webseite finden Sie diverse Tools, aber auch Sourcecode-Beispiele, die Ihre tägliche Arbeit rund um die Software-Entwicklung erleichtern und verbessern sollen.
Finden Sie zum Beispiel mit dem Concurrency Checker heraus, ob Ihre Software tatsächlich parallel programmiert wurde und wie sich der Multicore-Code zur Laufzeit verhält. So spüren Sie relativ einfach Fehler im Quellcode auf. Anhand der Ergebnisse wissen Sie dann schon mal ziemlich genau, wo es bei Ihrer Software in Sachen Multithreading hakt. Anschließend können Sie mithilfe der Intel Threading Analysis Tools die Fehler beheben und aus Ihren Anwendungen echte Multicore-Anwendungen machen.
Aber auch kostenlose Entwickler-Werkzeuge für nicht-kommerzielle Softwareprojekte finden Sie dort. Dazu gehören beispielsweise die Intel-Compiler (C++ und Fortran) für Linux sowie der VTune Performance Analyzer für Linux. Aber auch die C++-Multithread-Bibliothek Intel Threading Building Blocks lässt sich für nicht-kommerzielle Zwecke gratis nutzen.
Tipps, Infos & Tricks rund ums parallele Programmieren
Das Thema „Paralleles Programmieren“ ist ein weites Feld, auf dem man sich ohne die passenden Tipps und Tricks, ohne hilfreiche Anleitungen und nützliche Webseiten-Empfehlungen ziemlich schnell verirren kann. Aus diesem Grund hat das Medienunternehmen Jupiter Online Media gemeinsam mit seinem Partner Intel eine Webseite ins Leben gerufen, die genau das leisten soll: helfen, anleiten, empfehlen.
Diese Seite nennt sich go-parallel.com und berichtet in regelmäßigen Abständen über das parallele Multicore-Universum der Software-Entwicklung. Zu diesem Zweck ist die Seite in fünf Bereich unterteilt: „Getting Started“, „Concurrent Programming“, „Community and Opinion“, „Tools and Tips“ und „Advanced Concepts“.
So findet man in „Getting Started“ hilfreiche Anleitungen, wie man beispielsweise eine komplette TBB-Umgebung unter Windows einrichtet und wie die Programmierung einer TBB-kompatiblen Anwendung funktioniert. Aber auch Themen wie OpenMP werden dort behandelt.
Mehr Leistung mit mehreren CPUs: Multicore Computing
Der dritte und letzte Teil unserer kleinen Einführungsrunde hinsichtlich der Frage, was die Veranstaltung hier überhaupt soll, handelt vom Thema „Multicore“. Dass sich dahinter mehr verbirgt als die Frage, wie viele Kerne im Intel Core 2 Duo Prozessor stecken, dürfte klar sein. Es geht hier nämlich um zahlreiche Aspekte:
- Wie bringe ich meine Software dazu, auf Multiprozessorkern-Systemen optimal zu laufen?
- Welche Tools hat Intel für die Multicore-Optimierung meiner Software in petto?
- Welche Vorzüge bieten die Intel Threading Building Blocks und wie komme ich daran?
- Welche Ansätze parallelisierter Anwendungen gibt es eigentlich?
- Wie setze ich OpenMP für meine eigenen Software-Projekte sinnvoll ein?
- Wie programmiere ich überhaupt „multi-threaded“ Applikationen?
Darüber hinaus findet man auf der Multicore-Seite von Intel weitere nützliche Tipps und Hinweise. Zum Beispiel kann man via Feedburner Neuigkeiten aus dem Parallel-Universum abonnieren, die neuesten Blogeinträge lesen und sich im Forum umsehen, auf welche Hürden andere Programmierer stoßen.
Wenn Hard- und Software verschmelzen: Virtualisierung
Wichtig sind darüber hinaus einzelne Aspekte, mit denen sich Software-Entwickler beschäftigen sollten: Welche Virtualisierungsmodelle es gibt, wie sich virtuelle Anwendungen entwickeln lassen und was es mit der Intel VT für Netzwerk-Komponenten auf sich hat.Aber auch die technischen Online-Dokumente sollen Software-Entwicklern dabei helfen, das Thema Intel VT besser zu verstehen. Hierfür gibt es eigens eingerichtete Workshops, die zeigen sollen, wie sich eine virtualisierte Umgebung mithilfe von VMWare-Lösungen einrichten lässt. Oder wie man I/O-Schnittstellen für virtualisierte Zugriffe optimieren kann.
Teil zwei unserer kleinen Vorstellungsrunde „Was findet hier eigentlich statt?“ beschäftigt sich mit dem Thema Virtualisierung. Dass es sich hierbei um einen Begriff handelt, der sehr unterschiedlich genutzt wird, macht es nicht wirklich leichter. Wir wollen aber trotzdem versuchen, uns dem Thema ein wenig anzunähern.
Ein guter Start in die virtuelle Intel-Welt ist die Webseite Intel Virtualization Developer Community, auf der es eine Menge an nützlichen Infos zu entdecken gibt. Dazu gehören unter anderem Hintergrundinformationen rund um das Thema Virtualisierung: Warum Software-Entwickler die Virtualisierung ernst nehmen sollten, Vorteile der Virtualisierung in großen Unternehmen, Software-Design für virtualisierte Rechner und was hinter der Intel Virtualization Technology (Intel VT) steckt.
