Parallele Programmierung mit GPUs

Größe: px
Ab Seite anzeigen:

Download "Parallele Programmierung mit GPUs"

Transkript

1 Parallele Programmierung mit GPUs Jutta Fitzek Vortrag im Rahmen des Moduls Parallele Programmierung, WS12/13, h_da

2 Agenda GPUs: Historie GPU Programmierung Konzepte Codebeispiel Generelle Tipps & Tricks Exkurs Zusammenfassung Weiterführende Informationen Jutta Fitzek Parallele Programmierung mit GPUs Slide 2 / 43

3 Agenda GPUs: Historie GPU Programmierung Konzepte Codebeispiel Generelle Tipps & Tricks Exkurs Zusammenfassung Weiterführende Informationen Jutta Fitzek Parallele Programmierung mit GPUs Slide 3 / 43

4 GPU Programmierung Historie 1/2 Anfang 1980er: Video Display Controller: reine Bildschirmausgabe Mitte 1980er: Amiga/Atari: erste Berechnungen Mitte 1990er: 3D Zusatzkarten mit eingebauten Algorithmen 1999: NVIDIA prägt den Begriff der GPU (GeForce-256) 2002: Begriff GPGPU General Purpose Graphics Processing Unit, Schnittstellen zur allgmeinen Verwendung der GPUs Jutta Fitzek Parallele Programmierung mit GPUs Slide 4 / 43

5 GPU Programmierung Historie 2/2 2004: BrookGPU, Stanford University: BSD-Lizenz 2006: NVIDIA CUDA: für NVIDIA Karten 2006: ATI Close To Metal: später Stream SDK, heute keine Bedeutung mehr 2008: OpenCL, Khronos Group: Open Computing Language, offener Standard heute: GPUs werden in zunehmendem Maße als Basis für die Lösung von rechenintensiven Problemen eingesetzt Supercomputer Top 500: 62 Systeme verwenden grafische Co-Prozessoren, Tendenz steigend Jutta Fitzek Parallele Programmierung mit GPUs Slide 5 / 43

6 GPUs Vorteile GPUs sind fokussiert auf die Berechnung von Objekten, Pixelfarben, etc., eine Aufgabe wird intensiv abgearbeitet Massiv-parallelen Ausführung: Datenparallelismus, SIMD, tausende Ausführungseinheiten führen dasselbe Programm auf anderen Daten aus Vorteil der GPUs außerdem: weite Verbreitung, geringer Preis, stetig steigende Leistung Jutta Fitzek Parallele Programmierung mit GPUs Slide 6 / 43

7 Entwicklung der FLOP/s => GPUs werden immer interessanter für rechenintensive Anwendungen! NVIDIA, CUDA Programming Guide Jutta Fitzek Parallele Programmierung mit GPUs Slide 7 / 43

8 GPU Programmierung heute Hersteller: Intel, NVIDIA, AMD Marktanteile GPU-Hersteller ,2% 59,8% Programmierung von GPUs: plattformunabhängig: OpenCL (Open Computing Language) Vorteil in heterogenen Umgebungen, jedoch langsamer plattformabhängig, hier: CUDA für NVIDIA GPUs Einsetzbar in homogenen Umgebungen, schneller sehr viele vorhandene Funktionen und Libraries 18,5% 0,5% Intel AMD nvidia andere Jutta Fitzek Parallele Programmierung mit GPUs Slide 8 / 43

9 Agenda GPUs: Historie GPU Programmierung Konzepte Codebeispiel Generelle Tipps & Tricks Exkurs Zusammenfassung Weiterführende Informationen Jutta Fitzek Parallele Programmierung mit GPUs Slide 9 / 43

10 Was ist CUDA? CUDA (seit 2006): NVIDIA's Compute Unified Device Architecture general purpose parallel computing platform and programming model Unterstützung für: C, C++, Fortran, Java, Python, DirectCompute, Directives (OpenACC) => hier: CUDA C / C++ Jutta Fitzek Parallele Programmierung mit GPUs Slide 10 / 43

11 CUDA Programmiermodell Host = CPU Device = GPU GPU fungiert als Coprozessor für die CPU GPU hat ihren eigenen Speicher GPU führt viele parallele Threads aus (tausende!) Kernel = Funktion, die vom Host aufgerufen und auf dem Device ausgeführt wird Jutta Fitzek Parallele Programmierung mit GPUs Slide 11 / 43

12 Logische Strukturierung Threads: führen den Kernel parallel aus, kleinste parallele Einheit Block/Threadblock (3D): Gruppe von Threads, die gemeinsam ausgeführt wird, gemeinsamer Shared Memory, Threadsynchronisation möglich (Tesla C2075: max Threads per Block) Grid (2D): Gruppe von Threadblocks, die denselben Kernel ausführen NVIDIA, CUDA Programming Guide, Figure 6 Jutta Fitzek Parallele Programmierung mit GPUs Slide 12 / 43

13 Hardware-Aufbau einer GPU SP: Streaming Processor / Thread Processor führt jeweils einen parallelen Thread aus SM: Streaming Multiprocessor Scheduling und Ausführung der Threads NVIDIA, GTS 450, Aufbau der GPU Jutta Fitzek Parallele Programmierung mit GPUs Slide 13 / 43

14 Ausführung des Programms Multiprocessor (SM) bringt ein oder mehrere Threadblocks zur Ausführung, verwaltet den gemeinsam genutzten Shared Memory Threadblocks sind voneinander unabhängig! => Skalierbarkeit mit der Anzahl der vorhandenen SMs! dh. das Programm läuft auf NVIDIA, CUDA Programming Guide, Figure 5 allen Grafikkarten und skaliert mit den vorhandenen Ressourcen! Jutta Fitzek Parallele Programmierung mit GPUs Slide 14 / 43

