> Parallele Systeme Übung: Exkurs High-Performance-Computing (an der WWU) Philipp Kegel Wintersemester 2012/2013

Größe: px
Ab Seite anzeigen:

Download "> Parallele Systeme Übung: Exkurs High-Performance-Computing (an der WWU) Philipp Kegel Wintersemester 2012/2013"

Transkript

1 > Parallele Systeme Übung: Exkurs High-Performance-Computing (an der WWU) Philipp Kegel Wintersemester 2012/2013 Parallele und Verteilte Systeme, Institut für Informatik

2 Inhaltsverzeichnis 2 1 LINPACK 2 Die Cluster des ZIV ZIVSMP, ZIVHPC und PALMA Batchsystem und Scheduler Modulkonzept 3 Programme erstellen und ausführen Programme bauen mit Make Beispiel: Send-Recv

3 LINPACK 3 Ursprünglich (1979): Paket von Routinen zum Lösen linearer Gleichungssysteme (LGS) basierend auf Level 1 BLAS (Basic Linear Algebra Subprograms) Benutzerhandbuch dokumentierte Zeitmessungen für das Staffeln von Matrizen auf 23 damals zeitgemäßen Rechnern Innerhalb kurzer Zeit etablierte sich die Liste als Referenz zum Vergleich von Rechnersystemen Top500-Liste Der LINPACK Benchmark wurde daraufhin erweitert und ermittelt seitdem die Laufzeit für drei Benchmarkprogramme: Ax = b, für ein stark besetztes A mit Elementen Ax = b, für ein stark besetztes A mit Elementen Parallele Lösung großer LGS (Level 3 BLAS) Dokumentiert in Jack Dongarra et al. (2002): The LINPACK Benchmark: Past, Present, and Future

