Seit es den Raspberry Pi gibt, behaupten die Macher, er könne einen teuren Desktop-PC ersetzen. Ich teste das und begebe mich auf eine Reise ins Himbeerland.

Heute steht Programmierarbeit an, also starte ich die IDE PyCharm. Die möchte ein paar Sekunden das Projekt indexieren, also starte ich parallel Thunderbird, um schnell noch Mails abzurufen. Während das Mailprogramm noch die IMAP-Server abklappert, öffnet sich mein Firefox und fragt, ob ich 67 Tabs wiederherstellen möchte. Na klar! Das lässt mir gerade noch Zeit, Telegram zu starten, das als Electron-App nebenbei die Chromium-Engine hochfährt. Etwa eine halbe Sekunde nach dem Klick aufs Icon sind alle Programme einsatzbereit. Linux’ raffinierter Organisation von Rechenzeit und Festplattenzugriffen sei Dank.

Während ich noch meine E-Mails durchforste, entbrennt in meinem Büro eine Diskussion darüber, wie aufgeblasen moderne Software ist. Ich beteilige mich, indem ich an eine Wartezeit von skandalösen 1,5 Sekunden erinnere, die mein Anmeldemanager GDM gerade vertrödelt hat. "Wie viel unnötigen Kram berechnet die Software, wenn sie so lange braucht, ein Passwort zu prüfen und einen Desktop zu starten?", frage ich in die Runde. Die Zustimmung meiner Kollegen stachelt mich an: "Ein Smartphone hat genauso viele Kerne wie mein PC. Ach was! Ich könnte sogar auf dem Raspi arbeiten!" Ich ernte ein paar skeptische Blicke, was mich antreibt: "Mit der richtigen Software geht das bestimmt! Immerhin gibt es ja inzwischen den Raspi 3B+ mit 64 Bit, 1 GByte RAM und vier Kernen bei 1,4 GHz."

Die vier Prüfungen

Mir ist klar, dass ich mich für solch ein Abenteuer weit von meiner gewohnten Rechner-Umgebung entfernen muss, und suche Rat bei einem weisen alten Mann. Etwas aufgeregt klopfe ich an der Tür von Thorsten Leemhuis. Ich trete ein und warte geduldig, bis Thorsten zwei weitere Sätze ins Kernel-Log getippt hat. In die Stille zwischen den Anschlägen erkläre ich: "Ich möchte mit dem Raspi einen Desktop-PC ersetzen." Er mustert mich kritisch. Ich überspiele meine Unsicherheit, indem ich schneller rede: "Der neue Raspi ist ja noch höher getaktet und kann 64 Bit. Außerdem dürfte doch inzwischen ein Mainline-Kernel drauf laufen."

Thorsten schaut mich etwas mitleidig an. "Welche Distribution willst du einsetzen?" "Irgendwas mit einem ganz aktuellen Kernel. Arch Linux vielleicht? Damit habe ich von meinem PC schon etwas Erfahrung." Er wiegt den Kopf. Scheinbar habe ich nichts ganz Dummes gesagt. "Ohne Raspbian wirst du auf eine ganze Reihe von Detailproblemen und Stolpersteinen stoßen." Schon die Auswahl einer schnellen Speicherkarte sieht er als Problem. Außerdem solle ich mich in Geduld, Mäßigung, Fokus und Konzentration üben. Ich komme zu dem Schluss, dass Thorsten meinen Plan nicht komplett für Unsinn hält, ignoriere den Rest und mache mich auf den Weg.

Mäßigung

Im Büro gegenüber lasse ich mich von Lutz Labs beraten, unserem Spezialisten für Flash-Speicher. "Es gibt Speicherkarten nach dem A1-Standard, eigentlich für die Speichererweiterung von Smartphones. Die sollten auch auf dem Raspi etwas mehr IOPS liefern, als gewöhnliche Karten." Ich bestelle einen Raspi 3B+ für 35 Euro und eine Speicherkarte mit 128 GB für 55 Euro. Dazu kommt ein Netzteil, das mindestens 2,5 Ampere liefert, für 13 Euro. Mein Raspi-Desktop kostet in der Summe mehr als 100 Euro.