15 SIMT Architektur Ein SM bekommt einen oder mehrere Blocks zur Ausführung, diese werden aufgeteilt in Gruppen mit aufsteigender ThreadID Je 32 Threads werden als Warp gemeinsam ausgeführt Innerhalb eines Warps wird dieselbe Anweisung für alle Threads ausgeführt, wenn die Threads auf Grund von Verzweigungen divergieren, führt dies zu einer Serialisierung Begriff SIMT : Singe Instruction Multiple Threads Mehrere Threads führen dieselbe Instruktion aus (Datenparallelität), können aber auch divergieren. => Bedeutung im Rahmen der Performance-Optimierung 32 Threads 32 Threads... Jutta Fitzek Parallele Programmierung mit GPUs Slide 15 / 43

16 Speichermodell der GPU Read-write per-thread registers Read-write per-thread local memory Read-write per-block shared memory Read-write per-grid global memory Read-only per-grid constant memory Read-only per-grid texture memory Register Memory Bandbreite Shared Memory Global Memory Speicherplatz Michael Bussmann, HZDR, 2007 CUDA programming guide, NVIDIA, 2007 Jutta Fitzek Parallele Programmierung mit GPUs Slide 16 / 43

17 CUDA C / C++: Spracherweiterungen Neue Spracherweiterungen und eingebaute Variablen zur Programmierung der GPU Einschränkungen: Keine Rekursion im Device Code möglich Keine Funktionspointer API/Libraries CUDA Runtime API (Host und Device) Speicherallokation auf dem Device (cudamalloc,...) Eingebaute Funktionen (sin, sqrt, mod,...) Atomic operations (für concurrency) Neue Datentypen (2D textures, dim2, dim3,...) Jutta Fitzek Parallele Programmierung mit GPUs Slide 17 / 43

18 CUDA C / C++: Spracherweiterungen 1/4 Function Type Qualifiers: spezifizieren, von wo aus eine Funktion aufgerufen werden kann global device ausgeführt auf dem Device, vom Host aus aufrufbar (ab 3.x auch vom Device aus aufrufbar) zentraler Einstiegspunkt, Aufruf der GPU Funktion ausgeführt auf dem Device, nur vom Device aufrufbar host ausgeführt auf dem Host, nur auf dem Host aufrufbar device und host können zusammen verwendet werden, es wird Code für beide Seiten erzeugt Jutta Fitzek Parallele Programmierung mit GPUs Slide 18 / 43

19 CUDA C / C++: Spracherweiterungen 2/4 Variable Type Qualifiers: spezifizieren, in welchem GPU Speicher eine Variable gehalten wird device constant shared im globalen Speicher der GPU, nicht gecacht, hohe Latenz zugreifbar von allen Threads aus existiert so lange die Anwendung läuft im konstanten Speicher auf dem Device, gecacht(!) zugreifbar von allen Threads aus, auch vom Host existiert so lange die Anwendung läuft im shared memory, alle Threads eines Blocks können zugreifen, existiert so lange der Block ausgeführt wird Jutta Fitzek Parallele Programmierung mit GPUs Slide 19 / 43

20 CUDA C / C++: Spracherweiterungen 3/4 Speicherallokation, Zugriffe cudamalloc(void ** pointer, size_tnbytes) cudafree(void* pointer) cudamemcpy(void *dst, void *src, size_tnbytes, enumdirection); enumdirection: cudamemcpyhosttodevice cudamemcpydevicetohost cudamemcpydevicetodevice Threadsynchronisation im Kernel-Code: alle Threads eines Blocks synchronisieren sich void syncthreads(); Jutta Fitzek Parallele Programmierung mit GPUs Slide 20 / 43

21 CUDA C / C++: Spracherweiterungen 4/4 Aufruf eines Kernels: modifizierter Funktionsaufruf, Start einer GPU Funktion vom Host aus: kernel<<<dim3 grid, dim3 block>>>( ) In spitzen Klammern wird die Ausführungskonfiguration angegeben ( <<< >>> ): Dimension des Grids: 2d, dh. x und y Dimension des Thread-Blocks: 3d, dh. x, y, z Jutta Fitzek Parallele Programmierung mit GPUs Slide 21 / 43

22 Agenda GPUs: Historie GPU Programmierung Konzepte Codebeispiel Generelle Tipps & Tricks Exkurs Zusammenfassung Weiterführende Informationen Jutta Fitzek Parallele Programmierung mit GPUs Slide 22 / 43

23 VectorAdd CPU Version Addition zweier Vektoren auf der CPU: for (int i=0; i<500000; i++){ C[i] = A[i] + B[i]; } Jutta Fitzek Parallele Programmierung mit GPUs Slide 23 / 43

24 VectorAdd GPU Version NVIDIA, CUDA Programming Guide Jutta Fitzek Parallele Programmierung mit GPUs Slide 24 / 43

25 Bestimmung der Thread ID dim3 griddim Dimensionen des Grids uint3 blockidx Position des Blocks im Grid dim3 blockdim Dimension des Blocks uint3 threadidx Position des Threads im Block Bei 2d Block und 2d Grid: threadsperblock = blockdim.x * blockdim.y blocknumingrid = blockidx.x + griddim.x * blockidx.y threadnuminblock = threadidx.x + blockdim.x * threadidx.y Jutta Fitzek Parallele Programmierung mit GPUs Slide 25 / 43

26 Komplexeres Beispiel NVIDIA, CUDA Programming Guide Jutta Fitzek Parallele Programmierung mit GPUs Slide 26 / 43