4 Lösung von Ax = b durch Gaußsches Eliminationsverfahren LINPACK 1. LR-Zerlegung (Faktorisierung) von A: Zerlegung von der Koeffizientenmatrix A in das Produkt einer linken unteren Dreiecksmatrix L und einer rechten oberen Dreiecksmatrix R, wobei die Diagonalelemente von L gleich 1 sind Pseudocode für sequentielle Berechnung: for i = 1 to n { // berechne R for j = i to n { R(i,j) = A(i,j) for k = 1 to i-1 { R(i,j) -= A(i,k) * A(k,j) } } // berechne L for j = i + 1 to n { L(j,i) = A(j,i) for k = 1 to i-1 { L(j,i) -= A(j,k) * A(k,i) } L(j,i) /= A(i,i) } } 4 Die LR-Zerlegung von A ergibt das neue System LRx = b

5 LINPACK-Operationen 5 2. Das System LRx = b lässt sich wie folgt lösen 2.1 Löse Ly = b, Ergebnis: y (Vorwärtseinsetzen) 2.2 Löse Rx = y, Ergebnis: x (Rückwärtseinsetzen) Benötigt 2n 3 /3+2n 2 +O(n) Gleitkommaoperationen Komplexität O(n 3 ) LINPACK-Operationen LINPACK stellt die Routinen DGEFA (Dekomposition in O(n 3 ) Schritten) und DGESL (Lösen des Systems in O(n 2 ) Schritten) bereit DGEFA verwendet die hardwareunterstützten BLAS-Routinen DAXPY, IDAMAX und DSCAL Am häufigsten ( 90% der Zeit) wird DAXPY verwendet: Multipliziert Vektor x mit Skalar α und addiert das Ergebnis zu Vektor y DAXPY wird gelegentlich alleine für das Benchmarking verwendet

6 Peak-Performance 6 Eine Maßzahl für die Leistung eines Rechners sind flop/s (floating point operations per second = Gleitkommaoperationen pro Sekunde) Rechnerhersteller geben Leistung gerne als Peak-Performance an, wobei zugrunde gelegt wird, dass eine Gleitkommaoperationen zumindest einen Taktzyklus eines Prozessors benötigt, es gilt also z.b. für eine CPU mit 2GHz R peak = 1Operation 1Zyklus 2GHz = 2Gflop/s Die theoretische Peak-Performance entspricht somit einer Art Lichtgeschwindigkeit eines Rechners, da sie von keinem Programm überschritten werden kann

7 Peak-Performance 7 Folgende Tabelle stellt die Peak-Performance einiger Rechnerarchitekturen der Zahl der tatsächlich ausgeführten DAXPY-Operationen gegenüber Rechner Taktrate [MHz] Peak [Mflop/s] DAXPY R [Mflop/s] Pentium III Pentium Itanium TOP500-Liste (http://www.top500.org): Liste der 500 leistungsstärksten Allzweck-Rechnersysteme für High-End-Applikationen Leistung wird mit dem LINPACK-Benchmark (Level 3) gemessen. Wichtig: Es müssen 2n 3 /3+O(n 2 ) doppelt-genaue Gleitkommaoperationen durchgeführt werden Liste u.a. von Jack Dongarra veröffentlicht und zweimal jährlich aktualisiert

8 LINPACK in Fortran, C und Java 8 LINPACK (inkl. Quelltexte) in Fortran ist auf verfügbar (wie auch der aktuellere LAPACK: LINPACK und LAPACK für Architekturen mit verteiltem Speicher (wie z.b. der Cluster des ZIV) basieren auf dem Message-Passing-Programmiermodell Sequentielle Implementierung in C++: Sequentielle Implementierung in Java:

9 Die Graph500-Liste 1 9 Das Benchmarking mit LINPACK ist umstritten: LINPACK ist nicht repräsentativ für daten-intensive Anwendungen Eine Alternative zur TOP500-Liste ist die Graph500-Liste: Liste der 500 besten Supercomputer für daten-intensive Anwendungen (http://www.graph500.org/) Graph500 versteht sich als Ergänzung zur TOP500-Liste Bewertet das Kommunikationsnetzwerk eines Rechner statt seiner Rechenleistung anhand von Operationen auf Graphen Zwei Kernel: Grapherzeugung und Breitensuche Fünf Größenklassen der Graphen: 17 GByte (toy) 1,1 PByte (huge) Metrik: TEPS (traversed edges per second) Erstmals im November 2010 veröffentlicht; zzt. 123 Einträge 1 Murphy, R.C., Wheeler, K.B., Barrett, B.W. (2010): Introducing the Graph 500

10 Die Cluster des ZIV 10 ZIVSMP DL785-System von Hewlett-Packard: 8 Quadcore AMD Opteron 2,3GHz ( 32 Kerne), 256GB RAM Front-End und Compute-Node des Parallelrechners ZIVHPC ZIVHPC 20 Knoten: 2 Quadcore AMD Opteron mit 2,1GHz, 32GB RAM ( 160 Kerne) 3 Dateiserver, 3TB SAN (GFPS) Betriebssystem: Scientific Linux 5.6 (ein Red Hat Enterprise Clone) Verbindungsnetzwerk: Infiniband und Gigabit Ethernet (für GPFS, Batchsystem) Gemeinsame LINPACK-Performance: 1,3 TFLOPS

11 Die Cluster des ZIV 11 PALMA (Paralleles Linux-System für Münsteraner Anwender) 36 Knoten: 2 Quadcore Intel Xeon mit 2,67GHz, 24GB RAM 216 Knoten: 2 Hexacore Intel Xeon mit 2,67GHz, 24 48GB RAM 4 Knoten: 4 Octocore Intel Xeon mit 2GHz, 128GB RAM Dateisystem: 3TB /home + 180TB /scratch 3008 Prozessorkerne, 7TB RAM, Leistung >30TFLOPS Weitere Informationen unter: https://sso.uni-muenster.de/zivwiki/bin/view/anleitungen/hpc Die folgenden Beispiele beziehen sich auf die Arbeit mit den alten Cluster ZIVHPC + ZIVSMP.

12 Login und Logout 12 Über MeinZIV (http://www.uni-muenster.de/meinziv/) kann man ein Benutzerkonto für den Cluster beantragen Der Login erfolgt über Secure Shell aus dem Netz der WWU (ggf. vorher VPN-Verbindung herstellen) Windows: grafische Terminalemulation (z.b. PuTTY) Linux: ssh [Optionen] <Rechner-URL> Wichtige Option: -l<nutzerkennung> Beispiel: ssh -la dent01 zivsmp.uni-muenster.de Beim ersten Login muss man das Serverzertifikat des Clusters akzeptieren Logout nicht vergessen logout

13 Datenübertragung ins persönliche Nutzerverzeichnis 13 Auf dem Cluster besitzt jeder Benutzer ein persönliches Nutzerverzeichnis, das sogenannte Home. Das Zeichen ~ ist eine Abkürzung für dieses Verzeichnis Programme, Daten, etc. können via Secure Copy zwischen dem lokalen Rechner und dem Cluster kopiert werden Windows: grafischer Client (z.b. PuTTY) Linux: scp [Optionen] <Quelle> <Ziel> Quelle und Ziel haben folgendes Format: Beispiel: scp myfile.c a

14 Batchsystem und Scheduler 14 Batchsystem TORQUE zusammen mit dem Scheduler Maui sorgen für Verteilung von Rechenaufträgen (Jobs) auf dem Cluster Störungsfreie Nutzung des Clusters durch mehrere Nutzer Jobs sollten immer vom Dialogserver (ZIVSMP) aus in eine Job-Warteschlange (Queue) des Batchsystem übergeben werden Prozesse, die nicht über das Batchsystem gestartet wurden, werden ohne Vorwarnung abgebrochen Es existieren drei Job-Queues testq 192 Kerne (ZIVSMP + ZIVHPC) für maximal 2 Stunden smallq 160 Kerne (ZIVHPC) für maximal 48 Stunden, maximal 2 Jobs/Benutzer bigq 96 Kerne für maximal 160 Stunden, maximal 1 Job/Benutzer Ohne explizite Angabe der Queue wird eine der o.g. Queues anhand der angegeben Programmlaufzeit (Walltime) ausgewählt Ist weder Queue noch Walltime angegeben, wird testq gewählt

15 Befehlsübersicht 15 Status des Jobsystems anzeigen qstat Job an das Batchsystem übergeben: qsub <PBS-Skript> Job anhalten: qhold <Job-ID> Job abbrechen/löschen: qdel <Job-ID> Weitere Informationen: man PBS oder man qsub

16 Batch-Skript 16 Jobs werden mit einem PBS-Skript (Portable Batch System) definiert Skript enthält Parameter (s.u.) der Form #PBS <Parameter> <Wert> für das Batchsystem und Kommandos zum Aufruf des auszuführenden Programms -o Datei für Standardausgabe -e Datei für Fehlerausgabe -l Ressourcenangaben, z.b. Walltime, Anzahl Knoten/Prozessoren -A Benutzerkennung -M -Adresse für Benachrichtigungen -m Ereignisse für Benachrichtigung, z.b. ae = Benachrichtigung bei Abbruch (a) und Ende (e) -q Job-Queue (default = automatische Auswahl) -N Job-Name -j Standardausgabe und Fehlerausgabe zusammen, z.b. oe = in Standardausgabe zusammenfassen

17 Batch-Skript 17 Datei myapp.pbs #PBS -o ~/myapp.out #PBS -l walltime=00:05:00,nodes=16 #PBS -A a_dent01 #PBS -M #PBS -m ae #PBS -q default #PBS -N MyApp #PBS -j oe cd ~/my_app mpirun -np 16 myapp Start des Jobs mit qsub myapp.pbs

18 Modulkonzept 18 Umgebungsvariablen (z.b. PATH, LD LIBRARY PATH) für Compiler und Bibliotheken werden über module-befehle definiert Befehl (Kurz- und Langform) module av[ailable] module li[st] module show modulname module add modul1 modul2... module rm modul1 modul2... module purge Bedeutung Listet alle verfügbaren Module auf Zeigt alle in der aktuellen Umgebung geladenen Module Listet die Änderungen auf, die ein Modul an der Umgebung bewirkt Fügt Module der aktuellen Umgebung hinzu Entfernt Module aus der aktuellen Umgebung Löscht alle aktivierten Module aus der Umgebung Damit die Umgebung auch auf den Rechenknoten verfügbar ist, muss das Kommando module add in der Shell-Init-Datei des Benutzers stehen (z.b..bashrc) Weitere Informationen: man module

19 Make 19 Ohne IDE (z.b. Eclipse) müssen alle Quelldateien einzeln übersetzt werden Möglicherweise bestehen Abhängigkeiten zu Bibliotheken (z.b. Pthreads) Compiler und Linker erfordern i.d.r. Optionen beim Aufruf Make ist ein Softwarewerkzeug mit einer Skriptsprache zum Ausführen von Befehlen (ähnlich Ant oder Maven im Java-Umfeld) Befehle werden in Makefiles zusammengefasst. Allgemeine Befehlsform: <Ziel>: <Quelle> <Befehl> Variablen können durch <Name>=<Wert> definiert werden, Zugriff auf Variable durch $(<Name>)

20 Make 20 Das erstellen einer Datei (z.b. eines Programms) wird als Ziel (Target) bezeichnet Quellen sind Objekte die vorhanden sein müssen, damit ein Ziel erstellt werden kann (z.b. Objektdatei). Ziele hängen von Quellen ab. Befehle geben an, wie ein Ziel aus der Quelle erstellt werden kann (z.b. Aufruf eines Compilers/Linkers) Ein Ziel kann andere Ziele als Quelle besitzen Quellen werden ggf. erzeugt, bevor das Ziel erzeugt wird ein Ziel kann eine Kaskade von Befehlen erzeugen Ein Ziel wird i.d.r. nur erstellt, wenn eine seiner Quellen jünger ist z.b. nur geänderte Quelldateien werden kompiliert Platzhalter (%,?) und vordefinierte Variablen ($<, etc.) erlauben Definition generischer Ziele Aufruf: make [<Target>]

21 Beispiel: Makefile 21 # C compiler/ linker CC= mpicc # C compiler options CFLAGS =- Wall # linker options LDLIBS=-lm # object files OBJS=myfile1.o myfile2.o # Implicit rule: # Compile $(CC) $(CPPFLAGS) $(CFLAGS) -c n.o myapp: $(OBJS) $(CC) $(LDFLAGS) $(LDLIBS) $+ -o # clean up folder.phony: clean clean: rm $(OBJS)

22 Beispiel: Send-Recv 22 Einfaches MPI-Programm mit p Prozessen 1 Prozess empfängt Daten von den anderen p 1 Prozessen Die Laufzeit jedes Prozesses wird gemessen Datei sendrecv.c #include <mpi.h> #include <stdio.h> #include <stdlib.h> #define N void busy_wait( double max_duration) {... } int main(int argc, char *argv[]) {... MPI_Init(&argc, &argv); MPI_Comm_rank( MPI_COMM_WORLD, & rank); MPI_Comm_size( MPI_COMM_WORLD, & size); MPI_Barrier( MPI_COMM_WORLD); start = MPI_Wtime();

23 Datei sendrecv.c (Fortsetzung) Beispiel: Send-Recv if (rank == 0) { for (i = 1; i < size; i++) { /* Nachricht empfangen */ MPI_Recv(data, N, MPI_INT, MPI_ANY_SOURCE, 99, MPI_COMM_WORLD, & status); printf("received from process %2i\n", status. MPI_SOURCE); busy_wait (0.5); /* Daten verarbeiten */ } } else { busy_wait (5.0); /* Daten erzeugen */ /* Nachricht senden */ MPI_Send(data, N, MPI_INT, 0, 99, MPI_COMM_WORLD); busy_wait (5.0); /* andere Programmaktivitaet */ } 23 stop = MPI_Wtime(); printf("time on process %i: %f\n", rank, stop - start); MPI_Finalize(); return EXIT_SUCCESS; }

24 Makefile für Send-Recv 24 CC= mpicc CFLAGS =- Wall LDLIBS=-lm OBJS=sendrecv.o # Implit rule: # Link $(CC) $(LDFLAGS) $(LDLIBS) -o sendrecv: clean: rm $(OBJS)

25 Batch-Skript für Send-Recv 25 #PBS -o zivsmp001:~/sendrecv/stdout #PBS -l walltime=00:05:00,nodes=2:hpc:ppn=8 #PBS -A a_dent01 #PBS -M #PBS -m ae #PBS -q testq #PBS -N sendrecv #PBS -j oe cd ~/sendrecv mpirun -np 16 sendrecv

26 Send-Recv auf ZIVHPC ausführen 26 1 Ggf. Verbindung zum Netzwerk der WWU herstellen, z.b. via VPN 2 Login auf ZIVSMP (Dialogserver für ZIVHPC) ssh -la dent01 zivsmp.uni-muenster.de 3 Programmordner anlegen und in Programmordner wechseln mkdir ~/sendrecv; cd ~/sendrecv 4 Programm sendrecv erstellen 5 Makefile erstellen 6 Programm kompilieren und linken make 7 Batch-Skript sendrecv.pbs erstellen 8 Batch-Job übergeben qsub sendrecv.pbs

27 27 Nächste Übung am 5. Dezember 2012

Nutzungsanleitung des Clusters thot.informatik.uni-halle.de

Nutzungsanleitung des Clusters thot.informatik.uni-halle.de Nutzungsanleitung des Clusters thot.informatik.uni-halle.de Martin-Luther-Universität Halle-Wittenberg INHALTSVERZEICHNIS 1 Inhaltsverzeichnis 1 Allgemeines 2 2 Module zum Einrichten der Nutzerumgebung

Mehr

Vektorrechnersystem NEC SX-9

Vektorrechnersystem NEC SX-9 Ansprechpartner HPC-Support Team Benutzerberatung Dr. Gerd Hessler (hessler@rz.uni-kiel.de) Dr. Simone Knief (knief@rz.uni-kiel.de) Dr. Eva-Maria Zeidler (zeidler@rz.uni-kiel.de) Systembetreuung: Dr. Cebel

Mehr

Parallel Programming: Message-Passing-Interface

Parallel Programming: Message-Passing-Interface Vorlesung Rechnerarchitektur 2 Seite 71 MPI-Einführung Parallel Programming: Voraussetzungen im Source-Code für ein MPI Programm: mpi.h includen Die Kommandozeilenparameter des Programms müssen an MPI_Init

Mehr

NEC HPC-System. SX-ACE Vektorrechnersystem u. HPC-Linux Cluster. Rechenzentrum

NEC HPC-System. SX-ACE Vektorrechnersystem u. HPC-Linux Cluster. Rechenzentrum SX-ACE Vektorrechnersystem u. HPC-Linux Cluster 1 Ansprechpartner HPC-Support Team Benutzerberatung Dr. Karsten Balzer Dr. Simone Knief Systembetreuung: Dr. Cebel Kücükkaraca Alfred Wagner Mailingliste:

Mehr

MPI-Programmierung unter Windows mit MPICH2. Installieren von MPICH2, Übersetzen, Ausführen und Debuggen von MPI-Programmen. Christian Terboven

MPI-Programmierung unter Windows mit MPICH2. Installieren von MPICH2, Übersetzen, Ausführen und Debuggen von MPI-Programmen. Christian Terboven MPI-Programmierung unter Windows mit MPIH2 Installieren von MPIH2, Übersetzen, Ausführen und Debuggen von MPI-Programmen hristian Terboven Rechen- und Kommunikationszentrum RWTH Aachen 1 02/2007 luster-installationsworkshop

Mehr

Ein kleiner Einblick in die Welt der Supercomputer. Christian Krohn 07.12.2010 1

Ein kleiner Einblick in die Welt der Supercomputer. Christian Krohn 07.12.2010 1 Ein kleiner Einblick in die Welt der Supercomputer Christian Krohn 07.12.2010 1 Vorschub: FLOPS Entwicklung der Supercomputer Funktionsweisen von Supercomputern Zukunftsvisionen 2 Ein Top10 Supercomputer

Mehr

Softwarepraktikum: Einführung in Makefiles

Softwarepraktikum: Einführung in Makefiles Softwarepraktikum: Einführung in Makefiles (Eingebettete Systeme und Robotik),, http://ai3.inf.uni-bayreuth.de /home/db_lehre/praktika/softwarepraktikum/vorbesprechung_und_einfuehrung/vortraege/makefile_tuto

Mehr

Hochleistungsrechnen mit Windows Interaktive Benutzung und das Batchsystem Christian Terboven Rechen- und Kommunikationszentrum RWTH Aachen

Hochleistungsrechnen mit Windows Interaktive Benutzung und das Batchsystem Christian Terboven Rechen- und Kommunikationszentrum RWTH Aachen Hochleistungsrechnen mit Windows Interaktive Benutzung und das Batchsystem hristian Terboven Rechen- und Kommunikationszentrum RWTH Aachen 1 Hochleistungsrechnen mit Windows enter omputing and ommunication

Mehr

Das Batch-System. Inhaltsverzeichnis. Leibniz Universität IT Services (LUIS) Service: Scientific Computing

Das Batch-System. Inhaltsverzeichnis. Leibniz Universität IT Services (LUIS) Service: Scientific Computing Leibniz Universität IT Services (LUIS) Service: Scientific Computing Das Batch-System Das Clustersystem wird von vielen Nutzern gemeinsam verwendet. Anforderungen an die Ressourcen müssen daher reguliert

Mehr

UBELIX University of Bern Linux Cluster

UBELIX University of Bern Linux Cluster University of Bern Linux Cluster Informatikdienste Universität Bern ID BEKO Grid Forum 7. Mai 2007 Inhalt Einführung Ausbau 06/07 Hardware Software Benutzung Dokumentation Gut zu wissen Kontakt Apple/Mac:

Mehr

Benutzer und Rechte Teil 1, Paketverwaltung, SSH

Benutzer und Rechte Teil 1, Paketverwaltung, SSH Benutzer und Rechte Teil 1, Paketverwaltung, SSH Linux-Kurs der Unix-AG Benjamin Eberle 26. Mai 2015 Wozu verschiedene Benutzer? (1) Datenschutz mehrere Benutzer pro Rechner, insbesondere auf Server-Systemen

Mehr

ModProg 15-16, Vorl. 13

ModProg 15-16, Vorl. 13 ModProg 15-16, Vorl. 13 Richard Grzibovski Jan. 27, 2016 1 / 35 Übersicht Übersicht 1 Supercomputing FLOPS, Peak FLOPS Parallelismus Praktische Aspekte 2 Klausur von 2009 2 / 35 Supercomputing: HPC Modellierung

Mehr

Anleitung für zwei C++ - Openmp - Beispiele auf der NWZSuperdome

Anleitung für zwei C++ - Openmp - Beispiele auf der NWZSuperdome Anleitung für zwei C++ - Openmp - Beispiele auf der NWZSuperdome (Timo Heinrich, t_hein03@uni-muenster.de) Inhaltsverzeichnis: 0.Einleitung 1.Teil: Helloworldprogramm 1.1 Quellcode: Helloworld.cpp 1.2

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 11 Dynamische Feldvereinbarung... 11-2 11.1 Dynamische Vereinbarung von Vektoren... 11-3 11.2 Dynamische Vereinbarung von Matrizen... 11-5 11.3 Die Kommandozeile... 11-8 Propädeutikum 11-1/8 11

Mehr

Grundlagen der Informatik Vorlesungsskript

Grundlagen der Informatik Vorlesungsskript Grundlagen der Informatik Vorlesungsskript Prof. Dr. T. Gervens, Prof. Dr.-Ing. B. Lang, Prof. Dr. F.M. Thiesing, Prof. Dr.-Ing. C. Westerkamp 16 AUTOMATISCHES ÜBERSETZEN VON PROGRAMMEN MIT MAKE... 2 16.1

Mehr

Trend der letzten Jahre in der Parallelrechentechnik

Trend der letzten Jahre in der Parallelrechentechnik 4.1 Einführung Trend der letzten 10-15 Jahre in der Parallelrechentechnik weg von den spezialisierten Superrechner-Plattformen hin zu kostengünstigeren Allzwecksystemen, die aus lose gekoppelten einzelnen

Mehr

Paralleles Rechnen und Grid Computing am ZIV Zustandsbericht und Ausblick

Paralleles Rechnen und Grid Computing am ZIV Zustandsbericht und Ausblick Dipl. Geophys. Martin Leweling (lewelin@uni muenster.de) Westfälische Wilhelms Universität Münster Zentrum für Informationsverarbeitung Inhalt Parallelrechner ZIVcluster Hard und Softwareausstattung des

Mehr

Archivieren und Komprimieren, SSH

Archivieren und Komprimieren, SSH Archivieren und Komprimieren, SSH Linux-Kurs der Unix-AG Andreas Teuchert 12. November 2012 Archivieren Archivieren ist das Zusammenfassen mehrerer Dateien zu einer einzigen Hauptanwendung früher war das

Mehr

Programmentwicklung mit C++ (unter Unix/Linux)

Programmentwicklung mit C++ (unter Unix/Linux) Programmentwicklung mit C++ (unter Unix/Linux) Erste Schritte Der gcc - Compiler & Linker Organisation des Source-Codes & Libraries Automatische Programmgenerierung: Make Birgit Möller & Denis Williams

Mehr

Modulare Programmierung und Bibliotheken

Modulare Programmierung und Bibliotheken Modulare Programmierung und Bibliotheken Proseminar-Vortrag am 24.06.2011 von Ludwig Eisenblätter Ludwig Eisenblätter 1 von 25 Modulare Programmierung und Bibliotheken Inhaltsübersicht Motivation / Einleitung

Mehr

Zum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE

Zum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE Zum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE 754 Standard festgelegt. Es stehen sogenannte einfach

Mehr

Organisatorisches. Übungsleiter: Karsten Otto Homepage: Aufgaben

Organisatorisches. Übungsleiter: Karsten Otto Homepage:  Aufgaben Organisatorisches Übungsleiter: Karsten Otto (otto@inf.fu-berlin.de) Homepage: http://www.inf.fu-berlin.de/lehre/ss04/sysi/ Aufgaben Montags im Netz Vorbesprechung Dienstag/Mittwoch in den Übungen Abgabe

Mehr

DAP2-Programmierpraktikum Einführung in C++ (Teil 1)

DAP2-Programmierpraktikum Einführung in C++ (Teil 1) DAP2-Programmierpraktikum Einführung in C++ (Teil 1) Carsten Gutwenger 11. April 2008 Lehrstuhl 11 Algorithm Engineering Fakultät für Informatik, TU Dortmund Überblick Mein erstes C++-Programm Namensräume

Mehr

Einführung in die C-Programmierung

Einführung in die C-Programmierung Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).

Mehr

Warum in die Ferne schweifen?

Warum in die Ferne schweifen? Eine Reise nach Palma B. Süselbeck Warum in die Ferne schweifen? Lokale Ressourcen reichen nicht trotz Parallelisierung Lokale Hardwarebeschaffung zu teuer, nur gelegentlich benutzt 1 Demo Ein kleines

Mehr

High Performance Computing

High Performance Computing REGIONALES RECHENZENTRUM ERLANGEN [ RRZE ] High Performance Computing Systemausbildung Grundlagen und Aspekte von Betriebssystemen und System-nahen Diensten Michael Meier, RRZE, 01.07.2015 Agenda Was bedeutet

Mehr

Eprog Starthilfe. 5. Oktober 2010. 1 Einleitung 2

Eprog Starthilfe. 5. Oktober 2010. 1 Einleitung 2 Eprog Starthilfe 5. Oktober 2010 Inhaltsverzeichnis 1 Einleitung 2 2 Windows 2 2.1 Cygwin Installation................................... 2 2.2 Programmieren mit Emacs............................... 8

Mehr

Kompilieren und Linken

Kompilieren und Linken Kapitel 2 Kompilieren und Linken Bevor wir uns auf C++ selbst stürzen, brauchen wir einiges Vorgeplänkel, wie man komfortabel ein größeres C++- kompilieren kann. Mit Java stellt sich der Kompiliervorgang

Mehr

Embedded So)ware. Einrichten der Arbeitsumgebung

Embedded So)ware. Einrichten der Arbeitsumgebung Embedded So)ware Einrichten der Arbeitsumgebung Inhaltsangabe 1. Was ist installiert 2. Was ist zu tun? Einrichten des Raspi! Cross Compiler auf den Arbeitsplatzrechner installieren! Raspi einbinden! Plugin