Danach lade ich ein 64-Bit-Arch-Image für den Raspi herunter, schreibe es auf die SD-Karte und schließe den Strom an. Nichts passiert. Ich finde heraus, dass das Image mit einem 4.14er-Kernel zwar auf einem Raspi 3B läuft, auf dem 3B+ aber nicht booten kann. Man braucht einen Kernel mit Raspi-spezifischen Patches, den man zwar als Paket in einem laufenden System installieren kann, mit dem es aber kein fertiges Image gibt. Laut Internet kann man entweder die Distribution mit 32 Bit für ARMv7 installieren, sämtliche Pakete deinstallieren und die 64-Bit-Versionen für ARMv8 darüber installieren. Oder man bootet auf einem älteren Raspi 3, installiert den Kernel und steckt die Speicherkarte um.

Ich begebe mich in der Redaktion auf die Suche nach einem unbenutzten Raspi 3, boote mein Arch, installiere den gepatchten Kernel, stecke die Karte um und boote endlich auf dem 3B+. Da ich mit Gnome auf dem PC ziemlich zufrieden war, installiere ich den Gnome-Desktop auch auf dem Raspi.

Geduld

Der Anmeldemanager GDM braucht mehr als 20 Sekunden, bis er einen Login-Screen anzeigt. Auf dem Desktop bin ich nochmal 20 Sekunden später. Die Gnome-Shell erscheint nach einem Druck auf die Windows-Taste nach weiteren 10 Sekunden. Ich bin entsetzt, will aber noch nicht aufgeben. Ich finde heraus, dass Arch den Grafiktreiber-Stack vom Broadcomm-Entwickler Eric Anholt nicht automatisch einrichtet. Außerdem bekommt der VideoCore4 zu wenig RAM ab. Ich aktiviere den Treiber und trage in /boot/config.txt ein, dass die Firmware des VideoCore4 256 MB vom RAM-Kuchen abhaben soll. Nach dem nächsten Boot läuft der Desktop ein wenig flüssiger. Dafür fallen mir weiße Pixel auf, die zufällig an manchen Stellen aufblitzen.

Während langer Ladezeiten fasse ich mal testweise auf diverse Chips und stelle fest: Ich könnte mir am Prozessor, am USB-Controller, am RAM und sogar an der Speicherkarte die Finger verbrennen. Meinem Raspi fehlt Kühlung! Sofort bestelle ich diverse Kühlkörper, Wärmeleitkleber und einen leisen 60-mm-Lüfter für 5 V. Das kostet mich in der Summe über 30 Euro, aber ich kann nicht riskieren, dass mein Raspi-Desktop wegen Überhitzung seine Taktfrequenz senkt.

Mit aufgeklebten Kühlkörpern, einem 60-mm-5-V-Lüfter und Luftkanälen aus dem 3D-Drucker bleibt der Raspi auch im Sommer unter 40 °C.

Apropos Frequenz: Wie schnell taktet mein 3B+ eigentlich im Leerlauf? Ich lese die Taktfrequenz aus /sys/ aus und stelle schockiert fest, dass er nur mit 600 MHz statt der eigentlich möglichen 1,4 GHz läuft. Das liegt daran, dass der Raspi-Kernel den Cpufreq-Governor standardmäßig auf powersave einstellt. Durch diese Einstellung taktet er selbst unter Last nicht hoch, um Strom zu sparen. Mit Root-Rechten setze ich die Einstellung in /sys/ auf performance . Nun läuft er grundsätzlich mit der höchstmöglichen Taktfrequenz. Voller Hoffnung starte ich Firefox unter Gnome. Die höhere Taktfrequenz ist fühlbar, von doppelter Geschwindigkeit kann aber nicht die Rede sein. Der Browser scrollt trotzdem nur mit etwa 10 Bildern pro Sekunde und hinkt allen Eingaben mindestens eine halbe Sekunde hinterher.