27 Compiler nvcc: eigener NVIDIA CUDA Compiler trennt den Host und den Device Code der Host Code wird an einen vorhandenen Compiler weitergegeben (Linux: gcc) der Device Code wird zunächst in in PTX Assembler (Parallel Thread Execution) transformiert, und dann in Maschinensprache für die GPU Aufruf: nvcc cudacode.cu Jutta Fitzek Parallele Programmierung mit GPUs Slide 27 / 43

28 Entwicklungsumgebung nsight Eclipse Edition: Abgewandelte Eclipse Version speziell für die CUDA Programmierung, Teil des Toolkits Gewohnte Eclipse Umgebung Code Editieren, Debuggen (auch Kernel Code) Integrierter Profiler! NVIDIA Webseite Jutta Fitzek Parallele Programmierung mit GPUs Slide 28 / 43

29 Agenda GPUs: Historie GPU Programmierung Konzepte Codebeispiel Generelle Tipps & Tricks Zusammenfassung Weiterführende Informationen Jutta Fitzek Parallele Programmierung mit GPUs Slide 29 / 43

30 Tipps und Tricks: Parallelisierung Allgemein: Berechnungs- oder Speicherintensive Probleme können generell vom GPU-Einsatz profitieren 1. Schritt immer: herausfinden, welcher Teil des Algorithmus am meisten Zeit einnimmt und mit dessen Parallelisierung beginnen!! Datenparallelität Einsatz von GPUs bei Datenparallelität Problem klar formulieren und strukturieren Verzweigungen / bedingte Abarbeitung vermeiden, da es sonst zur Serialisierung kommt! Jutta Fitzek Parallele Programmierung mit GPUs Slide 30 / 43

31 Tipps und Tricks: Kopieren vermeiden Der Flaschenhals ist die Bandbreite zur Host CPU, Kopieren von Daten vom Host zum Device und umgekehrt ist sehr zeitintensiv! Daten ggf. dort lassen, wo sie sind und weitere, evtl. nicht so performante Berechnungen dort ausführen, um Kopieren zu vermeiden evtl. Einsatz von asynchronem memcopy, um Berechnungs- und Kopierzeiten zu überlagern Jutta Fitzek Parallele Programmierung mit GPUs Slide 31 / 43

32 Tipps und Tricks: Datenstrukturen Datenstrukturen beim Übergang zur GPU ggf. modifizieren Ziel: stride-one access bei Arrays: anstelle von array-of-structures statt dessen 6x ein Array der Größe N nutzen, um Perfomance zu gewinnen v1_1 v1_2 v1_3 v1_4 v1_5 v1_6... vn_1 vn_2 vn_3 vn_4 vn_5 vn_6 v_1 v_2 v_3 v_4 v_5 v_6 Jutta Fitzek Parallele Programmierung mit GPUs Slide 32 / 43

33 Tipps und Tricks: Speicher 1/2 Immer möglichst den schnelleren Speicher nutzen! Speicherhierarchie im Hinterkopf behalten ;-) Register und Shared Memory, wo es möglich ist Constant Memory, weil gecached Global Memory vermeiden Local Memory möglichst vermeiden! Jutta Fitzek Parallele Programmierung mit GPUs Slide 33 / 43

34 Tipps und Tricks: Speicher 2/2 Einfache Möglichkeit ist z.b. Schleifen ausrollen / Unroll loops, um Register zu verwenden: Compiler Direktive #pragma unroll führt zur Verwendung von Registern statt Local Memory Speicherzugriffe optimieren: Generell Coalesced access : Eine Speicher-Lesetransaktion, wenn alle Threads Warps auf ein zusammenhängendes Segment im global memory zugreifen Jutta Fitzek Parallele Programmierung mit GPUs Slide 34 / 43

35 Agenda GPUs: Historie GPU Programmierung Konzepte Codebeispiel Generelle Tipps & Tricks Exkurs Weiterführende Informationen Jutta Fitzek Parallele Programmierung mit GPUs Slide 35 / 43

36 Exkurs: Single/Double Precision Fließkommazahlen in einfacher oder doppelter Genauigkeit (32 vs. 64Bit) sind ein wichtiges Thema bei langlaufenden rechenintensiven Programmen GPU: Doppelte Genauigkeit ist mittlerweile verfügbar, die Performance ist jedoch geringer als bei der Verwengung von einfacher Genauigkeit Vorsicht mit älteren Grafikkarten: nicht alle erfüllen den vollen IEEE 754 Standard! Abwägung: Performance vs. Fehlerfortpflanzung Doppelte Genauigkeit ist noch nicht in allen APIs verfügbar Zukunft: die Performance der Berechnungen mit doppelter Genauigkeit wird immer besser, aktuelle Grafikkarten erreichen bis zu 80% der Performanz Jutta Fitzek Parallele Programmierung mit GPUs Slide 36 / 43

37 Exkurs: Thrust 1/2 Low level programming mit CUDA für C++ (s. vorher): + Alle Möglichkeiten der Programmierung verfügbar + Komplette Kontrolle über die GPU Vielen Zeilen an technischem Code Komplexere Programme, verringerte Wartbarkeit High level programming mit Thrust für CUDA: + Viele vordefinierte Funktionen, schnelle Lernkurve + Wenig/kein zusätzlicher technischer Code + Weniger Komplexität, bessere Wartbarkeit Keine volle Kontrolle, ggf. low level Programmierung nötig Viele Funktionen aktuell nur mit single precision verfügbar Jutta Fitzek Parallele Programmierung mit GPUs Slide 37 / 43

