PETScineinerVirtualbox - TU Bergakademie Freiberg · Sofern Ihre Virtualbox ein...

9
PETSc in einer Virtualbox INMO TU Bergakademie Freiberg May 4, 2015 1 PETSc PETSc (Portable, Extensible Toolkit for Scientific Computation), www.mcs.anl.gov/petsc ist eine Softwarebibliothek f¨ ur Numerik auf Parallelrechnern. PETSc ist in C geschrieben, bietet aber auch C++, Fortran und Python-Interfaces. Ein Java-Interface existiert ebenfalls. PETSc kann unter Windows verwendet werden, erfordert dann aber Cygwin. PETSc unter Linux ist meist vorzuziehen. Wenn Sie eine native Linux-Installation scheuen, gibt es die Alternative, ein Linux in einer virtuellen Maschine zu installieren. Eine frei verf¨ ugbare virtuelle Maschine ist Virtualbox (urspr¨ unglich von der deutschen Firma Innotek entwickelt, inzwischen Oracle). PETSc unter MacOS stellt kein Problem dar, da MacOS auf BSD Unix basiert. 2 Installation von Virtualbox unter Windows Bevor Sie starten, sollten Sie Ihre Daten sichern. Sie sollten 2 GB Hauptspeicher haben und 10-20 GB freien Platz auf Ihrer Festplatte. Bemerkung: Um Virtualisierung nutzen zu k¨ onnen, m¨ ussen Sie m¨oglicherweise im BIOS die Virtualisierungsf¨ ahigkeiten des Prozessors einschalten (“Virtualization Technology”/AMD-V/“Intel VT-d”/“Intel VT-x”), dies ist aber meist korrekt voreingestellt. Laden Sie sich die freie Virtualisierungssoftware VirtualBox f¨ ur Windows (32bit/64bit) herunter und instal- lieren Sie sie. Stellen Sie der virtuellen Maschine ca. 50 Prozent des Hauptspeichers (RAM) zur Verf¨ ugung. Dies l¨ asst sich sp¨ ater noch ¨ andern. W¨ahlen Sie 10, oder besser 20 GB, als Gr¨ oße der virtuellen Festplatte. Eine dynamische virtuelle Festplatte spart zun¨achst Platz, ist aber bei der sp¨ ateren Verwendung etwas langsamer. Diese Einstellung l¨ asst sich im Nachhinein nicht mehr ¨ andern. Nach dem Start klicken Sie auf “Neu”. Je nach vorhandenem Prozessor k¨ onnen Sie nun ein 64-Bit oder nur ein 32-Bit Gastsystem installieren, w¨ahlen Sie stets die 64-Bit-Variante, falls m¨oglich. 1

Transcript of PETScineinerVirtualbox - TU Bergakademie Freiberg · Sofern Ihre Virtualbox ein...

Page 1: PETScineinerVirtualbox - TU Bergakademie Freiberg · Sofern Ihre Virtualbox ein 64-Bit-Betriebssystem unterstu¨tzt, w¨ahlen Sie die 64-Bit-Version. Speichern Sie die Datei openSUSE-13.1-DVD-x86

PETSc in einer Virtualbox

INMO TU Bergakademie Freiberg

May 4, 2015

1 PETSc

PETSc (Portable, Extensible Toolkit for Scientific Computation),

www.mcs.anl.gov/petsc

ist eine Softwarebibliothek fur Numerik auf Parallelrechnern. PETSc ist in C geschrieben, bietet aber auchC++, Fortran und Python-Interfaces. Ein Java-Interface existiert ebenfalls.

PETSc kann unter Windows verwendet werden, erfordert dann aber Cygwin. PETSc unter Linux ist meistvorzuziehen. Wenn Sie eine native Linux-Installation scheuen, gibt es die Alternative, ein Linux in einervirtuellen Maschine zu installieren. Eine frei verfugbare virtuelle Maschine ist Virtualbox (ursprunglich vonder deutschen Firma Innotek entwickelt, inzwischen Oracle).