Mehr

Prüfungsvorleistung Datenstrukturen

Prüfungsvorleistung Datenstrukturen Prüfungsvorleistung Datenstrukturen Allgemeine Hinweise Als Prüfungsvorleistung für die Klausur Datenstrukturen müssen Hausaufgaben gelöst werden. Jede Hausaufgabe wird mit einer bestimmten Anzahl an Punkten

Mehr

(allgemeine) OOP in C++ Klassen und header-files Konstruktorn / Destruktoren Speicherverwaltung C++ Standard Library / SLT

(allgemeine) OOP in C++ Klassen und header-files Konstruktorn / Destruktoren Speicherverwaltung C++ Standard Library / SLT Architektur Übersicht (allgemeine) OOP in C++ Polymorphie Virtuelle Funktionen Kompilieren Linken dynamische/statische Bibliotheken Tutorial: vs2008+ogre+(campus modell) Architektur (allgemeine) OOP in

Mehr

BraLUG-Cluster Idee, Konzept und Umsetzung. Uwe Berger; 2005

BraLUG-Cluster Idee, Konzept und Umsetzung. Uwe Berger; 2005 <bergeruw@gmx.net> Idee, Konzept und Umsetzung ; 2005 Inhalt Die Idee Das Konzept Die Umsetzung PVM Hard-/Software Bootkonzept Clientanmeldung... und jetzt? 01/2005 2 Die Idee eine aussergewöhnliche und