38 Exkurs: Thrust 2/2 Thrust bietet Funktionen für: einfaches Anlegen von z.b. Vektoren, diese beinhalten Iteratoren direktes Zuweisen von Host/Device Vektoren Speicher muss nicht allokiert / freigegeben werden eingebaute Funktionen: Sortieren Transformieren Summieren... => sehr gut geeignet als Schnelleinstieg! => GPU wird für eine breitere Nutzerbasis zugänglich er Beispiel von der Thrust Projektseite: Jutta Fitzek Parallele Programmierung mit GPUs Slide 38 / 43

39 Exkurs: Was ist nun mit MPI? Message Passing Interface (MPI): Standard für den Nachrichtenaustausch bei parallelen Berechnungen auf verteilten Computersystemen An einer Programmausführung nehmen mehrere Prozesse teil, die über Nachrichten miteinander kommunizieren Stichworte: distributed memory SPMD (single program, multiple data, Unterkategorie von MIMD) Aufbau zusammen mit GPUs: Jeder MPI Knoten hat zusätzlich intern ein oder mehrere GPUs GPU zur Beschleunigung der lokalen Berechnung auf diesem Knoten Stichwort coarse-grained parallelism zwischen den MPI Knoten (jeder einzelne Knoten muss genug Berechnungsarbeit zu leisten haben, damit sich lokal der Einsatz der GPU lohnt) => GPU Programmierung und MPI Programmierung ergänzen sich und werden häufig gemeinsam eingesetzt! Jutta Fitzek Parallele Programmierung mit GPUs Slide 39 / 43

40 Agenda GPUs: Historie GPU Programmierung Konzepte Codebeispiel Generelle Tipps & Tricks Exkurs Zusammenfassung Weiterführende Informationen Jutta Fitzek Parallele Programmierung mit GPUs Slide 40 / 43

41 Zusammenfassung GPUs bieten eine einfache Möglichkeit zur Parallelen Programmierung (Datenparallelität) GPUs werden aktuell bereits in vielen Bereichen eingesetzt, auch in kommerziellen Produkten (z.b. Photoshop) Tendenz: verstärkter Einsatz in Supercomputern Tendenz: verstärkter Einsatz allgemein, auf Grund der hohen Verbreitung der Grafikkarten in Desktop Rechnern CUDA oder OpenCL? für CUDA sprechen aktuell die vielen vorhandenen Bibliotheksfunktionen Zukunft? => ein Prozessor, der alles vereint und es dem Benutzer gegenüber versteckt??? Jutta Fitzek Parallele Programmierung mit GPUs Slide 41 / 43

42 Agenda GPUs: Historie GPU Programmierung Konzepte Codebeispiel Generelle Tipps & Tricks Exkurs Zusammenfassung Weiterführende Informationen Jutta Fitzek Parallele Programmierung mit GPUs Slide 42 / 43

43 Weiterführende Informationen CUDA CUDA C Programming Guide Bücher: CUDA by Example J. Sanders, E. Kandrot; Addison-Wesley Programming Massively Parallel Processors: A Hands-on Approach 2 nd Edition D. Kirk, W. Hwu; Morgan Kaufmann Kurs zur GPU Programmierung: Stanford University Course (podcast): Jutta Fitzek Parallele Programmierung mit GPUs Slide 43 / 43

CUDA. Moritz Wild, Jan-Hugo Lupp. Seminar Multi-Core Architectures and Programming. Friedrich-Alexander-Universität Erlangen-Nürnberg

CUDA. Moritz Wild, Jan-Hugo Lupp. Seminar Multi-Core Architectures and Programming. Friedrich-Alexander-Universität Erlangen-Nürnberg CUDA Seminar Multi-Core Architectures and Programming 1 Übersicht Einleitung Architektur Programmierung 2 Einleitung Computations on GPU 2003 Probleme Hohe Kenntnisse der Grafikprogrammierung nötig Unterschiedliche

Mehr

Compute Unified Device Architecture CUDA

Compute Unified Device Architecture CUDA Compute Unified Device Architecture 06. Februar 2012 1 / 13 Gliederung 2 / 13 : Compute Unified Device Architecture entwickelt von Nvidia Corporation spezifiziert Software- und Hardwareeigenschaften Ziel:

Mehr

GPGPU-Programmierung

GPGPU-Programmierung 12 GPGPU-Programmierung 2013/04/25 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken ist im Allgemeinen nicht erlaubt. Motivation (1) General Purpose Computing on

Mehr

Masterpraktikum Scientific Computing

Masterpraktikum Scientific Computing Masterpraktikum Scientific Computing High-Performance Computing Thomas Auckenthaler Wolfgang Eckhardt Prof. Dr. Michael Bader Technische Universität München, Germany Outline Organisatorisches Entwicklung

Mehr

GPGPU-Programmierung

GPGPU-Programmierung 12 GPGPU-Programmierung 2014/04/29 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken ist im Allgemeinen nicht erlaubt. Motivation (1) General Purpose Computing on

Mehr

Masterpraktikum Scientific Computing

Masterpraktikum Scientific Computing Masterpraktikum Scientific Computing High-Performance Computing Thomas Auckenthaler Wolfgang Eckhardt Technische Universität München, Germany Outline Entwicklung General Purpose GPU Programming (GPGPU)

Mehr

Grundlagen von CUDA, Sprachtypische Elemente

Grundlagen von CUDA, Sprachtypische Elemente Grundlagen von CUDA, Sprachtypische Elemente Stefan Maskanitz 03.07.2009 CUDA Grundlagen 1 Übersicht 1. Einleitung 2. Spracheigenschaften a. s, Blocks und Grids b. Speicherorganistion c. Fehlerbehandlung

Mehr

GPGPU mit NVIDIA CUDA

GPGPU mit NVIDIA CUDA 01.07.12 GPGPU mit NVIDIA CUDA General-Purpose on Formatvorlagecomputing des Graphics Processing durch Units Untertitelmasters mit KlickenCompute bearbeiten NVIDIA Unified Device Architecture Gliederung