Zähneknirschend installiere ich die als "leichtgewichtig" geltenden Desktops Xfce und LXDE. Dass die sparsamer mit den knappen Ressourcen des Raspi umgehen, ist deutlich spürbar. Sie starten schneller, belegen weniger RAM und zum Öffnen von Programmen muss ich nicht immer 10 Sekunden auf die Gnome-Shell warten. Leider scheinen sie dennoch keine 30 Bilder pro Sekunde zu schaffen. Selbst der Mauszeiger ruckelt leicht. Den hat Gnome immerhin verzögerungsfrei angezeigt.

Im direkten Vergleich läuft LXDE auf dem Raspi etwas schneller als Xfce. LXDE ist in der bei Arch mitgelieferten Standardkonfiguration aber auf der Ästhetik der 90er hängen geblieben. YouTube-Videos ruckeln, sobald ich HD oder Vollbild aktiviere. Einen Desktop zum Arbeiten stelle ich mir anders vor.

Konzentration

Zum Vergleich überspiele ich mein Arch mal mit einem ganz normalen Raspbian (Download). Das läuft mit dem älteren ARMv7-Befehlssatz, 32 Bit und nutzt Broadcomms proprietären Grafiktreiber statt des freien Treibers. Den Cpufreq-Governor stellt Raspbian standardmäßig auf ondemand , wodurch der Prozessor unter Last auf die höchste Taktstufe schaltet. Lediglich den mit overscan in /boot/config.txt konfigurierten schwarzen Rand ums Bild schalte ich ab. Abgesehen davon startet unter Raspbian sofort ein gut konfiguriertes, schlankes System mit LXDE, das deutlich weniger altbacken aussieht.

Der vorinstallierte Chromium stellt Webseiten erträglich schnell dar und spielt auch YouTube-Videos in Full-HD im Vollbild ohne allzu grobe Ruckler ab. Das sieht viel eher nach einem System aus, auf dem man arbeiten kann. Sofort verfalle ich in alte Verhaltensweisen und installiere sämtliche Programme nach, die ich auch auf meinem Core-i5-PC benutze.

Die in Java programmierte IDE PyCharm startet zwar auf dem Raspi, braucht aber deutlich länger. Als endlich der Dialog zum Erstellen eines Projekts erscheint, zeigt sie aber keine Ordner mehr an und reagiert nicht mehr. Ich lasse mich nicht entmutigen und starte sie aus einem Terminalfenster mit Angabe des Pfads zum Programmierprojekt neu. Damit kommt sie weiter, bleibt dann aber in einer Endlosschleife beim Indexieren des Projekts hängen. Zum Programmieren muss ich wohl auf eine sparsamere Software umsteigen.

Das Skript bcmstat.sh zeigt neben der Auslastung der Prozessorkerne auch Temperatur und Taktrate des VideoCore4.

Ich lasse die IDE in der Hoffnung einer magischen Erholung noch etwas über ihre Endlosschleife brüten und starte den Browser. Das hätte ich nicht tun sollen. In der Prozessliste steht kswapd jetzt ganz oben und versucht das System am Leben zu erhalten, während das RAM längst übergelaufen ist. Mein System fühlt sich sofort an, als wäre es in dickflüssiges Gelee getaucht: Der Mauszeiger ruckelt im Schneckentempo, Menüs öffnen sich erst nach mehreren Sekunden Verzögerung.

Ich bereue, dass ich ohne nachzudenken auf Programm-Icons geklickt habe und versuche, das Problem mit Alt+F2 und xkill in den Griff zu bekommen. Eigentlich wusste ich ja, dass das RAM nicht reicht. Den am opulent ausgestatteten PC trainierten Reflex verhinderte das aber nicht. Sobald die grüne LED auf der Raspi-Platine erlischt, reagiert der Desktop wieder normal. Die Episode zeigt mir, was ich längst wusste: 4 Kerne und ein optimierter Linux-Kernel reichen nicht, wenn dem Rechner das RAM für digitale Unordnung fehlt. Auf dem Raspi sollte ich mich immer für eine Aufgabe entscheiden und nur die nötigsten Programme parallel starten. Ich muss lernen, alle unnötigen Programme zu schließen, bevor ich etwas Neues auf dem Minirechner angehe.

