Paralleles Programmieren mit MPI und OpenMP
|
|
|
- Maya Brauer
- vor 10 Jahren
- Abrufe
Transkript
1 Paralleles Programmieren mit MPI und OpenMP Vorlesung «Algorithmen für das wissenschaftliche Rechnen» Olaf Schenk, Michael Hagemann Algorithmen des wissenschaftlichen Rechnens 1 Organisatorisches Teilnahme an den Übungen - Teilnahme ist verpflichtend für den Erhalt des Scheins - Gruppenarbeit in 2er- oder 3er-Gruppen - Praktikumsraum ist jeden Montag von Uhr zugänglich - Alle zwei Wochen Besprechung des Aufgabenblattes Bitte eine Mail mit den Namen der Gruppenmitglieder bis Mittwoch an - [email protected] - Zusammen mit Lösung der 1. Aufgabe, falls noch nicht abgegeben Algorithmen des wissenschaftlichen Rechnens 2 1
2 Übersicht Motivation - Warum paralleles Rechnen Parallele Hardware - Auch hier: Speicher-Organisation Überblick OpenMP - Rechenmodell Einführung MPI - Rechenmodelle - Programmiermodelle Algorithmen des wissenschaftlichen Rechnens 3 Motivation Wissenschaftliches Rechnen heisst immer öfter Paralleles Rechnen Einzelne Prozessoren stossen an physikalische Grenzen Netzwerke werden immer schneller Gesucht: Einheitliche Modelle und Methoden zur Programmierung paralleler und verteilter Systeme Algorithmen des wissenschaftlichen Rechnens 4 2
3 Grundlegende Fragestellungen Hardware: - Wie schaltet man möglichst viele schnelle Gleitkomma- Einheiten zusammen? - Wie gewährleistet man schnellen Speicherzugriff für alle Prozessoren? - Bus-/Netzwerk-Technologie, Topologien - Sonderentwicklungen? (Vektorrechner, aktuell: Earth Simulator «Computenik») - Wirtschaftlichkeit (Benutzung marktüblicher Teile)? Software - Wie nutzt man die Hardware optimal? - Wie bleiben die Programme portabel? (für den nächsten Rechner) - Gute Kompromisse zwischen dem Aufwand der Parallelisierung und dem «Speedup» Algorithmen des wissenschaftlichen Rechnens 5 Parallele Hardware (1) Einordnung nach Speicher-Organisation: Uniform Memory Access; Cache coherent (cc-uma) - SMPs (Shared Memory Parallel, ursprünglich: Symmetric Multi- Processors) - z.b. 2-CPUs Intel SMP Non-uniform MA; not cache coherent (ncc-numa) - MPPs (Massively Parallel Processing), Cluster - z.b. Cray T3E, Beowulf-Cluster Non-uniform MA; cache coherent (cc-numa) - «Virtual Shared Memory» - z.b.: SGI Origin, HP SuperDome - Verteilter Speicher, aber global addressierbar Algorithmen des wissenschaftlichen Rechnens 6 3
4 Parallele Hardware (2) Cache-Kohärenz - Problem: Ein Prozessor liest ein Datum aus dem Speicher und verändert es (im Cache). Ein anderer tut das gleiche. Wenn der erste Proz. das Datum noch nicht in den Speicher zurückgeschrieben hat, ist das Ergebnis falsch. - Abhilfe: Cache/Bus-Snooping. Jeder Cache überprüft, ob andere Prozesse auf «seine» Inhalte zugreifen. Uniform Memory Access - Alle Speicherzugriffe sind gleich schnell - Der Speicher ist global adressierbar Algorithmen des wissenschaftlichen Rechnens 7 Parallele Hardware (3) Shared Memory (cc-uma): Cache P1 Cache P1 P2 Memory Distributed Memory: (ncc-numa) Memory P1 Memory P1 P2 Network Distributed-Shared Memory: (cc-numa) Memory Cache P1 Memory Cache P1 P2 Network Algorithmen des wissenschaftlichen Rechnens 8 4
5 Grenzen von Shared-Memory Eigentlich möchte man nur Shared-Memory haben Zur Zeit sind aber nur bis zu 16 Prozessoren praktikabel Wichtige Einschränkungen sind - Speicherbandbreite - Cache-Kohärenz Deshalb Trend zu Distributed-Shared Memory Systemen - MPP-Systeme mit Shared-Memory Knoten (z.b. IBM SP) - teilweise: cc-numa Algorithmen des wissenschaftlichen Rechnens 9 Übersicht Motivation - Warum paralleles Rechnen Parallele Hardware - Auch hier: Speicher-Organisation Überblick OpenMP - Rechenmodell Einführung MPI - Rechenmodelle - Programmiermodelle Algorithmen des wissenschaftlichen Rechnens 10 5
6 Rechenmodell: Threads Annahmen: - Ein Prozess kann aus mehreren Threads («Fäden») bestehen - Alle Threads teilen den Status (die Variablen) des Programms - Jeder Thread kann zusätzlich private Variablen haben - Die Threads können auf verschiedenen Prozessoren laufen - Es gibt Synchronisations- und Sperr-(Locking) Mechanismen Algorithmen des wissenschaftlichen Rechnens 11 Was ist OpenMP? API zum Schreiben von «Multi-Threaded Applications» - Compiler-Direktiven und Bibliotheksfunktionen - Standardisiert für C und Fortran Neuer Standard (neuer Versuch einer Standardisierung) Wichtig, weil (fast) alle wichtigen Hersteller beteiligt Ansatz: - Programme werden schrittweise parallelisiert - Ausgangspunkt ist die serielle Version, die meist «erhalten» wird - Parallelität wird nicht direkt programmiert, sondern durch Direktiven beeinflusst Algorithmen des wissenschaftlichen Rechnens 12 6
7 Einfaches Beispiel: Hallo Welt Das ursprüngliche Programm bleibt bestehen void main(void) { #pragma omp parallel { printf( Hallo Welt\n ); } } Ausführen (mit Umgebungsvariable): (~): export OMP_NUM_THREADS=4 (~):./hello-openmp Hallo Welt Hallo Welt Hallo Welt Hallo Welt Algorithmen des wissenschaftlichen Rechnens 13 Parallele Regionen (Blöcke) Durch die Compiler-Direktive #pragma omg parallel wird der folgende Block parallel ausgeführt Es wird dafür ein «Team von Threads» gestartet - Die Anzahl ist abhängig von der Umgebungsvariablen OMP_NUM_THREADS, kann aber auch im Programm geändert werden - «Fork-Join-Parallelism» Nachdem alle Threads fertig sind, werden sie entweder gelöscht oder bleiben in Wartestellung Algorithmen des wissenschaftlichen Rechnens 14 7
8 Parallele Schleifen Hauptanwendung von OpenMP ist es, Schleifen zu parallelisieren #pragma omp parallel for - Die direkt folgende Schleife wird parallelisiert Matrix-Matrix Multiplikation: #pragma omp parallel for for (i = 0; i < M; i++) for (j = 0; j < N; j++) for (k = 0; k < K; k++) C[i,j] = A[i,k] * B[k,j]; Die «i»-schleife wird von OMP_NUM_THREADS Threads gleichzeitig ausgeführt Algorithmen des wissenschaftlichen Rechnens 15 Race Conditions Wenn mehrere Threads eine Variable lesen und schreiben, kann es zu Inkonsistenzen kommen Beispiel: Skalar-Produkt: sum = 0.0; #pragma omp parallel for for (i = 0; i < N; i++) sum = sum + x[i] * y[i]; Dies ist analog zu den Cache-Inkonsistenzen in der Hardware Algorithmen des wissenschaftlichen Rechnens 16 8
9 Lösung 1: Locking Um die Addition vor anderen Threads zu schützen, kann man sie als «atomar» oder «kritisch» ausweisen sum = 0.0; #pragma omp parallel for for (i = 0; i < N; i++) #pragma omp critical { sum = sum + x[i] * y[i]; } Dies ist aber ineffizient, weil die Threads nicht mehr «parallel» arbeiten können Algorithmen des wissenschaftlichen Rechnens 17 Lösung 2: Private Variablen Man kann daher in parallelen Regionen bestimmte Variablen als «privat» deklarieren: sum = 0.0; #pragma omp parallel private(local_sum) { local_sum = 0.0; #pragma omp parallel for for (i = 0; i < N; i++) local_sum = local_sum + x[i] * y[i]; #pragma omp critical { sum = sum + local_sum; } } (Dies lässt sich auch etwas knapper formulieren) Algorithmen des wissenschaftlichen Rechnens 18 9
10 Lösung 3: Reduction Variables Da solche Fälle typisch sind, kann man die «kritischen» Variablen als Reduction-Variables ausweisen In den Threads werden sie privat angelegt und am Ende der Schleife mit der entsprechenden Operation verknüpft sum = 0.0; #pragma omp parallel for reduction (+ : sum) for (i = 0; i < N; i++) sum = sum + x[i] * y[i]; Algorithmen des wissenschaftlichen Rechnens 19 Übersicht OpenMP (1) Direktiven (in C, wie alles weitere): - #pragma omp [Klauseln ] - Werden von nicht-openmp Compilern überlesen Parallele Regionen (Blöcke) - #pragma omp parallel - Der folgende Block ( { } ) wird parallel ausgeführt Variable Scoping - #pragma omp private(..) shared(..) reduction(..) firstprivate(..) lastprivat(..) - Legt fest, welche Variablen gemeinsam genutzt werden und welche in jedem Thread als Kopie verwendet werden - shared ist der Default-Wert Algorithmen des wissenschaftlichen Rechnens 20 10
11 Übersicht OpenMP (2) Synchronisierung - #pragma omp atomic, critical, ordered, barrier, flush - Essentiell für die Korrektheit der Programme Parallele Schleifen (work-sharing) - #pragma omp parallel for - Das nachfolgende «for» wird parallelisiert - Art der Aufteilung kann mit der schedule-klausel bestimmt werden - z.b. schedule(dynamic,4): Jeder Thread kriegt vier Schleifendurchläufe (1..4, 5..8, ) zugewiesen und bekommt neue, sobald er fertig ist - Andere Varianten sind static, guided und runtime Algorithmen des wissenschaftlichen Rechnens 21 Übersicht OpenMP (3) Laufzeit-Umgebung: - Anzahl Prozessoren - omp_get_num_procs() - Anzahl Threads: - omp_set_num_threads(int); - int omp_get_num_threads(); - Entspricht der Variablen OMP_NUM_THREADS - int omp_get_thread_num(); Algorithmen des wissenschaftlichen Rechnens 22 11
12 Übersicht OpenMP (4) - Dynamic-Mode: Dürfen in verschiedenen Blocks verschieden viele Threads erzeugt werden? - omp_set_dynamic, omp_get_dynamic - Entspricht: OMP_DYNAMIC (TRUE / FALSE) - Nesting: Dürfen in parallelen Regionen neue Thread-Teams erzeugt werden (verschachtelte Threads)? - omp_set_nested, omp_get_nested - Entspricht: OMP_NESTED (TRUE / FALSE) Algorithmen des wissenschaftlichen Rechnens 23 Einschätzung zu OpenMP Ermöglicht sehr leichte Parallelisierung von bestehenden Programmen Hat genügend Unterstützung um wirklicher Standard zu werden Beschränkt sich aber auf Shared-Memory Systeme Programmierung von Distributed-Memory Systemen verlangt mehr - Identifizierung einer optimalen Datenverteilung auf die Prozessoren (und angeschlossenen Speicher) Minimierung der Kommunikation - Noch nicht befriedigend durch Direktiven lösbar Algorithmen des wissenschaftlichen Rechnens 24 12
13 Übersicht Vorlesung Motivation - Warum paralleles Rechnen Parallele Hardware - Auch hier: Speicher-Organisation Überblick OpenMP - Rechenmodell - Race Conditions Einführung MPI - Rechenmodell - Programmiermodelle Algorithmen des wissenschaftlichen Rechnens 25 Rechenmodell: Message Passing Annahmen: - Es gibt eine Menge von Prozessen - Prozesse laufen nebenläufig - Prozesse können untereinander Nachrichten austauschen (evtl. über Umwege) - An der Kommunikation sind beide Seiten beteiligt (kooperativ, explizites Empfangen) «Schwächer» als Thread-Modell, dafür allgemeingültiger Algorithmen des wissenschaftlichen Rechnens 26 13
14 Vorteile des Message Passing Modells Allgemeingültigkeit - Von Shared-Memory bis Ausdruckskraft - Datentypen, kollektive Kommunikation - «Anthropomorpher» Ansatz («Ich schicke Dir...») Relativ einfach zu «Debuggen» - Kommunikation immer explizit Performance - Optimierung auf verschiedene Plattformen möglich Algorithmen des wissenschaftlichen Rechnens 27 Nachteile Das Programm ist nicht wiederzuerkennen Erfordert hohen Aufwand und Fachwissen (PhD- Programming) Algorithmen des wissenschaftlichen Rechnens 28 14
15 Was ist MPI? Message Passing Interface Syntaktische und semantische Spezifikation von Bibliotheksfunktionen zum Nachrichtenaustausch (ursprünglich für Fortran, C und C++) - Für verschiedene Plattformen gibt es verschiedene Implementierungen dieser Funktionen MPI Explizites Programmieren von Kommunikation Algorithmen des wissenschaftlichen Rechnens 29 Bereiche von MPI MPI basiert auf wenigen Konzepten, die kombiniert werden können. Direkte Kommunikation («Punkt-zu-Punkt») Kollektive Kommunikation («Alle-mit-Allen») Synchronisation Gruppierung von Prozessen Algorithmen des wissenschaftlichen Rechnens 30 15
16 Einstieg: hallo-welt (1) int main(int argc, char* argv[]) { int my_rank; /* Rang *dieses* Prozesses */ int num_procs; /* Prozesse insgesamt */ MPI_Init(&argc, &argv);/* MPI initialisieren */ MPI_Comm_rank(MPI_COMM_WORLD, &my_rank); MPI_Comm_size(MPI_COMM_WORLD, &num_procs); printf("ich bin der %d. von %d Prozessen.\n", my_rank, num_procs); } MPI_Finalize(); /* MPI beenden */ Algorithmen des wissenschaftlichen Rechnens 31 hallo-welt (2) Starten des Programms in n Prozessen: (~): mpicc -o hallo-welt hallo-welt.c (~): mpirun -np 2 hallo-welt Ich bin der 0. von 2 Prozessen. Ich bin der 1. von 2 Prozessen. (~): mpirun -np 4 hallo-welt Ich bin der 2. von 4 Prozessen. Ich bin der 1. von 4 Prozessen. Ich bin der 3. von 4 Prozessen. Ich bin der 0. von 4 Prozessen. Reihenfolge der Ausgabe steht nicht fest! Algorithmen des wissenschaftlichen Rechnens 32 16
17 Programmier-Modell SPMD «Single Program Multiple Data» Es gibt nur ein Programm, das aber in n Prozessen gleichzeitig gestartet wird - Normalerweise auf n Prozessoren (nicht notwendig) Jeder Prozess arbeitet auf seinen Daten (my_rank) Der Programmablauf kann unterschiedlich sein (meist abhängig von der Prozessnummer) Andere Modelle: MPMD: Multiple Programs Multiple Data - Oft: Master Slaves, Frontend Backends Algorithmen des wissenschaftlichen Rechnens 33 Grundlegende Funktionen: Senden MPI_Send(buffer, length, type, destination, tag, communicator) - buffer: Adresse des Puffers - type: MPI-Datentyp (z.b. MPI_INT) - destination: Nummer (Rang, Id) des Ziels - tag: Zusätzliche Identifikation der Nachricht - communicator: Menge der beteiligten Prozesse - Alle Prozesse: MPI_COMM_WORLD Blockiert, bis Übertragung tatsächlich beginnt Algorithmen des wissenschaftlichen Rechnens 34 17
18 Grundlegende Funktionen: Empfangen MPI_Recv(buffer, length, type, source, tag, comm, status) - source: Von wem wird die Nachricht erwartet? - egal: MPI_SOURCE_ANY - status: Wie ist die Nachricht angekommen? - Enthält immer: MPI_SOURCE, MPI_TAG und MPI_ERROR Blockiert, bis vollständig empfangen Algorithmen des wissenschaftlichen Rechnens 35 int char MPI_Status my_rank, num_procs; message[20]; status; MPI_Init(&argc, &argv); MPI_Comm_rank(MPI_COMM_WORLD, &my_rank); MPI_Comm_size(MPI_COMM_WORLD, &num_procs); if (my_rank == 0) { strcpy(message, "Grüezi!"); MPI_Send(&message, strlen(message)+1, MPI_CHAR, 1, 77, MPI_COMM_WORLD); } if (my_rank == 1) { MPI_Recv(&message, 20, MPI_CHAR, 0, 77, MPI_COMM_WORLD, &status); printf("received: %s from %d\n", message, status.mpi_source); } MPI_Finalize(); 18
19 Datentypen in MPI Erhöhen die Portabilität - Verschiedene Repräsentationen auf verschiedenen Plattformen (Grösse, Big/Little-Endian) Erlauben Rechenoperationen (reduce) Zusammengesetzte Datentypen - Array-Spalten und -Zeilen, Vektoren - Zusammengesetzte Strukturen - z.b.: komplexe Zahlen: MPI_Datatype *complex; MPI_Type_contiguous(2, MPI_DOUBLE, complex); MPI_Type_commit(complex); Algorithmen des wissenschaftlichen Rechnens 37 Synchronisation Explizit: Barriere. Alle beteiligten Prozesse warten, bis jeder an dieser Barriere angekommen ist - MPI_Barrier(MPI_Comm comm) Implizit: Blockierendes Empfangen. Der Prozess läuft erst dann weiter, wenn alle Daten empfangen wurden - MPI kennt auch nicht-blockierendes Empfangen Algorithmen des wissenschaftlichen Rechnens 38 19
20 Gruppierung von Prozessen Aufteilung der Prozesse in Gruppen - Verschiedene Programmteile können ungestört voneinander arbeiten - Wichtig für Bibliotheken, die ungestört kommunizieren müssen - Jeder Programmteil erhält (definiert sich) eigenen Communicator Anordnung der Prozesse in Topologien - Abbildung der Prozesse auf die zugrundeliegende Topologie des Netzwerks - Sind die Nachbarn physikalisch miteinander verbunden? - Wie heissen die Nachbar-Prozesse? (Numerierung) - Topologie die für Algorithmus optimal ist (MPI sucht dann Abbildung auf Netzwerk) Algorithmen des wissenschaftlichen Rechnens 39 Beispiele für Prozess-Topologien Feld (Array) (0,0) (0) (0,1) (1) (0,2) (2) (0,3) (3) Gitter (Grid) (0,0) (0,1) (0,2) (0,3) (1,0) (1,1) (1,2) (1,3) (2,0) (2,1) (2,2) (2,3) Würfel (Cube) (0,1,0) (0,1,1) (1,1,1) (0,0,1) (1,0,1) (0,0,0) (1,1,0) (1,0,0) (3,0) (3,1) (3,2) (3,3) Algorithmen des wissenschaftlichen Rechnens 40 20
21 Kollektive Kommunikation Alle Prozesse beteiligen sich an der Kommunikation Verteilung von Daten: - broadcast: Verteile ein Datum vollständig an alle Prozesse - scatter: Verteile ein Datum in Teilen an alle Prozesse - gather: Sammle die Teile in einem Prozess Berechnung: - reduce: Verknüpfe Daten mit kommutativer Operation, z.b.: +, *, max, min Algorithmen des wissenschaftlichen Rechnens 41 Beispiel: Eine Zahl an Alle int my_rank, data; MPI_Init(&argc, &argv); MPI_Comm_rank(MPI_COMM_WORLD, &my_rank); if (my_rank == 0) data = 17; MPI_Broadcast(&data, 1, MPI_INT, 0, /* Sender (Root) */ MPI_COMM_WORLD); if (my_rank!= 0) printf("received: %d \n", data); Algorithmen des wissenschaftlichen Rechnens 42 21
22 Warum kollektive Kommunikation? Höhere Ausdrucksebene Vereinfacht oft den Code Effizienter (z.b. durch Baumalgorithmen): N Transfers log 2 (N) Tr N Algorithmen des wissenschaftlichen Rechnens 43 Kollektive Kommunikation (scatter) kollektiv: MPI_Scatter (send_buf, 4, MPI_INT, recv_buf, 4, MPI_INT, 0, comm); Prozess 0 send_buf (Root-Prozess 0) recv_buf (in allen Prozessen) Algorithmen des wissenschaftlichen Rechnens 44 22
23 Beispiel: α * Vektor 1. Verteilung des Vektors und des Skalars int dim_local = dim / P; double vec[dim]; double vec_local[dim_local]; double alpha; if (my_rank == 0) { /* Initialisiere vec und alpha*/ } MPI_Broadcast (alpha, 1, MPI_Double, 0, MPI_COMM_WORLD); MPI_Scatter(vec, dim_local, MPI_Double, vec_local, dim_local, MPI_Double, 0, MPI_COMM_WORLD); Algorithmen des wissenschaftlichen Rechnens 45 Beispiel: α * Vektor (2) 2. Berechnung der lokalen Produkte for (a = 0; a < dim_local; a++) vec_local[a] *= alpha; 3. Sammlung des Vektors im Root-Prozess: MPI_Gather(vec, dim_local, MPI_Double, vec_local, dim_local, MPI_Double, 0, MPI_COMM_WORLD); Algorithmen des wissenschaftlichen Rechnens 46 23
24 Nicht-Blockierende Kommunikation Wichtig um nebenläufig zu Senden Überlappung von Berechnung und Kommunikation Prinzip: Aufteilen in Initiierung und Statusabfrage MPI_Send kann aufgeteilt werden in - MPI_ISend: Startet die Übertragung («Immediate») - MPI_Wait: Wartet auf die vollständige Übertragung (blockiert) MPI_ISend(buffer, length, type, destination, tag, comm, request) - request: Transaktions-Nummer - Warten auf Beendigung mit MPI_Wait, MPI_Waitall, MPI_Waitsome oder MPI_Waitany Algorithmen des wissenschaftlichen Rechnens 47 Communication Modes Sind «orthogonal» zum nicht-blockierenden Senden (z.b.: MPI_Rsend und MPI_Irsend) Standard - «nicht-lokal» Wartet auf ein Receive des Empfängers Buffered - Daten werden vor dem Senden kopiert, «lokal» Synchronous - Wartet, bis Empfänger anfängt zu Empfangen Ready - MPI_Rrecv vor MPI_Rsend ( kein Handshake) Algorithmen des wissenschaftlichen Rechnens 48 24
25 Communication Modes (2) Der Standard-Modus bietet in den meisten Implementierungen den besten Kompromiss Gepuffertes Senden kann helfen, Deadlocks zu vermeiden - Verschlechtert aber oft Performance (Durchsatz) Besser: Nicht-Blockierendes Senden Algorithmen des wissenschaftlichen Rechnens 49 Freie Implementierungen MPICH - Argonne National Lab, Mississippi State Univ Sowohl für Cluster als auch für MPPs LAM (Local Area Multicomputer) - Ohio Supercomputer Center Nicht für MPPs verfügbar - Teile von MPI Algorithmen des wissenschaftlichen Rechnens 50 25
26 Literatur Offizielle Seite zu OpenMP: Offizielle Seite zu MPI: - Dokumentation zu MPI-1.1 W. Gropp, E. Lusk und A. Skjellum. Using MPI. Portable Parallel Programming with the Message Passing Interface. MIT Press, The History of Parallel Computing: Survey of High Performance Computing Systems: Top 500 Supercomputers: Algorithmen des wissenschaftlichen Rechnens 51 26
OpenMP am Beispiel der Matrizenmultiplikation
OpenMP am Beispiel der Matrizenmultiplikation David J. Meder, Dr. Victor Pankratius IPD Tichy Lehrstuhl für Programmiersysteme KIT die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe
Parallele Programmierung mit OpenMP
Parallele Programmierung mit OpenMP - Eine kurze Einführung - 11.06.2003 RRZN Kolloquium SS 2003 1 Gliederung 1. Grundlagen 2. Programmiermodell 3. Sprachkonstrukte 4. Vergleich MPI und OpenMP 11.06.2003
Parallele Programmierung mit MPI
Parallele Programmierung mit MPI Marc-Oliver Straub entstanden aus: Parallele Programmierung mit MPI - ein Praktikum Warum Parallelprogrammierung große numerische Probleme (Simulation) optische Bildverarbeitung
Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss
Systeme 1 Kapitel 6 Nebenläufigkeit und wechselseitiger Ausschluss Threads Die Adressräume verschiedener Prozesse sind getrennt und geschützt gegen den Zugriff anderer Prozesse. Threads sind leichtgewichtige
Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen
Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders
4.4. MPI Message Passing Interface
4.4. MPI Message Passing Interface Ferienakademie 2009 Franz Diebold Agenda 1. Einführung, Motivation 2. Kommunikationsmodell 3. Punkt-Zu-Punkt-Kommunikation 4. Globale Kommunikation 5. Vergleich MPI und
Anleitung zur Nutzung des SharePort Utility
Anleitung zur Nutzung des SharePort Utility Um die am USB Port des Routers angeschlossenen Geräte wie Drucker, Speicherstick oder Festplatte am Rechner zu nutzen, muss das SharePort Utility auf jedem Rechner
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
Man liest sich: POP3/IMAP
Man liest sich: POP3/IMAP Gliederung 1. Einführung 1.1 Allgemeiner Nachrichtenfluss beim Versenden von E-Mails 1.2 Client und Server 1.2.1 Client 1.2.2 Server 2. POP3 2.1 Definition 2.2 Geschichte und
Bedienungsanleitung. Stand: 26.05.2011. Copyright 2011 by GEVITAS GmbH www.gevitas.de
GEVITAS-Sync Bedienungsanleitung Stand: 26.05.2011 Copyright 2011 by GEVITAS GmbH www.gevitas.de Inhalt 1. Einleitung... 3 1.1. Installation... 3 1.2. Zugriffsrechte... 3 1.3. Starten... 4 1.4. Die Menü-Leiste...
Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten
Das große x -4 Alles über das Wer kann beantragen? Generell kann jeder beantragen! Eltern (Mütter UND Väter), die schon während ihrer Elternzeit wieder in Teilzeit arbeiten möchten. Eltern, die während
Anlegen eines DLRG Accounts
Anlegen eines DLRG Accounts Seite 1 von 6 Auf der Startseite des Internet Service Centers (https:\\dlrg.de) führt der Link DLRG-Account anlegen zu einer Eingabemaske, mit der sich jedes DLRG-Mitglied genau
Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.
Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.
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.
Einführung in PHP. (mit Aufgaben)
Einführung in PHP (mit Aufgaben) Dynamische Inhalte mit PHP? 2 Aus der Wikipedia (verkürzt): PHP wird auf etwa 244 Millionen Websites eingesetzt (Stand: Januar 2013) und wird auf etwa 80 % aller Websites
Wir unterscheiden folgende drei Schritte im Design paralleler Algorithmen:
1 Parallele Algorithmen Grundlagen Parallele Algorithmen Grundlagen Wir unterscheiden folgende drei Schritte im Design paralleler Algorithmen: Dekomposition eines Problems in unabhängige Teilaufgaben.
Konfiguration des ewon GSM Modems Kurzbeschreibung zum Aufbau einer GSM Verbindung
ewon - Technical Note Nr. 004 Version 1.2 Konfiguration des ewon GSM Modems Kurzbeschreibung zum Aufbau einer GSM Verbindung 08.08.2006/SI Übersicht: 1. Thema 2. Benötigte Komponenten 3. Modemkonfiguration
Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang
sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche
Erstellen einer E-Mail in OWA (Outlook Web App)
Erstellen einer E-Mail in OWA (Outlook Web App) Partner: 2/12 Versionshistorie: Datum Version Name Status 13.09.2011 1.1 J. Bodeit Punkte 7 hinzugefügt, alle Mailempfänger unkenntlich gemacht 09.09.2011
Nach der Anmeldung im Backend Bereich landen Sie im Kontrollzentrum, welches so aussieht:
Beiträge erstellen in Joomla Nach der Anmeldung im Backend Bereich landen Sie im Kontrollzentrum, welches so aussieht: Abbildung 1 - Kontrollzentrum Von hier aus kann man zu verschiedene Einstellungen
Idimager ein Bildverwaltungsprogramm-DAM Software
Idimager ein Bildverwaltungsprogramm-DAM Software Nachdem hie im Forum zu Bildverwaltung anscheinend noch nichts steht, will ich mal eine kurze Beschreibung meines Bildverwaltungsprogramms zeigen. Idimager
Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster
Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.
Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version 2.0.1 Deutsch 01.07.2014
Konfiguration VLAN's Version 2.0.1 Deutsch 01.07.2014 In diesem HOWTO wird die Konfiguration der VLAN's für das Surf-LAN der IAC-BOX beschrieben. Konfiguration VLAN's TITEL Inhaltsverzeichnis Inhaltsverzeichnis...
Professionelle Seminare im Bereich MS-Office
Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion
Threads und OpenMP. Frank Mietke <[email protected]> Cluster- & Gridcomputing Frank Mietke 7/4/04
Threads und OpenMP Frank Mietke 1 Ziel der Vorlesungen Einführung in Threads Programmierung mit Threads Einführung in OpenMP Programmierung mit OpenMP 2 Was ist
8. Bintec Router Redundancy Protocol (BRRP) 8.1 Einleitung
8. Bintec Router Redundancy Protocol (BRRP) 8.1 Einleitung Im Folgenden wird die Konfiguration von BRRP gezeigt. Beide Router sind jeweils über Ihr Ethernet 1 Interface am LAN angeschlossen. Das Ethernet
SJ OFFICE - Update 3.0
SJ OFFICE - Update 3.0 Das Update auf die vorherige Version 2.0 kostet netto Euro 75,00 für die erste Lizenz. Das Update für weitere Lizenzen kostet jeweils netto Euro 18,75 (25%). inkl. Programmsupport
Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen
Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe
Architektur Verteilter Systeme Teil 2: Prozesse und Threads
Architektur Verteilter Systeme Teil 2: Prozesse und Threads 21.10.15 1 Übersicht Prozess Thread Scheduler Time Sharing 2 Begriff Prozess und Thread I Prozess = Sequentiell ablaufendes Programm Thread =
Übersicht. Nebenläufige Programmierung. Praxis und Semantik. Einleitung. Sequentielle und nebenläufige Programmierung. Warum ist. interessant?
Übersicht Aktuelle Themen zu Informatik der Systeme: Nebenläufige Programmierung: Praxis und Semantik Einleitung 1 2 der nebenläufigen Programmierung WS 2011/12 Stand der Folien: 18. Oktober 2011 1 TIDS
Internet Explorer Version 6
Internet Explorer Version 6 Java Runtime Ist Java Runtime nicht installiert, öffnet sich ein PopUp-Fenster, welches auf das benötigte Plugin aufmerksam macht. Nach Klicken auf die OK-Taste im PopUp-Fenster
Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER
AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...
Speicher in der Cloud
Speicher in der Cloud Kostenbremse, Sicherheitsrisiko oder Basis für die unternehmensweite Kollaboration? von Cornelius Höchel-Winter 2013 ComConsult Research GmbH, Aachen 3 SYNCHRONISATION TEUFELSZEUG
ARCO Software - Anleitung zur Umstellung der MWSt
ARCO Software - Anleitung zur Umstellung der MWSt Wieder einmal beschert uns die Bundesverwaltung auf Ende Jahr mit zusätzlicher Arbeit, statt mit den immer wieder versprochenen Erleichterungen für KMU.
Grundbegriffe der Informatik
Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen
Updatehinweise für die Version forma 5.5.5
Updatehinweise für die Version forma 5.5.5 Seit der Version forma 5.5.0 aus 2012 gibt es nur noch eine Office-Version und keine StandAlone-Version mehr. Wenn Sie noch mit der alten Version forma 5.0.x
FORUM HANDREICHUNG (STAND: AUGUST 2013)
FORUM HANDREICHUNG (STAND: AUGUST 2013) Seite 2, Forum Inhalt Ein Forum anlegen... 3 Forumstypen... 4 Beiträge im Forum schreiben... 5 Beiträge im Forum beantworten... 6 Besondere Rechte der Leitung...
Master-Thread führt Programm aus, bis durch die Direktive
OpenMP seit 1998 Standard (www.openmp.org) für die Shared-Memory Programmierung; (Prä-)Compiler für viele Systeme kommerziell oder frei (z.b. Omni von phase.hpcc.jp/omni) verfügbar Idee: automatische Generierung
Installation der SAS Foundation Software auf Windows
Installation der SAS Foundation Software auf Windows Der installierende Benutzer unter Windows muss Mitglied der lokalen Gruppe Administratoren / Administrators sein und damit das Recht besitzen, Software
1 Vom Problem zum Programm
Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren
EasyWk DAS Schwimmwettkampfprogramm
EasyWk DAS Schwimmwettkampfprogramm Arbeiten mit OMEGA ARES 21 EasyWk - DAS Schwimmwettkampfprogramm 1 Einleitung Diese Präsentation dient zur Darstellung der Zusammenarbeit zwischen EasyWk und der Zeitmessanlage
Tapps mit XP-Mode unter Windows 7 64 bit (V2.0)
Tapps mit XP-Mode unter Windows 7 64 bit (V2.0) 1 Einleitung... 2 2 Download und Installation... 3 2.1 Installation von WindowsXPMode_de-de.exe... 4 2.2 Installation von Windows6.1-KB958559-x64.msu...
Installation / Aktualisierung von Druckertreibern unter Windows 7
Rechenzentrum Installation / Aktualisierung von Druckertreibern unter Windows 7 Es gibt drei verschiedene Wege, um HP-Druckertreiber unter Windows7 zu installieren: (Seite) 1. Automatische Installation...
40-Tage-Wunder- Kurs. Umarme, was Du nicht ändern kannst.
40-Tage-Wunder- Kurs Umarme, was Du nicht ändern kannst. Das sagt Wikipedia: Als Wunder (griechisch thauma) gilt umgangssprachlich ein Ereignis, dessen Zustandekommen man sich nicht erklären kann, so dass
Modelle der Parallelverarbeitung
Modelle der Parallelverarbeitung Modelle der Parallelverarbeitung 12. Message Passing Interface Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Sommersemester 2017 1 / 36 Überblick
ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht BREMERHAVEN. Der Zauberwürfel-Roboter. Paul Giese. Schule: Wilhelm-Raabe-Schule
ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht BREMERHAVEN Der Zauberwürfel-Roboter Paul Giese Schule: Wilhelm-Raabe-Schule Jugend forscht 2013 Kurzfassung Regionalwettbewerb Bremerhaven
M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung
M. Graefenhan 2000-12-07 Aufgabe Lösungsweg Übungen zu C Blatt 3 Musterlösung Schreiben Sie ein Programm, das die Häufigkeit von Zeichen in einem eingelesenen String feststellt. Benutzen Sie dazu ein zweidimensionales
Übung 9 - Lösungsvorschlag
Universität Innsbruck - Institut für Informatik Datenbanken und Informationssysteme Prof. Günther Specht, Eva Zangerle Besprechung: 15.12.2008 Einführung in die Informatik Übung 9 - Lösungsvorschlag Aufgabe
Kommunikations-Management
Tutorial: Wie kann ich E-Mails schreiben? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory E-Mails schreiben können. In myfactory können Sie jederzeit schnell und einfach E-Mails verfassen egal
Grundlagen von Python
Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren
Leichte-Sprache-Bilder
Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen
Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten
Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten Der Konfigurations-Assistent wurde entwickelt, um die unterschiedlichen ANTLOG-Anwendungen auf den verschiedensten Umgebungen automatisiert
Konzepte der parallelen Programmierung
Fakultät Informatik, Institut für Technische Informatik, Professur Rechnerarchitektur Konzepte der parallelen Programmierung Parallele Programmiermodelle Nöthnitzer Straße 46 Raum 1029 Tel. +49 351-463
Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer
Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer Allgemein: Das RSA-Verschlüsselungsverfahren ist ein häufig benutztes Verschlüsselungsverfahren, weil es sehr sicher ist. Es gehört zu der Klasse der
Ein Hinweis vorab: Mailkonfiguration am Beispiel von Thunderbird
Mailkonfiguration am Beispiel von Thunderbird Ein Hinweis vorab: Sie können beliebig viele verschiedene Mailkonten für Ihre Domain anlegen oder löschen. Das einzige Konto, das nicht gelöscht werden kann,
SEP 114. Design by Contract
Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit
Softwarelösungen: Versuch 4
Softwarelösungen: Versuch 4 Nichtstun in Schleife wird ersetzt durch zeitweilige Zurücknahme der Anforderung, um es anderen Prozessen zu erlauben, die Ressource zu belegen: /* Prozess 0 */ wiederhole flag[0]
Anleitung über den Umgang mit Schildern
Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder
Standard XPersonenstand - Version 1.4.3 - Verbindliche Handlungsanweisungen
Standard XPersonenstand - Version 1.4.3 - Verbindliche Handlungsanweisungen Stand: 19. September 2013 1 Mit diesem Dokument werden verbindliche Handlungsanweisungen für die Implementierung des Standards
Beispiel: Schleifenparallelisierung
Beispiel: Schleifenparallelisierung for (i = 0; i high) { printf ( Exiting during iteration %d\n,i); break; for (j=low;j
Modellierung und Programmierung 1
Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 19. November 2015 Gültigkeitsbereich (Scope) von Variablen { int m; {
Online-Prüfungs-ABC. ABC Vertriebsberatung GmbH Bahnhofstraße 94 69151 Neckargemünd
Online-Prüfungs-ABC ABC Vertriebsberatung GmbH Bahnhofstraße 94 69151 Neckargemünd Telefon Support: 0 62 23 / 86 55 55 Telefon Vertrieb: 0 62 23 / 86 55 00 Fax: 0 62 23 / 80 55 45 (c) 2003 ABC Vertriebsberatung
Lieber SPAMRobin -Kunde!
Lieber SPAMRobin -Kunde! Wir freuen uns, dass Sie sich für SPAMRobin entschieden haben. Mit diesem Leitfaden möchten wir Ihnen die Kontoeinrichtung erleichtern und die Funktionen näher bringen. Bitte führen
DOKUMENTATION VOGELZUCHT 2015 PLUS
DOKUMENTATION VOGELZUCHT 2015 PLUS Vogelzucht2015 App für Geräte mit Android Betriebssystemen Läuft nur in Zusammenhang mit einer Vollversion vogelzucht2015 auf einem PC. Zusammenfassung: a. Mit der APP
Urlaubsregel in David
Urlaubsregel in David Inhaltsverzeichnis KlickDown Beitrag von Tobit...3 Präambel...3 Benachrichtigung externer Absender...3 Erstellen oder Anpassen des Anworttextes...3 Erstellen oder Anpassen der Auto-Reply-Regel...5
Dokumentation zur Versendung der Statistik Daten
Dokumentation zur Versendung der Statistik Daten Achtung: gem. 57a KFG 1967 (i.d.f. der 28. Novelle) ist es seit dem 01. August 2007 verpflichtend, die Statistikdaten zur statistischen Auswertung Quartalsmäßig
Kommunikations-Parameter
KNX App knxpresso für Android Tablets/Phones Kommunikations-Parameter Ausgabe Dokumentation: Mai. 2015 Doku Version V1.0.0 - Seite 1/8 Inhaltsverzeichnis 1.1 Nützliche Links... 3 1.2 Beschreibung der Kommunikations-Datei...
Wirtschaftsinformatik I
Wirtschaftsinformatik I - Tutorium 6/ 7 (April 2010) Zusatzinformationen - Lösungsvorschläge Wirtschaftsinformatik I Tutorium Jochen Daum (4.Semester BWL) Universität Mannheim Rechtshinweis: Diese Präsentation
Übungen zu C++ Kapitel 1
Übungen zu C++ Kapitel 1 Aufgabe 1 Ergänze den Text. a) Die sechs logischen Einheiten eines Computers sind Eingabe-Einheit, Ausgabe-Einheit, RAM, ALU, CPU, Plattenspeicher. b) Die Programme, welche Hochsprachenprogramme
Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze
Ihre Interessentendatensätze bei inobroker Wenn Sie oder Ihre Kunden die Prozesse von inobroker nutzen, werden Interessentendatensätze erzeugt. Diese können Sie direkt über inobroker bearbeiten oder mit
Virtual Private Network
Virtual Private Network Allgemeines zu VPN-Verbindungen WLAN und VPN-TUNNEL Der VPN-Tunnel ist ein Programm, das eine sichere Verbindung zur Universität herstellt. Dabei übernimmt der eigene Rechner eine
Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen
Open Source professionell einsetzen 1 Mein Background Ich bin überzeugt von Open Source. Ich verwende fast nur Open Source privat und beruflich. Ich arbeite seit mehr als 10 Jahren mit Linux und Open Source.
Produktionsplanung und steuerung (SS 2011)
Produktionsplanung und steuerung (SS 2011) Teil 1 Sie arbeiten seit 6 Monaten als Wirtschaftsingenieur in einem mittelständischen Unternehmen in Mittelhessen. Das Unternehmen Möbel-Meier liefert die Büroaustattung
Einführung in die Programmierung
: Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte
Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag
Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 9 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:
Objektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
CL-Mini-ABF. Kurzbeschreibung. Installation und Vorbereitung. Stand 30.01.2012. Ihre HTK-Filiale Michelstadt
64720 email : [email protected] Stand 30.01.2012 CL-Mini-ABF Inhaltsverzeichnis Kurzbeschreibung... 1 Installation und Vorbereitung...1 ODBC-Zugriff... 2 ODBC-Einrichtung unter Windows XP...2 ODBC-Einrichtung
Die allerwichtigsten Raid Systeme
Die allerwichtigsten Raid Systeme Michael Dienert 4. Mai 2009 Vorbemerkung Dieser Artikel gibt eine knappe Übersicht über die wichtigsten RAID Systeme. Inhaltsverzeichnis 1 Die Abkürzung RAID 2 1.1 Fehlerraten
Verwendung des IDS Backup Systems unter Windows 2000
Verwendung des IDS Backup Systems unter Windows 2000 1. Download der Software Netbackup2000 Unter der Adresse http://www.ids-mannheim.de/zdv/lokal/dienste/backup finden Sie die Software Netbackup2000.
crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe
crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe crm-now/ps Webforms: Webdesigner Handbuch Copyright 2006 crm-now Versionsgeschichte Version 01 2006-08-21 Release Version crm-now c/o im-netz Neue
icloud nicht neu, aber doch irgendwie anders
Kapitel 6 In diesem Kapitel zeigen wir Ihnen, welche Dienste die icloud beim Abgleich von Dateien und Informationen anbietet. Sie lernen icloud Drive kennen, den Fotostream, den icloud-schlüsselbund und
Motivation. Motivation
Vorlesung Modellierung nebenläufiger Systeme Sommersemester 2012 Universität Duisburg-Essen Was sind nebenläufige Systeme? Ganz allgemein: Systeme, bei denen mehrere Komponenten/Prozesse nebenläufig arbeiten
Mikrocontroller Grundlagen. Markus Koch April 2011
Mikrocontroller Grundlagen Markus Koch April 2011 Übersicht Was ist ein Mikrocontroller Aufbau (CPU/RAM/ROM/Takt/Peripherie) Unterschied zum Mikroprozessor Unterschiede der Controllerarten Unterschiede
Internet-Wissen. Browser:
Internet-Wissen Browser: Ein Browser ist ein Computerprogramm, mit dem du dir Seiten im Internet anschauen kannst. Browser ist ein englisches Wort. To browse kann man mit schmökern und durchstöbern übersetzen.
Kapitalerhöhung - Verbuchung
Kapitalerhöhung - Verbuchung Beschreibung Eine Kapitalerhöhung ist eine Erhöhung des Aktienkapitals einer Aktiengesellschaft durch Emission von en Aktien. Es gibt unterschiedliche Formen von Kapitalerhöhung.
Objektorientierte Programmierung. Kapitel 12: Interfaces
12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/
Parallel Processing in a Nutshell OpenMP & MPI kurz vorgestellt
Parallel Processing in a Nutshell & kurz vorgestellt 16. Juni 2009 1 / 29 1 Das Problem 2 2 / 29 1 Das Problem 2 3 2 / 29 1 Das Problem 2 3 4 2 / 29 1 Das Problem 2 3 4 2 / 29 Multi-Core Prozessoren halten
Über Arrays und verkettete Listen Listen in Delphi
Über Arrays und verkettete Listen Listen in Delphi Michael Puff [email protected] 2010-03-26 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einführung 3 2 Arrays 4 3 Einfach verkettete Listen 7 4 Doppelt verkettete
Benutzerverwaltung Business- & Company-Paket
Benutzerverwaltung Business- & Company-Paket Gemeinsames Arbeiten mit der easyfeedback Umfragesoftware. Inhaltsübersicht Freischaltung des Business- oder Company-Paketes... 3 Benutzerverwaltung Business-Paket...
Einführung in Eclipse und Java
Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Einführung in Eclipse und Java Dipl.Inf. Manuel Götz Lehrstuhl für Angewandte Informatik
2 Darstellung von Zahlen und Zeichen
2.1 Analoge und digitale Darstellung von Werten 79 2 Darstellung von Zahlen und Zeichen Computer- bzw. Prozessorsysteme führen Transformationen durch, die Eingaben X auf Ausgaben Y abbilden, d.h. Y = f
Konfigurationsanleitung Access Control Lists (ACL) Funkwerk. Copyright Stefan Dahler - www.neo-one.de 13. Oktober 2008 Version 1.0.
Konfigurationsanleitung Access Control Lists (ACL) Funkwerk Copyright Stefan Dahler - www.neo-one.de 13. Oktober 2008 Version 1.0 Seite - 1 - 1. Konfiguration der Access Listen 1.1 Einleitung Im Folgenden
Einführung in. Logische Schaltungen
Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von
Powermanager Server- Client- Installation
Client A Server Client B Die Server- Client- Funktion ermöglicht es ein zentrales Powermanager Projekt von verschiedenen Client Rechnern aus zu bedienen. 1.0 Benötigte Voraussetzungen 1.1 Sowohl am Server