Mehr

Einführung. GPU-Versuch. Andreas Schäfer Friedrich-Alexander-Universität Erlangen-Nürnberg

Einführung. GPU-Versuch. Andreas Schäfer Friedrich-Alexander-Universität Erlangen-Nürnberg GPU-Versuch andreas.schaefer@cs.fau.de Friedrich-Alexander-Universität Erlangen-Nürnberg Praktikum Parallele Rechnerarchitekturen SS2014 Outline 1 Einführung 2 Outlook 1 Einführung 2 Eine kurze Geschichte

Mehr

Praxiseinheit: Realisierung einer hardwarebeschleunigten Disparitätenberechnung zur automatischen Auswertung von Stereobildern

Praxiseinheit: Realisierung einer hardwarebeschleunigten Disparitätenberechnung zur automatischen Auswertung von Stereobildern Praxiseinheit: Realisierung einer hardwarebeschleunigten Disparitätenberechnung zur automatischen Auswertung von Stereobildern Institut für Betriebssysteme und Rechnerverbund TU Braunschweig 25.10., 26.10.

Mehr

Programmierbeispiele und Implementierung. Name: Michel Steuwer E-Mail: michel.steuwer@wwu.de

Programmierbeispiele und Implementierung. Name: Michel Steuwer E-Mail: michel.steuwer@wwu.de > Programmierbeispiele und Implementierung Name: Michel Steuwer E-Mail: michel.steuwer@wwu.de 2 > Übersicht > Matrix Vektor Multiplikation > Mandelbrotmenge / Apfelmännchen berechnen > Kantendetektion

Mehr

CUDA. Axel Jena, Jürgen Pröll. Multi-Core Architectures and Programming. Friedrich-Alexander-Universität Erlangen-Nürnberg Axel Jena, Jürgen Pröll 1

CUDA. Axel Jena, Jürgen Pröll. Multi-Core Architectures and Programming. Friedrich-Alexander-Universität Erlangen-Nürnberg Axel Jena, Jürgen Pröll 1 CUDA Axel Jena, Jürgen Pröll Multi-Core Architectures and Programming Axel Jena, Jürgen Pröll 1 Warum Tesla? Traditionelle Graphikkarten Getrennte Prozessoren für Vertex- / Pixelberechnungen - Nachteil:

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

The ToolChain.com. Grafisches Debugging mit der QtCreator Entwicklungsumgebung

The ToolChain.com. Grafisches Debugging mit der QtCreator Entwicklungsumgebung The ToolChain Grafisches Debugging mit der QtCreator Entwicklungsumgebung geschrieben von Gregor Rebel 2014-2015 Hintergrund Neben dem textuellen Debuggen in der Textkonsole bieten moderene Entwicklungsumgebungen

Mehr

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten

Mehr

GPGPU-Programming. Constantin Timm Informatik 12 TU Dortmund 2012/04/09. technische universität dortmund. fakultät für informatik informatik 12

GPGPU-Programming. Constantin Timm Informatik 12 TU Dortmund 2012/04/09. technische universität dortmund. fakultät für informatik informatik 12 12 GPGPU-Programming Constantin Timm Informatik 12 TU Dortmund 2012/04/09 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken ist im Allgemeinen nicht erlaubt. Motivation

Mehr

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

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

Mehr

Konzepte der Informatik

Konzepte der Informatik Konzepte der Informatik Vorkurs Informatik zum WS 2011/2012 26.09. - 30.09.2011 17.10. - 21.10.2011 Dr. Werner Struckmann / Christoph Peltz Stark angelehnt an Kapitel 1 aus "Abenteuer Informatik" von Jens

Mehr

Internet Explorer Version 6

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

Mehr

GPGPU-Architekturen CUDA Programmiermodell Beispielprogramm. Einführung CUDA. Ralf Seidler. Friedrich-Alexander-Universität Erlangen-Nürnberg

GPGPU-Architekturen CUDA Programmiermodell Beispielprogramm. Einführung CUDA. Ralf Seidler. Friedrich-Alexander-Universität Erlangen-Nürnberg Einführung CUDA Friedrich-Alexander-Universität Erlangen-Nürnberg PrakParRA, 18.11.2010 Outline 1 GPGPU-Architekturen 2 CUDA Programmiermodell 3 Beispielprogramm Outlook 1 GPGPU-Architekturen 2 CUDA Programmiermodell

Mehr

Eine kurze Geschichte der Grafikkarten

Eine kurze Geschichte der Grafikkarten 3.1 Einführung Eine kurze Geschichte der Grafikkarten ursprünglich: Graphics Card steuert Monitor an Mitte 80er: Grafikkarten mit 2D-Beschleunigung angelehnt an Arcade- und Home-Computer frühe 90er: erste

Mehr

Lizenzierung von Windows Server 2012

Lizenzierung von Windows Server 2012 Lizenzierung von Windows Server 2012 Das Lizenzmodell von Windows Server 2012 Datacenter und Standard besteht aus zwei Komponenten: Prozessorlizenzen zur Lizenzierung der Serversoftware und CALs zur Lizenzierung

Mehr

Objektorientierte Programmierung

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

Mehr

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Roboter programmieren mit NXC für Lego Mindstorms NXT 1. Auflage Roboter programmieren mit NXC für Lego Mindstorms NXT schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Verlag

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

Übungen zur Softwaretechnik

Übungen zur Softwaretechnik Technische Universität München Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering Markus Pister, Dr. Bernhard Rumpe WS 2002/2003 Lösungsblatt 9 17. Dezember 2002 www4.in.tum.de/~rumpe/se