Mehr

Anleitung für zwei Fortran-Openmp-Beispiele auf der NWZSuperdome

Anleitung für zwei Fortran-Openmp-Beispiele auf der NWZSuperdome Anleitung für zwei Fortran-Openmp-Beispiele auf der NWZSuperdome (Timo Heinrich, t_hein03@uni-muenster.de) Inhaltsverzeichnis: 0.Einleitung 1.Teil: Helloworldprogramm 1.1 Quellcode: Helloworld.f90 1.2

Mehr

Entwicklung mit mehreren Dateien

Entwicklung mit mehreren Dateien Frühjahrsemester 2011 CS104 Programmieren II Teil II: C++ Programmierung Kapitel 9: Entwicklungsprozess in C++ H. Schuldt Entwicklung mit mehreren Dateien In C++ ist es üblich, den Quelltext in mehreren

Mehr

NWZSUPERDOME. Einführung für Benutzer. Christian Mück-Lichtenfeld. Organisch-Chemisches Institut. May 16, 2007

NWZSUPERDOME. Einführung für Benutzer. Christian Mück-Lichtenfeld. Organisch-Chemisches Institut. May 16, 2007 Einführung für Benutzer Christian Mück-Lichtenfeld Organisch-Chemisches Institut May 16, 2007 1/44 Überblick Themen Hardwareresourcen Installierte Software Programmierung Zielgruppe: High Performance Computing

