Intel auf der CES 2012: Ultra, Ultra, Ultrabooks!

veröffentlicht von am 10. Januar 2012 (0) Kommentare

Wie jedes Jahr im Januar zieht die Karawane ins blinkende Las Vegas, der neuesten IT-Neugikeiten wegen. Denn mitten in der Wüste findet die Consumer Electronics Show (CES) statt, die nach eigenen Angaben größte Veranstaltung ihrer Art. Na ja, wenn das mal stimmt…

Was aber auf jeden Fall stimmt sind die vielen News, die sich um Intel ranken werden. Der Chiphersteller ist natürlich auch vor Ort, um wieder viele interessante und bemerkenswerte Dinge zu zeigen. Und da wir unserer Chronistenpflicht genügen wollen, steht diese Woche ganz im Zeichen der CES 2012.

Eigentlich beginnt ja die CES 2012 erst heute, und zwar um 17:30 Uhr unserer Zeit. Da wird Gary Shapiro, President & CEO der veranstaltenden CEA, die Bühne betreten, um die IT-Messe hoch offiziell eröffnen. Und um 16:3o Uhr Las-Vegas-Zeit (1:30 Uhr, 11.1.)  hält Paul Otillini seine Eröffnungs-Keynote, die sicherlich ein gutes Stück technischer sein wird als die von Gary Shapiro.

Worüber Paul reden wird, davon konnte sich bereits gestern die anwesende Presseschar überzeugen, als Mooly Eden, seines Zeichens Vice President und General Manager der PC Client Group, im Rahmen einer Presseveranstaltung Intels Vision der nächsten Ultrabook-Generation vorstellte. Und ich muss sagen: das sieht alles ganz hübsch aus, was der Chiphersteller gemeinsam mit seinen Partner in den kommenden Monaten plant.

Ganz oben auf der Liste stehen windschnittige Ultrabooks, die im Stile des Apple Macbook Air daher kommen, aber laut Eden viel mehr können als ein leichtgewichtiges Netbook oder Tablet. Dabei zeigen erste Konzepte und Geräte, dass diese neue Generation von Notebooks genau das vereinen: das Gewicht eines Netbooks, die intuitive Bedienbarkeit eines Tablets und die Rechenleistung eines ausgewachsenen Notebooks. Und das alles hoffentlich zu einem Preis, der unterhalb des Macbook-Air-Preises liegt, also ein Stück unter 1.000 Euro.

Das Gute an diesen Ultrabooks ist also ihre Vielseitigkeit. Sie sind ultramobil, da sie kaum mehr wiegen als ein Kilo und damit keine Rückenschmerzen mehr verursachen wie Ihre Laptop-Brüder und -Schwestern. Und sie lassen sich per Touchscreen bedienen, und zwar ganz einfach und ganz intuitiv. Jeder, der schon mal ein iPad in den Händen gehalten hat, wird verstehen, was ich meine. Und zum dritten basieren Ultrabooks auf Intel-Prozessoren, die ihren Namen wirklich verdienen. Das heißt für Anwender, dass sie in Sachen Rechenleistung keine Abstriche hinnehmen müssen. Dafür werden neue Prozessorarchitekturen wie Ivy Bridge und Cover Trail sorgen, die im Laufe dieses Jahres erste Geräte ermöglichen sollen, die all die genannten Eigenschaften aufweisen.

So wird Ivy Bridge die verbesserte Fertigungstechnik darstellen, mit denen Intel Mainstream-Prozessoren zum ersten Mal mithilfe eines 22-nm-Fertigungsverfahrens produziert werden. Die Folge: die Transistoren benötigen weniger Strom, was wiederum zu längeren Akkulaufzeiten führen wird, wie sie ja gerade in Ultrabooks – und Tablets – gewünscht und erforderlich sind. Aber auch eine verbesserte Onboard-Grafik (inklusive DirectX 11) und höhere Taktraten werden Ivy Bridge auszeichnen. Man darf gespannt sein.

Was Mooly Eden auf der Presseveranstaltung auch gezeigt hat, sehen Sie sich am besten selbst an: ein Ultrabook mit eingebautem Beschleunigungssensor. Damit lassen sich Spiele und andere Anwendungen per Kippen und Drehen des Books steuern. Sehr schick!


Kategorien : Mobile Tags : , ,

Neue Programmiersprache für das Parallelisieren von Anwendungen: Parasail

veröffentlicht von am 1. September 2011 (0) Kommentare

Gerade macht im Web und anderswo eine neue Programmiersprache die Runde: Parasail. Diese von SofCheck entwickelte Sprache lehnt sich an zahlreiche bekannte Modelle an, was eine bunte Mischung aus ML, OCaml, F#, Lisp, Scheme, Clojure, Algol, Pascal, Modula, Ada, Eiffel, C/C++, Java, und C# ergibt.

Das Hauptmerkmal von Parasail ist seine Schlichtheit: es werden lediglich Module, Typen, Objekte und Operationen unterstützt. Und sie ist per Definition thread-sicher. Damit sind wohl leistungsfähige, parallelisierte Anwendungen möglich, die robust und absturzsicher sind.