PETSc unter MacOS stellt kein Problem dar, da MacOS auf BSD Unix basiert.

2 Installation von Virtualbox unter Windows

Bevor Sie starten, sollten Sie Ihre Daten sichern. Sie sollten 2 GB Hauptspeicher haben und 10-20 GB freienPlatz auf Ihrer Festplatte.

Bemerkung: Um Virtualisierung nutzen zu konnen, mussen Sie moglicherweise im BIOS die Virtualisierungsfahigkeitendes Prozessors einschalten (“Virtualization Technology”/AMD-V/“Intel VT-d”/“Intel VT-x”), dies ist abermeist korrekt voreingestellt.

Laden Sie sich die freie Virtualisierungssoftware VirtualBox fur Windows (32bit/64bit) herunter und instal-lieren Sie sie. Stellen Sie der virtuellen Maschine ca. 50 Prozent des Hauptspeichers (RAM) zur Verfugung.Dies lasst sich spater noch andern. Wahlen Sie 10, oder besser 20 GB, als Große der virtuellen Festplatte. Einedynamische virtuelle Festplatte spart zunachst Platz, ist aber bei der spateren Verwendung etwas langsamer.Diese Einstellung lasst sich im Nachhinein nicht mehr andern.

Nach dem Start klicken Sie auf “Neu”.

Je nach vorhandenem Prozessor konnen Sie nun ein 64-Bit oder nur ein 32-Bit Gastsystem installieren,wahlen Sie stets die 64-Bit-Variante, falls moglich.

1

Page 2: PETScineinerVirtualbox - TU Bergakademie Freiberg · Sofern Ihre Virtualbox ein 64-Bit-Betriebssystem unterstu¨tzt, w¨ahlen Sie die 64-Bit-Version. Speichern Sie die Datei openSUSE-13.1-DVD-x86

Stellen Sie etwa die Halfte des Hauptspeichers der virtuellen Maschine zur Verfugung, diese Einstellung lasstsich aber spater auch noch andern.

Erzeugen Sie nun eine virtuelle Festplatte. Sie wird als (ziemlich große) Datei in Ihrem Dateisystem er-scheinen. Lassen Sie die virtuelle Festplatte auf einem Dateisystem mit genugend freiem Platz erstellen. 8 GBwird vorgeschlagen, dass ist aber zu wenig.

2

Page 3: PETScineinerVirtualbox - TU Bergakademie Freiberg · Sofern Ihre Virtualbox ein 64-Bit-Betriebssystem unterstu¨tzt, w¨ahlen Sie die 64-Bit-Version. Speichern Sie die Datei openSUSE-13.1-DVD-x86

Die Erstellung der virtuellen Festplatte dauert eine Weile, insbesondere fur die nichtdynamischen Variante (wirddafur bei Benutzung etwas schneller sein).

Gemaß Voreinstellung verwendet Virtualbox nur einen Prozessorkern Ihres Rechners. Sie sollten daher dieAnzahl der virtuellen Prozessorkerne auf die Anzahl der physischen vorhandenen Kerne erhohen.

Bemerkung: Moderne Prozessoren lasten Ihre Subeinheiten besser mit Operationen aus, indem Sie demBetriebsystem mehr (meist doppelt) so viele Prozessorkerne vorspiegeln, als tatsachlich vorhanden sind (Simul-taneous Multithreading oder SMT). Dies ermoglicht kostengunstig eine Leistungssteigerung um 10%-30%. Furparallele Numerik und auch bei Verwendung von Virtualbox kann es Sinn haben, das SMT im Bios abzustellen.

3

Page 4: PETScineinerVirtualbox - TU Bergakademie Freiberg · Sofern Ihre Virtualbox ein 64-Bit-Betriebssystem unterstu¨tzt, w¨ahlen Sie die 64-Bit-Version. Speichern Sie die Datei openSUSE-13.1-DVD-x86