Mehr

Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der IBOConsole

Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der IBOConsole Lavid-F.I.S. Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der Lavid Software GmbH Dauner Straße 12, D-41236 Mönchengladbach http://www.lavid-software.net Support:

Mehr

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014)

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014) Handbuch NAFI Online-Spezial 1. Auflage (Stand: 24.09.2014) Copyright 2016 by NAFI GmbH Unerlaubte Vervielfältigungen sind untersagt! Inhaltsangabe Einleitung... 3 Kundenauswahl... 3 Kunde hinzufügen...

Mehr

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter Die Programmiersprache Java Dr. Wolfgang Süß Thorsten Schlachter Eigenschaften von Java Java ist eine von der Firma Sun Microsystems entwickelte objektorientierte Programmiersprache. Java ist......a simple,

Mehr

Zwischenablage (Bilder, Texte,...)

Zwischenablage (Bilder, Texte,...) Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen

Mehr

Anleitung über den Umgang mit Schildern

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

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

Mehr

Was meinen die Leute eigentlich mit: Grexit?

Was meinen die Leute eigentlich mit: Grexit? Was meinen die Leute eigentlich mit: Grexit? Grexit sind eigentlich 2 Wörter. 1. Griechenland 2. Exit Exit ist ein englisches Wort. Es bedeutet: Ausgang. Aber was haben diese 2 Sachen mit-einander zu tun?

Mehr

Objektorientierte Programmierung. Kapitel 12: Interfaces

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/

Mehr

Programmierung für Mathematik (HS13)

Programmierung für Mathematik (HS13) software evolution & architecture lab Programmierung für Mathematik (HS13) Übung 5 1 Aufgabe: Eclipse IDE 1.1 Lernziele 1. Die Entwicklungsumgebung Eclipse einrichten. 2. Eclipse kennen lernen und mit

Mehr

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen Alexander Schunk Henry Trobisch Inhalt 1. Vergleich der Unit-Tests... 2 2. Vergleich der Codeabdeckungs-Tests... 2 3. Vergleich

Mehr

SharePoint Demonstration

SharePoint Demonstration SharePoint Demonstration Was zeigt die Demonstration? Diese Demonstration soll den modernen Zugriff auf Daten und Informationen veranschaulichen und zeigen welche Vorteile sich dadurch in der Zusammenarbeit

Mehr

Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version 2.0.1 Deutsch 01.07.2014

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...

Mehr

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage .htaccess HOWTO zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage Stand: 21.06.2015 Inhaltsverzeichnis 1. Vorwort...3 2. Verwendung...4 2.1 Allgemeines...4 2.1 Das Aussehen der.htaccess

Mehr

Lizenzierung von System Center 2012

Lizenzierung von System Center 2012 Lizenzierung von System Center 2012 Mit den Microsoft System Center-Produkten lassen sich Endgeräte wie Server, Clients und mobile Geräte mit unterschiedlichen Betriebssystemen verwalten. Verwalten im

Mehr

Übungen zu C++ Kapitel 1

Ü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

Mehr

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

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...

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Howto Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Peter Bitterlich Markus Langer 12. Oktober 2012 Zusammenfassung Dieses Dokument erklärt Schritt für Schritt die Installation

Mehr

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man

Mehr

1 Vom Problem zum Programm

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

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

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

Mehr

Java Kurs für Anfänger Einheit 5 Methoden

Java Kurs für Anfänger Einheit 5 Methoden Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden

Mehr

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

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

Mehr

Step by Step Webserver unter Windows Server 2003. von Christian Bartl

Step by Step Webserver unter Windows Server 2003. von Christian Bartl Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird

Mehr

Veröffentlichen von Apps, Arbeitsblättern und Storys. Qlik Sense 2.0.6 Copyright 1993-2015 QlikTech International AB. Alle Rechte vorbehalten.

Veröffentlichen von Apps, Arbeitsblättern und Storys. Qlik Sense 2.0.6 Copyright 1993-2015 QlikTech International AB. Alle Rechte vorbehalten. Veröffentlichen von Apps, Arbeitsblättern und Storys Qlik Sense 2.0.6 Copyright 1993-2015 QlikTech International AB. Alle Rechte vorbehalten. Copyright 1993-2015 QlikTech International AB. Alle Rechte

Mehr

1 Voraussetzungen für Einsatz des FRITZ! LAN Assistenten

1 Voraussetzungen für Einsatz des FRITZ! LAN Assistenten AVM GmbH Alt-Moabit 95 D-10559 Berlin Faxversand mit dem FRITZ! LAN Assistenten Mit dem FRITZ! LAN Assistenten können Sie einen Computer als FRITZ!fax Server einrichten, über den dann Faxe von anderen

Mehr

Tipps und Tricks zu Netop Vision und Vision Pro

Tipps und Tricks zu Netop Vision und Vision Pro Tipps und Tricks zu Netop Vision und Vision Pro Anwendungen auf Schülercomputer freigeben und starten Netop Vision ermöglicht Ihnen, Anwendungen und Dateien auf allen Schülercomputern gleichzeitig zu starten.

Mehr

Grundlagen von Python

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

Mehr

Mikrocontroller Grundlagen. Markus Koch April 2011

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

Mehr

Zählen von Objekten einer bestimmten Klasse

Zählen von Objekten einer bestimmten Klasse Zählen von Objekten einer bestimmten Klasse Ziel, Inhalt Zur Übung versuchen wir eine Klasse zu schreiben, mit der es möglich ist Objekte einer bestimmten Klasse zu zählen. Wir werden den ++ und den --

Mehr

Programmieren Lernen mit BYOB. Gerald Futschek 5. November 2012