Mehr

Generalisierung von großen Datenbeständen am Beispiel der Gebäudegeneralisierung mit CHANGE

Generalisierung von großen Datenbeständen am Beispiel der Gebäudegeneralisierung mit CHANGE Institut für Kartographie und Geoinformatik Leibniz Universität Hannover Generalisierung von großen Datenbeständen am Beispiel der Gebäudegeneralisierung mit CHANGE Frank Thiemann, Thomas Globig Frank.Thiemann@ikg.uni-hannover.de

Mehr

Grundlagen der Verwendung von make

Grundlagen der Verwendung von make Kurzskript zum Thema: Grundlagen der Verwendung von make Stefan Junghans Gregor Gilka 16. November 2012 1 Einleitung In diesem Teilskript sollen die Grundlagen der Verwendung des Programmes make und der

Mehr

Archivieren und Komprimieren, Globs

Archivieren und Komprimieren, Globs Archivieren und Komprimieren, Globs Linux-Kurs der Unix-AG Benjamin Eberle 23. November 2015 Sonderzeichen in Dateinamen bestimmte Zeichen haben für die Shell eine Sonderbedeutung (z. B. Globs oder das

Mehr

PROGRAMMIEREN MIT C. }, wird kompiliert mit dem Befehl. (-o steht für output) und ausgeführt mit dem Befehl

PROGRAMMIEREN MIT C. }, wird kompiliert mit dem Befehl. (-o steht für output) und ausgeführt mit dem Befehl PROGRAMMIEREN MIT C Allgemeine hinweise Alles was hier beschrieben wird, soll auch ausprobiert werden. Warum C? Weil die coolen Dinge mit C am einfachsten gehen. Das werden wir in den folgenden Übungen

Mehr

Userguide für den Linux Cluster des UZWR. the admins

Userguide für den Linux Cluster des UZWR. the admins Userguide für den Linux Cluster des UZWR the admins 12. April 2011 Inhaltsverzeichnis 1 Aufbau des Rechenclusters 1 2 Login 2 2.1 Windows........................................ 2 2.1.1 PuTTy......................................

Mehr

1. Übung zu "Numerik partieller Differentialgleichungen"

1. Übung zu Numerik partieller Differentialgleichungen 1. Übung zu "Numerik partieller Differentialgleichungen" Simon Gawlok, Eva Treiber Engineering Mathematics and Computing Lab 22. Oktober 2014 1 / 15 1 Organisatorisches 2 3 4 2 / 15 Organisatorisches Ort:

Mehr

Computergrafik 1 Übung, Wintersemester 2011. Eclipse Hands-On. C++ Projektsetup mit OpenGL und GLUT unter Eclipse für Windows 22.10.

Computergrafik 1 Übung, Wintersemester 2011. Eclipse Hands-On. C++ Projektsetup mit OpenGL und GLUT unter Eclipse für Windows 22.10. Computergrafik 1 Übung, Wintersemester 2011 Eclipse Hands-On C++ Projektsetup mit OpenGL und GLUT unter Eclipse für Windows 22.10.12 1 Eclipse - Die IDE 1. Entwicklungsumgebung (IDE) herunterladen / installieren

Mehr

XSC. Reimar Bauer, Rebecca Breu. Dezember 2008. Forschungszentrum Jülich. Weihnachtsfeier, 10. Dezember 2008 1

XSC. Reimar Bauer, Rebecca Breu. Dezember 2008. Forschungszentrum Jülich. Weihnachtsfeier, 10. Dezember 2008 1 XSC Reimar Bauer, Rebecca Breu Forschungszentrum Jülich Dezember 2008 Weihnachtsfeier, 10. Dezember 2008 1 Supercomputing I I Forschungszentrum Ju lich mischt da mit Zweimal im Jahr gibt es eine Top 500-Liste

Mehr

Wie man eigene Programme erstellt

Wie man eigene Programme erstellt Kapitel 3 Wie man eigene Programme erstellt In diesem Kapitel geht es darum, sich mit einem Compiler vertraut zu machen. Dabei erfahren Sie, wie Sie eigene Programme auf den Systemen Windows und Linux

Mehr

Kurzanleitung zu XML2DB

Kurzanleitung zu XML2DB Kurzanleitung zu XML2DB Inhaltsverzeichnis 1. Einleitung...3 2. Entwicklungsumgebung...3 3. Betriebsanleitung...3 3.1 Einrichten der Java Umgebung...3 3.2 Allgemeines zu java und javac...4 3.2.1 Allgemeines