3 Installation von OpenSUSE in die Virtualbox

Laden Sie von software.opensuse.org die aktuelle Suse-Distribution herunter. Bemerkung: Die Installation wirdeinige Zeit dauern.

Sofern Ihre Virtualbox ein 64-Bit-Betriebssystem unterstutzt, wahlen Sie die 64-Bit-Version. Speichern Sie dieDatei openSUSE-13.1-DVD-x86 64.iso (4.7 GB) auf Ihrer Festplatte.

Fugen Sie das ISO-Image als in Virtualbox als Massenspeicher hinzu. Klicken Sie dazu in Virtualboxauf “Massenspeicher”, dann auf das Wort “leer” unterhalb von “Controler: IDE” und dann auf das rundeDVD-Symbol rechts neben “Sekundarer Master”. Wahlen Sie nun als “Datei fur virtuelles CD/DVD-Mediumauswahlen” die abgespeicherte Datei openSUSE-13.1-DVD-x86 64.iso aus. Stellen Sie anschließend das Feld“Sekundarer Master” auf “Primarer Master” um, damit von der virtuellen DVD gebootet werden kann.

Starten Sie das virtuelle System durck Klick auf “Start” und wahlen Sie “Installation”.

4

Page 5: PETScineinerVirtualbox - TU Bergakademie Freiberg · Sofern Ihre Virtualbox ein 64-Bit-Betriebssystem unterstu¨tzt, w¨ahlen Sie die 64-Bit-Version. Speichern Sie die Datei openSUSE-13.1-DVD-x86

Wahlen Sie die Sprache aus.

Wahlen Sie dann Neuinstallation.

5

Page 6: PETScineinerVirtualbox - TU Bergakademie Freiberg · Sofern Ihre Virtualbox ein 64-Bit-Betriebssystem unterstu¨tzt, w¨ahlen Sie die 64-Bit-Version. Speichern Sie die Datei openSUSE-13.1-DVD-x86

Wahlen Sie die KDE als Desktop aus.

Sie konnen es zunachst uberall bei den Standardeinstellungen belassen. Lediglich die “Separate Home-Partition” sollte wegen des knappen Platzes abgewahlt werden.

6

Page 7: PETScineinerVirtualbox - TU Bergakademie Freiberg · Sofern Ihre Virtualbox ein 64-Bit-Betriebssystem unterstu¨tzt, w¨ahlen Sie die 64-Bit-Version. Speichern Sie die Datei openSUSE-13.1-DVD-x86

Die Installation dauert eine Weile. Nach erfolgreicher Installation bleiben noch einige Pakete nachzuinstal-lieren. Klicken Sie dazu links unten auf das Startmenu, tippen Sie Yast (Yet another setup tool) ein und startenSie so das Setup-Tool.

Falls Sie nun ausreichend Zeit haben, klicken Sie auf “Online-Aktualisierung” und akzeptieren Sie die Aktual-isierungen (kann je nach Netzverbindung eine Stunde dauern). Gegebenenfalls den Neustart des Paketmanagersakzeptieren, wieder akzeptieren.

Es mussen noch weitere Softwarepakete installiert werden. Klicken Sie in Yast auf “Software installieren”und geben Sie in das Suchfeld “gnu c++” en. Wahlen Sie das Paket “gcc-c++” aus.

7

Page 8: PETScineinerVirtualbox - TU Bergakademie Freiberg · Sofern Ihre Virtualbox ein 64-Bit-Betriebssystem unterstu¨tzt, w¨ahlen Sie die 64-Bit-Version. Speichern Sie die Datei openSUSE-13.1-DVD-x86

Suchen Sie ebens und wahlen Sie aus: “gcc-fortran” “emacs-x11”, “kdiff3”, “gnu make”, “xosview”, “kwrite”,“mlocate”, “evince”, “gimp”.