Programmieren Lernen mit BYOB. Gerald Futschek 5. November 2012 Programmieren Lernen mit BYOB Informatiktag 2012 Gerald Futschek 5. November 2012 Erste Programmier Schritte in der Schule Sehr viele verschiedene Dinge zu lernen: Syntax und Semantik der Befehle, Algorithmen,

Mehr

Computerarithmetik ( )

Computerarithmetik ( ) Anhang A Computerarithmetik ( ) A.1 Zahlendarstellung im Rechner und Computerarithmetik Prinzipiell ist die Menge der im Computer darstellbaren Zahlen endlich. Wie groß diese Menge ist, hängt von der Rechnerarchitektur

Mehr

Lizenzierung von Windows Server 2012 R2. Lizenzierung von Windows Server 2012 R2

Lizenzierung von Windows Server 2012 R2. Lizenzierung von Windows Server 2012 R2 Lizenzierung von Windows Server 2012 R2 Lizenzierung von Windows Server 2012 R2 Das Lizenzmodell von Windows Server 2012 R2 Datacenter und Standard besteht aus zwei Komponenten: Prozessorlizenzen zur Lizenzierung

Mehr

OpenGL. (Open Graphic Library)

OpenGL. (Open Graphic Library) OpenGL (Open Graphic Library) Agenda Was ist OpenGL eigentlich? Geschichte Vor- und Nachteile Arbeitsweise glscene OpenGL per Hand Debugging Trend Was ist OpenGL eigentlich? OpenGL ist eine Spezifikation

Mehr

Benutzerkonto unter Windows 2000

Benutzerkonto unter Windows 2000 Jeder Benutzer, der an einem Windows 2000 PC arbeiten möchte, braucht dazu ein Benutzerkonto. Je nach Organisation des Netzwerkes, existiert dieses Benutzerkonto auf der lokalen Workstation oder im Active

Mehr

Professionelle Seminare im Bereich MS-Office

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

Mehr

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland OECD Programme for International Student Assessment Deutschland PISA 2000 Lösungen der Beispielaufgaben aus dem Mathematiktest Beispielaufgaben PISA-Hauptstudie 2000 Seite 3 UNIT ÄPFEL Beispielaufgaben

Mehr

Internet online Update (Internet Explorer)

Internet online Update (Internet Explorer) Um Ihr Consoir Beta immer schnell und umkompliziert auf den aktuellsten Stand zu bringen, bieten wir allen Kunden ein Internet Update an. Öffnen Sie Ihren Internetexplorer und gehen auf unsere Internetseite:

Mehr

OpenMP am Beispiel der Matrizenmultiplikation

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

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags Pommes... Praktikum A 230 C 207 (Madeleine) F 112 F 113 (Kevin) E

Mehr

GPU-Programmierung: OpenCL

GPU-Programmierung: OpenCL Seminar: Multicore Programmierung Sommerstemester 2009 04.06.2009 Inhaltsverzeichnis 1 GPU-Programmierung von Grafikkarten von GPU-Computing 2 Architektur Spracheigenschaften Vergleich mit CUDA Beispiel

Mehr

Qt-Projekte mit Visual Studio 2005

Qt-Projekte mit Visual Studio 2005 Qt-Projekte mit Visual Studio 2005 Benötigte Programme: Visual Studio 2005 Vollversion, Microsoft Qt 4 Open Source s. Qt 4-Installationsanleitung Tabelle 1: Benötigte Programme für die Qt-Programmierung

Mehr

Lizenz-Server überwachen

Lizenz-Server überwachen Einsteiger Fortgeschrittene Profis markus.meinl@m-quest.ch Version 1.0 Voraussetzungen für diesen Workshop 1. Die M-Quest Suite 2005-M oder höher ist auf diesem Rechner installiert 2. Das Produkt M-Lock

Mehr

Lexware professional und premium setzen bis einschließlich Version 2012 den Sybase SQL-Datenbankserver

Lexware professional und premium setzen bis einschließlich Version 2012 den Sybase SQL-Datenbankserver Eine Firewall für Lexware professional oder premium konfigurieren Inhaltsverzeichnis: 1. Allgemein... 1 2. Einstellungen... 1 3. Die Firewall von Windows 7 und Windows 2008 Server... 2 4. Die Firewall

Mehr

Was ist Sozial-Raum-Orientierung?

Was ist Sozial-Raum-Orientierung? Was ist Sozial-Raum-Orientierung? Dr. Wolfgang Hinte Universität Duisburg-Essen Institut für Stadt-Entwicklung und Sozial-Raum-Orientierte Arbeit Das ist eine Zusammen-Fassung des Vortrages: Sozialräume

Mehr

Application Layer Active Network

Application Layer Active Network Folie 1 Application Layer Active Network Vortrag zur Diplomarbeit Entwicklung eines Netzwerk-Interface zur Steuerung der Datenkommunikation einer Netzwerkkarte geschrieben und gehalten von Martin Wodrich

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

2. Braunschweiger Linux-Tage. Vortrag über RAID. von. Thomas King. http://www.t-king.de/linux/raid1.html. 2. Braunschweiger Linux-Tage Seite 1/16

2. Braunschweiger Linux-Tage. Vortrag über RAID. von. Thomas King. http://www.t-king.de/linux/raid1.html. 2. Braunschweiger Linux-Tage Seite 1/16 2. Braunschweiger Linux-Tage Vortrag über RAID von Thomas King http://www.t-king.de/linux/raid1.html 2. Braunschweiger Linux-Tage Seite 1/16 Übersicht: 1. Was ist RAID? 1.1. Wo wurde RAID entwickelt? 1.2.

Mehr

Java Kurs für Anfänger Einheit 4 Klassen und Objekte