Mehr

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Buildsysteme

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Buildsysteme Grundkurs C++ Buildsysteme Buildsysteme Beispielhaftes Übersetzungsszenario: Verzeichnis tutorial7/ main.cpp, lcdrange.cpp, lcdrange.h *.cpp Kompilieren *.o *.h Grundkurs C++ 2 Headerdateien //blackbox.h

Mehr

ATB Ausbildung Technische Berufe Ausbildungszentrum Klybeck

ATB Ausbildung Technische Berufe Ausbildungszentrum Klybeck Das Linux-Dateisystem bin usr sbin lib mail / var spool boot lpd Rc0.d etc Rc.d Rc1.d Verzeichnisstruktur / Root- oder Wurzelverzeichnis, das oberste Verzeichnis im kompletten Dateisystem. /bin Programme

Mehr

WinSCP Zugriff auf Daten des Uni-Netzwerkes

WinSCP Zugriff auf Daten des Uni-Netzwerkes WinSCP Zugriff auf Daten des Uni-Netzwerkes Robert Hillig 2013/03 1. Vorwort Das Universitätsnetzwerk ist von außen per SSH (Secure SHell) über login.tu-chemnitz.de auf Port 22 erreichbar. SSH ist ein

Mehr

Web-Dienste: MI-Portal. News abonnieren / abbestellen. MI-Portal: Kontoeinstellungen. Studiengang Medieninformatik. Hochschule RheinMain

Web-Dienste: MI-Portal. News abonnieren / abbestellen. MI-Portal: Kontoeinstellungen. Studiengang Medieninformatik. Hochschule RheinMain Web-Dienste: MI-Portal Infrastruktur-Überblick 14. Oktober 2014 Studiengang Medieninformatik Login bei Zugriff von außen und für Einstellungen notwendig Hochschule RheinMain wolfgang.weitz@hs-rm.de https://www.mi.hs-rm.de/portal

Mehr

Client-Server mit Socket und API von Berkeley

Client-Server mit Socket und API von Berkeley Client-Server mit Socket und API von Berkeley L A TEX Projektbereich Deutsche Sprache Klasse 3F Schuljahr 2015/2016 Copyleft 3F Inhaltsverzeichnis 1 NETZWERKPROTOKOLLE 3 1.1 TCP/IP..................................................

Mehr

Literatur. Einführung in Unix. Login. Passwort. Mag. Thomas Griesmayer. Benutzererkennung und Passwort Case-Sensitiv Prompt

Literatur. Einführung in Unix. Login. Passwort. Mag. Thomas Griesmayer. Benutzererkennung und Passwort Case-Sensitiv Prompt Literatur Einführung in Unix Introduction to Unix Martin Weissenböck: Linux, 2000, 2. Auflage, Adim Bodo Bauer: SuSE Linux 6.2, Installation, Konfiguration und erste Schritte, 1999, 15. Auflage, SuSE Verlag.

Mehr

Anleitung zur Einrichtung von OpenCV

Anleitung zur Einrichtung von OpenCV Anleitung zur Einrichtung von Dieses Dokument beschreibt die Einrichtung und Funktionsüberprüfung von im Kontext der Lehrveranstaltung. Einrichtung Dieser Abschnitt beschreibt die Einrichtung von unter

Mehr

RWTH - Umgebung. Übersicht. Seite 1. RWTH-Umgebung. Sun Grid Engine. Dateimanagement. Archiv. Backup. Seite 2. RWTH-Umgebung