Wenn Sie die Gelegenheit nutzen mochten, in diesem Semester auch Latex zu lernen, konnen Sie auch“texlive”, “kile”, und “kate” installieren (viele Pakete, dauert lange!).

Falls Sie genug Festplattenplatz haben finden Sie im Netz noch Tipps zur weiteren Vervollandigung derInstallation, z.B. auf

www.dedoimedo.com/computers/opensuse-pimp.html

www.mambochimbo.com/2013/11/todo-top-things-to-do-after-installing.html.

Den freien Platz erfahren Sie mit dem Kommando du (disk usage) im Terminalfenster (→ Startmenu/Terminal).

4 MPICH und PETSc

Nun konnen Sie MPICH installieren. Laden Sie von

http://www.mpich.org/downloads

MPICH herunter. Firefox speichert die Datei mpich-3.1.2.tar.gz ublicherweise in ~/Downloads. Starten Sieein Terminalfenster (Terminal im Startmenu) und werden Sie mit su Superuser. Anschließend konnen Sie dasTar-Archiv entpacken, MPICH konfigurieren, ubersetzen und installieren. Ersetzen Sie rheinbach durch IhrenBenutzernamen.

linux:~> tar xvzf Downloads/mpich-3.1.2.tar.gz

linux:~> mv mpich-3.1.2 mpich-3.1.2_src

linux:~> cd mpich-3.1.2_src

linux:~> ./configure --prefix=/home/rheinbach/mpich-3.1.2/

linux:~> make

linux:~> make install

Fugen Sie MPICH Ihrem Pfad hinzu. Offnen Sie die Datei .bashrc in Ihrem Homeverzeichnis mit IhremLieblingseditor (z.B. kwrite oder vi) und fugen Sie am Ende die Zeile

export PATH=/home/rheinbach/bin:$PATH

hinzu (wobei Sie rheinbach durch Ihren Benutzernamen ersetzen).

8

Page 9: PETScineinerVirtualbox - TU Bergakademie Freiberg · Sofern Ihre Virtualbox ein 64-Bit-Betriebssystem unterstu¨tzt, w¨ahlen Sie die 64-Bit-Version. Speichern Sie die Datei openSUSE-13.1-DVD-x86

Ubersetzen Sie anschließend PETSc

www.mcs.anl.gov/petsc

Entpacken Sie PETSc und konfigurieren Sie es

./configure --with-mpi-dir=/home/rheinbach/mpich-3.1.2

--download-f2cblaslapack

--with-clanguage=cxx --with-debugging=1

Folgen Sie den Anweisungen (make, make test).

5 Problemlosung gethostbyname-Fehler

Falls Sie einen gethostbyname-Fehler beim Start von Programmen mit mpirun/mpiexec bekommen bzw. maketest in PETSc fehlschlagt (Opensuse 13.2 in der Virtualbox):

Werden Sie mit su root und editieren Sie /etc/HOSTNAME. Loschen Sie den vorgeschlagenen Namen undwahlen Sie Ihren Lieblingsnamen, etwa zuse. Editieren Sie anschließend /etc/hosts und fugen Sie unterhalbvon 127.0.0.1 localhost die Zeile 127.0.0.1 zuse ein. Wenn Sie die Virtualbox neu starten, sollte nun allesfunktionieren.

Detaillierte Beschreibung fur den Editor vi: vi /etc/HOSTNAME. Durch eintippen von dd (Zeile loschen) wirddie Zeile geloscht. Durch i kommt man in den Insertmodus, der Name zuse wird eingefugt. Anschließend ESCdrucken und :wq (Write, Quit).

Anschließend vi /etc/hosts. Mit dem Curser zu entsprechenden Stelle bewegen, anschließend i (Insert)eingeben und die Zeile einfugen. Mit der ESC-Taste wird der Insert-Modus verlassen, mit durch Eingable von:wq wird die Datei geschrieben (w) und der Editor verlassen (q).

9