Java Kurs für Anfänger Einheit 4 Klassen und Objekte Java Kurs für Anfänger Einheit 4 Klassen und Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 13. Juni 2009 Inhaltsverzeichnis klasse

Mehr

Updatehinweise für die Version forma 5.5.5

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

Mehr

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt Inhaltsverzeichnis Aufgabe... 1 Allgemein... 1 Active Directory... 1 Konfiguration... 2 Benutzer erstellen... 3 Eigenes Verzeichnis erstellen... 3 Benutzerkonto erstellen... 3 Profil einrichten... 5 Berechtigungen

Mehr

Windows Server 2008 (R2): Anwendungsplattform

Windows Server 2008 (R2): Anwendungsplattform Mag. Christian Zahler, Stand: August 2011 13 14 Mag. Christian Zahler, Stand: August 2011 Mag. Christian Zahler, Stand: August 2011 15 1.5.2 Remotedesktop-Webverbindung Windows Server 2008 (R2): Anwendungsplattform

Mehr

VB.net Programmierung und Beispielprogramm für GSV

VB.net Programmierung und Beispielprogramm für GSV VB.net Programmierung und Beispielprogramm für GSV Dokumentation Stand vom 26.05.2011 Tel +49 (0)3302 78620 60, Fax +49 (0)3302 78620 69, info@me-systeme.de, www.me-systeme.de 1 Inhaltsverzeichnis Vorwort...2

Mehr

Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit

Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit Frau Dr. Eva Douma ist Organisations-Beraterin in Frankfurt am Main Das ist eine Zusammen-Fassung des Vortrages: Busines

Mehr

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Ü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:

Mehr

Dokumentation für das Spiel Pong

Dokumentation für das Spiel Pong Dokumentation für das Spiel Pong BwInf - Turnierserver Didaktik der nformatik BWINF KI Wettbewerbs-Plattform Stand: 02.09.2014 Grundlagen In diesem KI-Turnier programmiert ihr einen Schläger für das Retro-Spiel

Mehr

Evident VDDS-Anbindung von MIZ

Evident VDDS-Anbindung von MIZ Evident VDDS-Anbindung von MIZ Die VDDS Schnittstelle erlaubt die Übernahme der Patientendaten aus Evident in MIZ. Außerdem können Sie aus Evident heraus (aus der Patientenkarteikarte) MIZ oder den MIZViewer

Mehr

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Diese Verbindung muss einmalig eingerichtet werden und wird benötigt, um den Zugriff vom privaten Rechner oder der Workstation im Home Office über

Mehr

Verwendung des IDS Backup Systems unter Windows 2000

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.

Mehr

Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1

Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1 Zahlenwinkel: Forscherkarte 1 alleine Tipp 1 Lege die Ziffern von 1 bis 9 so in den Zahlenwinkel, dass jeder Arm des Zahlenwinkels zusammengezählt das gleiche Ergebnis ergibt! Finde möglichst viele verschiedene

Mehr

Anleitung zum Anlegen und Bearbeiten einer News in TYPO3 für www.fk-havelland-mitte.de

Anleitung zum Anlegen und Bearbeiten einer News in TYPO3 für www.fk-havelland-mitte.de WEBandIT.net - Anleitung zum Anlegen und Bearbeiten einer News in TYPO3 für www.fk-havelland-mitte.de Die Internet-Seite wird intern durch das Programm TYPO3 verwaltet. Eine Anmeldung ist nur durch Zugangsdaten

Mehr

Arbeiten mit UMLed und Delphi

Arbeiten mit UMLed und Delphi Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf

Mehr

C++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet

C++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet C++ Grundlagen ++ bedeutet Erweiterung zum Ansi C Standard Hier wird eine Funktion eingeleitet Aufbau: In dieser Datei stehen die Befehle, die gestartet werden, wenn das Programm gestartet wird Int main()

Mehr

Grundbegriffe der Informatik

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

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Konfiguration des ewon GSM Modems Kurzbeschreibung zum Aufbau einer GSM Verbindung

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

Mehr

C++ mit Eclipse & GCC unter Windows

C++ mit Eclipse & GCC unter Windows C++ mit Eclipse & GCC Seite 1 / 14 C++ mit Eclipse & GCC unter Windows Hinweise Stand 18. Okt. 2014 => GCC 4.9.1 Boost 1.56.0 Eclipse Luna V. 4.4.1 Java Version 8, Update 25 (entspricht 1.8.0_25) Achtung

Mehr

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert: Firewall für Lexware professional konfigurieren Inhaltsverzeichnis: 1. Allgemein... 1 2. Einstellungen... 1 3. Windows XP SP2 und Windows 2003 Server SP1 Firewall...1 4. Bitdefender 9... 5 5. Norton Personal

Mehr

Einführung in die Programmierung

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

Mehr

Jederzeit Ordnung halten

Jederzeit Ordnung halten Kapitel Jederzeit Ordnung halten 6 auf Ihrem Mac In diesem Buch war bereits einige Male vom Finder die Rede. Dieses Kapitel wird sich nun ausführlich diesem so wichtigen Programm widmen. Sie werden das

Mehr

Anleitung. My Homepage. upc cablecom GmbH Industriestrasse 19 8112 Otelfingen 0800 66 88 66. Mehr Leistung, mehr Freude.

Anleitung. My Homepage. upc cablecom GmbH Industriestrasse 19 8112 Otelfingen 0800 66 88 66. Mehr Leistung, mehr Freude. Anleitung My Homepage upc cablecom GmbH Industriestrasse 19 8112 Otelfingen 0800 66 88 66 Mehr Leistung, mehr Freude. Inhaltsverzeichnis 1 Allgemeine Informationen 1 Allgemeine Informationen 3 2 Erste

Mehr