RWTH - Umgebung. Übersicht. Seite 1. RWTH-Umgebung. Sun Grid Engine. Dateimanagement. Archiv. Backup. Seite 2. RWTH-Umgebung RWTH Ugebung Seite 1 Übersicht Sun Grid Engine Dateianageent Archiv Backup Seite 2 Sun Grid Engine Warteschlange für Prograe Verteilt Prograe über das ganze Cluster Sorgt für Lastausgleich (verhindert

Mehr

Von SVN zu Git. Daniel Willmann 2011-10-18 cbna

Von SVN zu Git. Daniel Willmann <daniel@totalueberwachung.de> 2011-10-18 cbna Von SVN zu Git Daniel Willmann 2011-10-18 cbna Inhalt Einführung Git für SVN Benutzer Weitergehende Konzepte Zusammenfassung Daniel Willmann Von SVN zu Git 2 Über den Vortragenden

Mehr

Vorlesung Informatik II

Vorlesung Informatik II Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 02. JAVA: Erstes Programm 1 Das erste Java-Programm

Mehr

Coma I. Einleitung. Computer und Algorithmen. Programmiersprachen. Algorithmen versus Programmiersprachen. Literaturhinweise

Coma I. Einleitung. Computer und Algorithmen. Programmiersprachen. Algorithmen versus Programmiersprachen. Literaturhinweise Coma I Einleitung 1 Computer und Algorithmen Programmiersprachen Algorithmen versus Programmiersprachen Literaturhinweise 2 Computer und Algorithmen Programmiersprachen Algorithmen versus Programmiersprachen

Mehr

11.1 Indirektes Binden (3) 11.1 Indirektes Binden (4) Objektadapterkonfiguration. Unmittelbarer Vorteil des indirekten Bindens

11.1 Indirektes Binden (3) 11.1 Indirektes Binden (4) Objektadapterkonfiguration. Unmittelbarer Vorteil des indirekten Bindens 11.1 Indirektes Binden (3) Objektadapterkonfiguration Name wird bei Erzeugung vergeben wird genutzt u.a. für Property-Zugriffe Adapter-ID wird über Property konfiguriert Beispiel: MyAdapter.AdapterID=MyAdapter

Mehr

Matlab. Hinweise zur Nutzung auf dem Clustersystem. Um dieses Paket auf dem Clustersystem zu benutzen, muss man das Modul laden. Dies macht man so:

Matlab. Hinweise zur Nutzung auf dem Clustersystem. Um dieses Paket auf dem Clustersystem zu benutzen, muss man das Modul laden. Dies macht man so: Leibniz Universität IT Services (LUIS) Service: Scientific Computing Matlab Hinweise zur Nutzung auf dem Clustersystem Matlab ist ein programmierbar interaktives Programmsystem für das numerische und symbolische

Mehr

CVS-Einführung. Sebastian Mancke, mancke@mancke-software.de

CVS-Einführung. Sebastian Mancke, mancke@mancke-software.de CVS-Einführung Sebastian Mancke, mancke@mancke-software.de Grundlagen Motivation und Anforderung Sobald ein Softwaresystem anwächst, ergeben sich Probleme im Umgang mit dem Quell Code. CVS (Concurrent

Mehr

Die Programmiersprache C99: Zusammenfassung

Die Programmiersprache C99: Zusammenfassung Die Programmiersprache C99: Zusammenfassung Jörn Loviscach Versionsstand: 7. Dezember 2010, 19:30 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Videos dazu: http://www.youtube.com/joernloviscach

Mehr

Einführung in die Programmierung mit Qt

Einführung in die Programmierung mit Qt Einführung in die Programmierung mit Qt Dr. Ralf Schüler 5.11.2009 Was ist Qt? sprich: [kju:t] Klassenbibliothek für C++ (ferner Java, Python u.a.) sehr umfangreich: GUI, Stringverarbeitung, reguläre Ausdrücke,

Mehr

Lehrstuhl für Datenverarbeitung. Technische Universität München. Leistungskurs C++ Subversion / CMake

Lehrstuhl für Datenverarbeitung. Technische Universität München. Leistungskurs C++ Subversion / CMake Leistungskurs C++ Subversion / CMake Subversion am LDV Repository der Gruppen: https://www2.ldv.ei.tum.de/repos/14cppx Anlegen des Repository: svn checkout https://www2.ldv.ei.tum.de/repos/14cppx cd 14cppX

Mehr

Projektseminar Parallele Programmierung

Projektseminar Parallele Programmierung HTW Dresden WS 2014/2015 Organisatorisches Praktikum, 4 SWS Do. 15:00-18:20 Uhr, Z136c, 2 Doppelstunden o.g. Termin ist als Treffpunkt zu verstehen Labore Z 136c / Z 355 sind Montag und Donnerstag 15:00-18:20

Mehr

Leistungsanalyse von Rechnersystemen

Leistungsanalyse von Rechnersystemen Zentrum für Informationsdienste und Hochleistungsrechnen (ZIH) Leistungsanalyse von Rechnersystemen Auf Ein-/Ausgabe spezialisierte Benchmarks Zellescher Weg 12 Willers-Bau A109 Tel. +49 351-463 - 32424

Mehr

Objektbasierte Entwicklung

Objektbasierte Entwicklung Embedded Software Objektbasierte Entwicklung Objektorientierung in C? Prof. Dr. Nikolaus Wulff Objektbasiert entwickeln Ohne C++ wird meist C im alten Stil programmiert. => Ein endlose while-schleife mit

Mehr

Version 0.3. Installation von MinGW und Eclipse CDT

Version 0.3. Installation von MinGW und Eclipse CDT Version 0.3 Installation von MinGW und Eclipse CDT 1. Stellen Sie fest, ob Sie Windows in der 32 Bit Version oder in der 64 Bit Version installiert haben. 2. Prüfen Sie, welche Java Runtime vorhanden ist.

Mehr

Was ist QT? Beispiele: KDE Google Earth Mathematika

Was ist QT? Beispiele: KDE Google Earth Mathematika Einführung in QT Was ist QT? QT ist eine Klassenbibliothek für plattformübergreifende Programmierung graphischer Benutzeroberflächen QT ist für verschiedene Graphikplattformen wie X11 (Unix), Windows,

Mehr

Linux - a bit advanced

Linux - a bit advanced Linux - a bit advanced Überblick Rechteverwaltung Dateisystem Shell-Programmierung Remote login Paketsystem Alternativen-System Rechte Drei Benutzerklassen Owner/User Group Others Drei Rechte Ausführen

Mehr

Anleitung zur Einrichtung von OpenCV

Anleitung zur Einrichtung von OpenCV Anleitung zur Einrichtung von Dieses Dokument beschreibt die Einrichtung und Funktionsüberprüfung von im Kontext der Lehrveranstaltung. Einrichtung Dieser Abschnitt beschreibt die Einrichtung von unter

Mehr

Linux Prinzipien und Programmierung

Linux Prinzipien und Programmierung Linux Prinzipien und Programmierung Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2011/2012 1 / 22 popen Programmentwicklung unter Linux make gcc, objdump, readelf 2 / 22 Die Funktion popen Im

Mehr

HDNUM. Peter Bastian (IWR) Numerik November / 158

HDNUM. Peter Bastian (IWR) Numerik November / 158 HDNUM C++ kennt keine Matrizen und Vektoren,... Wir haben C++ erweitert um die Heidelberg Educational Numerics Library, kurz HDNum. Alle in der Vorlesung behandelten Beispiele sind dort enthalten. Peter

Mehr

Klausur zu High Performance Computing 09. Juli 2011, SS 2011

Klausur zu High Performance Computing 09. Juli 2011, SS 2011 Alexander Vondrous, Britta Nestler, Fakultät IWI, Hochschule Karlsruhe Klausur zu High Performance Computing 09. Juli 2011, SS 2011 Es sind keine Hilfsmittel zugelassen. Bearbeitungszeit: 90 Minuten Aufgabe

Mehr

Praktikum Betriebssysteme 1. Aufgabe (1)

Praktikum Betriebssysteme 1. Aufgabe (1) FG TECHNISCHE INFORMATIK U BS 041 01 TH 09 Praktikum Betriebssysteme 1. Aufgabe (1) Es wird ein unter LINUX lauffähiges C++-Programm ptab, mit dem Informationen über die Partitionierung von Festplatten

Mehr

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand 01.08.2005-08-16. Copyright

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand 01.08.2005-08-16. Copyright Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand 01.08.2005-08-16 Änderungen in Dokumentation und Software sind vorbehalten! Copyright Copyright 2005 COSA GmbH Alle Rechte vorbehalten.

Mehr

Nutzung paralleler Prozesse bei der Umweltsimulation

Nutzung paralleler Prozesse bei der Umweltsimulation Nutzung paralleler Prozesse bei der Umweltsimulation RALF Wieland rwieland@zalf.de ZALF/LSA Nutzung paralleler Prozesse bei der Umweltsimulation p. 1 Warum parallele Prozesse? Die Steigerung der Taktfrequenz

Mehr

Inhalt. Prozessoren. Curriculum Manfred Wilfling. 28. November HTBLA Kaindorf. M. Wilfling (HTBLA Kaindorf) CPUs 28. November / 9

Inhalt. Prozessoren. Curriculum Manfred Wilfling. 28. November HTBLA Kaindorf. M. Wilfling (HTBLA Kaindorf) CPUs 28. November / 9 Inhalt Curriculum 1.4.2 Manfred Wilfling HTBLA Kaindorf 28. November 2011 M. Wilfling (HTBLA Kaindorf) CPUs 28. November 2011 1 / 9 Begriffe CPU Zentraleinheit (Central Processing Unit) bestehend aus Rechenwerk,

Mehr

Benutzer und Rechte Teil 1

Benutzer und Rechte Teil 1 Benutzer und Rechte Teil 1 Linux-Kurs der Unix-AG Zinching Dang 19. November 2012 Wozu verschiedene Benutzer? (1) Datenschutz mehrere Benutzer pro Rechner, insbesondere auf Server-Systemen unterschiedliche

Mehr

Compilieren und Linken von C- und C++-Dateien

Compilieren und Linken von C- und C++-Dateien Compilieren und Linken von C- und C++-Dateien 1999-2011 Dipl.Phys. Gerald Kempfer Lehrbeauftragter / Gastdozent an der Beuth Hochschule für Technik-Berlin Internet: public.beuth-hochschule.de/~kempfer

Mehr

SelfLinux-0.12.3. Der Linux-Kernel

SelfLinux-0.12.3. Der Linux-Kernel Der Linux-Kernel Autor: Erwin Dogs (edogs@t-online.de) Formatierung: Matthias Hagedorn (matthias.hagedorn@selflinux.org) Lizenz: GFDL Dieses Kapitel führt in die grundsätzliche Arbeitsweise eines Linux-Systems

Mehr

Systemvoraussetzungen

Systemvoraussetzungen Systemvoraussetzungen INDEX Netzwerk Überblick Benötigte n für: Windows Server 2008 Windows Server 2008 R2 Windows Server 2012 Windows SQL Server 2008 (32 Bit & 64 Bit) Windows SQL Server 2012 Client Voraussetzungen

Mehr

Process: Installationsleitfaden

Process: Installationsleitfaden Inhaltsverzeichnis 1 Einleitung...4 2 Technische Details...5 2.1 Systemvoraussetzungen...5 2.2 Technischer Support...5 3 Installation von Process...6 3.1 Datenbank und Dokument-Wurzelverzeichnis...7 3.2

Mehr

OS X StartupItems von Matthias Weidlich

OS X StartupItems von Matthias Weidlich OS X StartupItems von Matthias Weidlich 23.06.05 / 1 Agenda Einordnung Mac OS X Login Objects vs. StartupItems OS X StartupItems Arten und Startzeitpunkt Konfiguration am Beispiel Cron und Apache SystemStarter

Mehr

Verteilte Versionskontrolle mit GIT. 17.04.2012 - Dortmund Ansgar Brauner - GreenPocket GmbH - Köln

Verteilte Versionskontrolle mit GIT. 17.04.2012 - Dortmund Ansgar Brauner - GreenPocket GmbH - Köln Verteilte Versionskontrolle mit GIT 17.04.2012 - Dortmund Ansgar Brauner - GreenPocket GmbH - Köln 1 über mich 32 Jahre alt Softwareentwickler bei der Firma GreenPocket in Köln Java EE Entwickler und Rails

Mehr

Kurs für Linux Online Kurs Verwalter des Linux System

Kurs für Linux Online Kurs Verwalter des Linux System Kurs für Linux Online Kurs Verwalter des Linux System Akademie Domani info@akademiedomani.de Allgemeines Programm des Kurses Linux Basis Programm MODUL 1 - Fundamental Einführung in Linux Das Verfahren

Mehr

Installationsanleitung

Installationsanleitung 1 Systemvoraussetzungen: 1.1 Hardware: CPU: Intel Pentium II oder AMD Athlon Memory: 256 MB Ram Festplatte: Min. 4 GB Monitor: Min. 17 Zoll Grafikkarte: Auflösung 1280 x 1024, mindestens 65536 Farben Maus:

Mehr

Pass by Value Pass by Reference Defaults, Overloading, variable Parameteranzahl

Pass by Value Pass by Reference Defaults, Overloading, variable Parameteranzahl Funktionen Zusammenfassung von Befehlssequenzen als aufrufbare/wiederverwendbare Funktionen in einem Programmblock mit festgelegter Schnittstelle (Signatur) Derartige prozedurale Programmierung erlaubt

Mehr

Archive / Backup System für OpenVMS

Archive / Backup System für OpenVMS Archive / Backup System für OpenVMS DECUS Symposium 2002 Bonn Vortrag-Nr. 3C04 Günther Fröhlin Compaq Computer Corporation Colorado Springs, USA 1 Highlights V4.0 Auslieferung Januar 2002 Hauptversion

Mehr

Nuetzlicher Kleinkram

Nuetzlicher Kleinkram Ein paar Hilfestellungen zur Arbeit unter Linux/Unix FB Physik Freie Universität Berlin Computerphysik WS 2007/2008 1 2 3 user@ host :~ > gcc -o programm quelltext. c macht gleich mehrere Dinge auf einmal

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

1 Installation QTrans V2.0 unter Windows NT4

1 Installation QTrans V2.0 unter Windows NT4 1 Installation QTrans V2.0 unter Windows NT4 1.1 Unterstützte Funktionen Unter NT4 wird nur der Betrieb von QTrans im Report-Client-Modus unterstützt, d. h. für die Anzeige von Schraubergebnissen und für

Mehr

Übung 9. Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9

Übung 9. Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9 Informatik I 2 Übung 9 Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9 Quellcode Strukturieren Wenn alle Funktionen in einer Datei zusammengefasst sind wird es schnell unübersichtlich Mehrere

Mehr

9 Multithreading. 1 Idee des Multithreading

9 Multithreading. 1 Idee des Multithreading 9 Multithreading Jörn Loviscach Versionsstand: 21. Juli 2015, 11:50 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work is licensed

Mehr

Beginn der Vorlesung zur Numerik I (Wintersemester 2010/2011)

Beginn der Vorlesung zur Numerik I (Wintersemester 2010/2011) M. Sc. Frank Gimbel Beginn der Vorlesung zur Numerik I (Wintersemester 2010/2011) 1 Motivation Ziel ist es, ein gegebenes lineares Gleichungssystem der Form Ax = b (1) mit x, b R n und A R n n zu lösen.

Mehr

1 Linux-Befehlsübersicht

1 Linux-Befehlsübersicht 1 Linux-Befehlsübersicht 1.1 Dateiverwaltung ls Verzeichnisinhalt anzeigen (list) ls -l ausführliche Darstellung ls -a auch versteckte Dateien auisten ls -h verwende besser lesbare Einheiten (humanreadable,

Mehr

Software Engineering I

Software Engineering I Software I Übungsblatt 1 + 2 Claas Pinkernell Technische Universität Braunschweig http://www.sse.cs.tu-bs.de/ Seite 2 Welche Werkzeuge? Programmiersprache Java Integrierte Entwicklungsumgebung Eclipse

Mehr

Apache Subversion (SVN)

Apache Subversion (SVN) Apache Subversion (SVN) Datamining und Sequenzanalyse Marvin Meusel, Sascha Winter 18.10.2013 Apache Subversion (SVN) Datamining und Sequenzanalyse Marvin Meusel, Sascha Winter 18.10.2013 git Datamining

Mehr

Computer & GNU/Linux Einführung Teil 1

Computer & GNU/Linux Einführung Teil 1 Inst. für Informatik [IFI] Computer & GNU/Linux EinführungTeil 1 Simon Haller, Sebastian Stab 1/17 Computer & GNU/Linux Einführung Teil 1 Simon Haller, Sebastian Stabinger, Philipp Zech Inst. für Informatik

Mehr

Praktikum Ingenieurinformatik. Termin 2. Mein erstes C-Programm

Praktikum Ingenieurinformatik. Termin 2. Mein erstes C-Programm Praktikum Ingenieurinformatik Termin 2 Mein erstes C-Programm 1 1. Einleitung 2. Erstes C-Programm 3. Fehler ins Programm einbauen 4. Zweites und drittes C-Programm 5. Installation der Visual C++ 2010

Mehr

CVS. The open standard for version control. (Concurrent Versions System) Maik Zemann CVS

CVS. The open standard for version control. (Concurrent Versions System) Maik Zemann CVS CVS Maik Zemann CVS (Concurrent Versions System) The open standard for version control 1 Gliederung Gliederung Was ist CVS? Motivation? Konzept von CVS Die wichtigsten Befehle Merging Logging im Quelltext

Mehr

Beispiel 2a Die eigenen ersten Schritte mit dem Gnu-Debugger GDB für Remote-Debugging

Beispiel 2a Die eigenen ersten Schritte mit dem Gnu-Debugger GDB für Remote-Debugging Beispiel 2a Die eigenen ersten Schritte mit dem Gnu-Debugger GDB für Remote-Debugging Das Beispiel orientiert sich am selben Code, der im Teil 1 der Serie verwendet wurde. Text Styles: Shell Prompt mit

Mehr