Fokus

Um Raspi-gerecht zu arbeiten, brauche ich einen viel besseren Plan. Ich bringe meine Todo-Liste auf Vordermann und zeige sie auf dem Smartphone an, um auf dem Raspi kein RAM damit zu belegen. Ganz oben steht das Redigieren eines Artikels. Dafür starte ich LibreOffice und einen Editor. Nach dem Start beider Programme sind sogar noch 80 MB frei. Ich kann tatsächlich arbeiten!

Später prüfe ich die Formatierung des Artikels mit einem internen Webdienst. Da ich dafür den Browser starten muss, beende ich vorher das Office-Programm.

Nachdem ich mit dem Browser fertig bin, öffne ich erstmals seit Stunden das Mailprogramm. Normalerweise läuft es im Hintergrund und benachrichtigt mich über neue Nachrichten, sobald sie eintreffen. Da ich nicht erreichbar war, habe ich eine Frage eines Kollegen nicht rechtzeitig beantwortet. Alle anderen Mails kann ich zufriedenstellend bearbeiten. Mir fällt auf, dass ich auf die Unterbrechungen durch Thunderbird gern verzichtet habe. Während meiner "Offline"-Zeit ist auch keine Katastrophe passiert. Statt mich mit dem Raspi zu zwingen, hätte ich aber auch auf dem i5 einfach Thunderbird schließen können.

Der nächste Punkt auf der To-do-Liste ist ein kleiner Bug in einem neuronalen Netz. Ich checke das Repository mit Git aus, erzeuge ein Virtualenv, installiere TensorFlow und warte. Was sonst nur Sekunden dauert, beschäftigt den Raspi über Minuten. Aus Angst, Fehler auszulösen, browse ich derweil auf dem Smartphone und lese einen Blogpost über die Kunst der Entschleunigung.

Die Rückkehr

Nach Tagen am Minirechner starte ich erstmals wieder den PC. Der führt mir sofort eindrucksvoll vor Augen, dass es zwischen einem 65-W-x86-Prozessor und einem 2-W-ARM einen Unterschied gibt. Die SSD reduziert die Wartezeiten, an die ich mich inzwischen gewöhnt habe, auf Sekundenbruchteile. Ich fühle, wie der starke Rechner auch meine Möglichkeiten potenziert – ein tolles Gefühl! Der PC macht viel mehr Spaß als der Raspi. Aber meine Produktivität steigert der hundertmal schnellere Rechner nur unwesentlich.

Ich komme mir ein bisschen wie eine Reisende vor, die in einem entlegenen buddhistischen Kloster von einem unbarmherzigen Sifu trainiert wurde. Der Raspi hat mich strukturiertes Arbeiten und die Fokussierung auf einzelne Aufgaben gelehrt. Die am Raspi geübte Genügsamkeit, Geduld und Konzentration hilft mir, auch am PC schneller und effizienter zu arbeiten.

Dennoch würde ich auf die Performance meines PCs nicht wieder verzichten wollen. Der Raspi schränkte mich ein und verlangte mir ab, mich mit sparsamen Programmen und seriellen Workflows zu begnügen. Der PC arbeitet meine Befehle bei Bedarf auch parallel und vor allem viel schneller ab.

Thorsten legt eine Hand auf meine Schulter. "Na, hast du etwas gelernt?" Seine Augen spiegeln die Weisheit tausender Kernel-Commits. Aber nun kann ich etwas eigene Weisheit beisteuern: "Ich habe nun mehr Geduld und Konzentration. Vorher wusste ich gar nicht, dass mir beides gefehlt hat. Aber wirklich empfehlen kann ich den Raspi als PC-Ersatz nicht." (pmk)