Der zugehörige Compiler zeichnet sich nämlich durch weitreichende Sicherheitsmechanismen aus: so wird eine Anwendung zur Laufzeit auf kritische Fehler wie Data Races und andere heimtückische Probleme untersucht. Darüber hinaus werden sämtliche externen Anwendungen blockiert, die von vom Parasail-Compiler als unsicher eingestuft werden.

Wenn dieses Konzept in der Praxis tatsächlich aufgehen sollte, wäre das eine großartige Gelegenheit für Software-Entwickler, leistungsfähige Anwendungen zu programmieren, die einerseits hochperformant auf Multicore-Maschinen laufen und gleichzeitig dank eingebauter Sicherheitsmechanismen unfallfrei auf jedem Rechner laufen sollen, da Dead Locks und Konsorten draußen bleiben würden. Allerdings lässt die erste Version des Parasail-Compilers samt virtueller Laufzeitumgebung noch auf sich warten: Der derzeit verfügbare Prototyp soll erst in den nächsten Wochen fertig werden.

Doch was ist aus technischer Sicht so interessant an Parasail, was übrigens für Parallel Specification and Implementation Language steht? Nun, hierzu ein paar interessante Fakten zu dieser neuen Sprache:

  • Pre- und Post-Konditionen, Bedingungen, etc. sind allesamt in der Syntax verankert
  • es gibt keine globalen Variablen
  • Symbole, Indizierungen, Aggregatoren, etc. können alle vom Entwickler selbst definiert werden
  • eingebaute Parallelität; das bedeutet auch, dass es mehr Aufwand bedeutet, sequentielle Programme zu schreiben
  • Module bestehen aus einer Schnittstelle und diversen Klassen, mit denen sich die Module implementieren lassen
  • die verschiedenen Typen sind Instanzen der Module
  • die Objekte sind Instanzen der Typen
  • die Operationen werden innerhalb der Module definiert und arbeiten mit einem oder mehreren Objekten oder spezifizierten Typen.

Allerdings gibt es ein noch nicht gelöstes Problem von Parasail: Wie bringe ich die Entwickler-Gemeinde dazu, eine ganz neue Programmiersprache zu lernen, die zwar das Beste bekannter Programmiersprachen nutzt, aber trotzen einen neuen Ansatz verfolgt? Nun, zumindest scheint der Zeitpunkt des Erscheinens von Parasail ganz geschickt gewählt zu sein, da nach wie vor bestehende Konzept keine zufrieden stellenden Antworten auf die Frage liefern, wie sich Parallelprogrammierung ohne größere Komplikationen umsetzen lässt. Oder?!

Mehr Infos zu Parasail finden Sie übrigens auf dem zugehörigen Blog.

Kategorien : Multicore Tags : , ,

Multithreading-Konzepte: OpenMP, APIs und Intel TBB

veröffentlicht von am 21. November 2008 (0) Kommentare

Für die parallele Programmierung bieten sich diverse Alternativen an, von denen hier drei vorgestellt werden sollen: OpenMP, Threading-APIs und Intel Threading Building Blocks.

OpenMP: Diese Threading-Methode ist relativ simpel zu handhaben, da in den Quellcode sogenannte Pragmas eingebaut werden, die der jeweilige Compiler richtig interpretieren kann – oder auch nicht. OpenMP eignet sich vor allem für die Parallelisierung einfacher Schleifenkonstrukte und prozeduraler Datenstrukturen. Aufgrund seiner Historie lässt sich OpenMP gut in nativen Programmierumgebungen (C++ und Fortran) einsetzen, dafür leider gar nicht in managed Code (C#, .NET).

Threading-APIs: Spezielle Threading-APIs wie Win32- oder POSIX eignen sich nicht so gut zum Implementieren von Parallel-Code. Dabei werden die Multithreading-Konstrukte in eigenen Funktionen verpackt. Die Ergebnisse werden dann als Pointer übergeben, und hier steckt die Schwierigkeit bei der Arbeit mit Threading-APIs: Funktionsprototypen und Datenstrukturen müssen aufwendig modifiziert werden, was häufig die Abstraktion des Codes und das Programmdesign zerstört. Außerdem muss man sich als Programmierer selbst um das Erzeugen, Verwalten und Synchronisieren der Threads kümmern, was sehr mühsam ist. Daneben unterstützen Threading-APIs C++ nur sehr schlecht und oft gar nicht.

Intel Threading Building Blocks: Hierbei handelt es sich um eine C++-Bibliothek, die ähnlich wie die Standard Template Library eines herkömmlichen Compilers aufgebaut ist. Die Intel TBB stellen hochentwickelte Abstraktionsmodelle zur Verfügung, um eine flexible Programmierung zu ermöglichen. Das bedeutet, dass beispielsweise Iteratoren, die in Container verpackt sind, mithilfe der Intel TBB relativ einfach parallelisiert werden können.

Die Idee hierbei ist recht simpel: Anstatt Threads spezifiziert man einzelne Aufgaben (Tasks), die der TBB Scheduler auf die vorhandenen Hardware-Threads abbildet. Man muss sich also nicht mehr um die Synchronisation der Threads und ähnliches kümmern. Außerdem skaliert eine mithilfe der Intel TBB parallelisierte Anwendung sehr gut, da je nach verfügbaren Prozessorkernen und damit verbundenen Threads die Software um ein Vielfaches schneller ausgeführt werden kann.

Kategorien : Multicore Tags : , , ,