GPGPU, HPC, C++, Algorithmen, Performance-Optimierung, wissenschaftliches Rechnen
Aktualisiert am 19.03.2020
Profil
Freiberufler / Selbstständiger
Verfügbar ab: 20.03.2020
Verfügbar zu: 70%
davon vor Ort: 100%
Algorithmenentwicklung
GPGPU-Development
C++
Deutsch
Englisch

Einsatzorte

Einsatzorte

Deutschland, Österreich, Schweiz
nicht möglich

Projekte

Projekte

15 Jahre 9 Monate
2008-07 - heute

Entwicklung des GPGPU-Compilers

  •  ist eine fortschrittliche, hardwareunabhängige Programmierumgebung zur Verwendung von Grafikkarten für rechenintensive Anwendungen. Im Gegensatz von Konkurrenzprodukten wie OpenCL oder CUDA erlaubt die eingebettete Kernel-Programmierung direkt in C++.
  • Besondere Features:
    • Objektorientiertes Programmieren direkt in C++
    • Hohe Performance durch fortschrittliche Optimierungsverfahren und Anpassung an die vorhandene Hardware
    • Nutzung von Vektor-Instruktionen, falls von der Hardware unterstützt.
    • Automatische Fehlererkennung von Speicherinitialisierung und Race-Conditions.
    • Schnelle mathematische Funktionen
  • Unterstützung für Visual Studio, Clang und gcc
  • Entwicklung von Beispielprogrammen:
    • N-body Simulation, basierend auf der Fast-Multipole-Method
    • N-body Simulation mit direct-force calculation
    • Mandelbrot-Fraktal mit speziellem Deep-Zoom Algorithmus.
eigene Softwareentwicklung
22 Jahre 3 Monate
2002-01 - heute

Entwicklung des Programms

Goopax C++-11 gcc ...
  • ist ein vielseitig einsetzbares Prognoseprogramm, das auf einem neuartigen, von mir entwickelten Verfahren des maschinellen Lernens basiert. Tinmind ist in der Lage, Daten zu analysieren, Zusammenhänge in Daten zu finden und Vorhersagen über zukünftige, unbekannte Situationen zu liefern. Die Qualität der Prognosen ist dabei besser als bei etablierten Verfahren wie Neuronalen Netzen oder Support Vector Machines.
  • Forschung in der künstlichen Intelligenz.
  • Entwicklung und Optimierung der mathematischen Verfahren.
  • Tinmind nutzt den GPGPU-Compiler Goopax für die Berechnungen.
  • Entwicklung mathematischer Modelle für die Verwendung auf den Finanzmärkten.
  • Performance-Optimierung
Goopax C++-11 gcc emacs automake cmake bash perl svn git boost MPI OpenMP Linux OpenCL
eigene Softwareentwicklung
2 Monate
2017-04 - 2017-05

Entwicklung einer Anwendung zur Bilderkennung und Klassifikation mit Deep-Learning Verfahren

Caffe Goopax C++ ...
Caffe Goopax C++ Linux
Jonat Technologies
6 Monate
2016-07 - 2016-12

Algorithmenentwicklung

C++ MSVC
  • Entwicklung einer Funktion, um Einzelbilder zu einem Gesamtbild zu kombinieren.
  • GPGPU Programmierung
C++ MSVC
Sirona Dental Systems GmbH
4 Monate
2015-10 - 2016-01

Entwicklung von GPGPU-Anwendungen für Kameras

Goopax C++ gcc ...
  • Entwicklung von GPGPU-Anwendungen für Kameras
  • Performance-Tests
Goopax C++ gcc Linux ARM
Testo Visual Systems GmbH
3 Monate
2013-11 - 2014-01

Weiterentwicklung der Routenplanungs-Software.

C++ Java gcc ...
  • Weiterentwicklung der Routenplanungs-Software.
  • Implementierung und Durchführung von Tests

C++ Java gcc eclipse git perforce Linux
TomTom
10 Monate
2011-12 - 2012-09

Fahrerassistenzsysteme. Weiterentwicklung eines Systems zur kamerabasierten Fahrspurerkennung.

C++ MISRA/PC-lint Visual Studio ...
  • Optimierung bestehender Algorithmen zur Fahrspurerkennung (C++, embedded)
  • Vereinfachung der Programmstruktur
  • Entwicklung von Verfahren zur automatisierten Fehlerüberprüfung von Arrays, Zeigern und der Variableninitialisierung
  • Entwicklung von Methoden zum Abgleich der Algorithmen auf PC und Zielhardware
  • Einbinden eines Klassifikators, sowie Erstellung der dazugehörigen Lernumgebung und Programmierung eines Labeling-Tools
  • Entwicklung eines Visualisierungsmoduls zum Vergleich der erkannten Fahrspuren mit Datenbankeinträge
C++ MISRA/PC-lint Visual Studio MKS SCons python SQL (Oracle)
Continental AG
Lindau
3 Monate
2007-09 - 2007-11

Programmierung von Webservern

Java eclipse ant ...
  • Softwareentwicklung in Java
  • Implementierung angeforderter Funktionalitäten, Optimierung, Debugging.
  • Optimierung der Client-Server Interaktion
  • Optimierung der Datenbankzugriffe
Java eclipse ant svn linux SQL (postgres)
freiheit.com technologies GmbH
Hamburg
10 Monate
2006-11 - 2007-08

: Weiterentwicklung des Softwareprodukts Fluidator. Der Zweck des Produktes ist die Fluidsimulation auf Basis eines Teilchenansatzes.

Konzeption, Forschung, Software-Entwicklung, Algorithmenentwickl MS Visual C++ doxygen svn ...
Konzeption, Forschung, Software-Entwicklung, Algorithmenentwickl
  • Weiterentwicklung des Softwareprodukts Fluidator. Der Zweck des Produktes ist die Fluidsimulation auf Basis eines Teilchenansatzes. Es sollte eine zuverlässige Alternative zu etablierten Finite Elemente Methoden entwickelt werden.
  • Erforschung neuer Verfahren für hydrodynamische Simulationen.
  • Entwicklung des Simulationsprogramms fluidator, einem N-body/SPH-Simulationsprogramm für industrielle Anwendungen.
  • Entwicklung der notwendigen Datenstrukturen und Algorithmen für das Teilchenmodell.
  • Die Erstellung dieser Software bedurfte, zusätzlich zu Programmierexpertise, auch physikalischen und mathematischen Sachverstand, da die Algorithmen in der Forschung noch nicht abschließend bekannt sind.
  • Programmierung in C++ unter der Entwicklungsumgebung Microsoft VisualStudio .NET.
MS Visual C++ doxygen svn windows
algorithmica technologies GmbH
Bremen
4 Jahre 1 Monat
2002-10 - 2006-10

Entwicklung neuartiger Verfahren und Algorithmen für astrophysikalische Simulationen

Forschung, Konzeption, Software-Entwicklung C++ gcc emacs ...
Forschung, Konzeption, Software-Entwicklung
  • Entwicklung neuartiger Verfahren und Algorithmen für astrophysikalische Simulationen
  • Entwicklung des N-body/SPH-Simulationsprogramms starburst.
  • Ziel war die Entwicklung eines Programms zur Simulation der Entstehung von Galaxien. Die gängigen Simulationsverfahren weisen erhebliche Mängel auf. Ich habe eigenständig neue Verfahren erarbeitet, die genauere und verlässlichere Resultate ermöglichen.
  • Erarbeitung neuer Algorithmen für:
  • Gravitation: Kraftberechnung mit Komplexität O(N)
  • Hydrodynamik (SPH): Skaleninvarianz bei gleichzeitiger Energieerhaltung
  • Strahlungstransport
  • Erarbeitung eines neuen Verfahrens zur automatischen Parametrisierung von „Subgrid-Physik“, das sehr viel genauere und annahmenfreie Simulationen ermöglicht (z.B. bei der Sternentstehungsrate oder bei Turbulenzen).
  • Durchführung und Auswertung der Simulationen
  • Die Rechnungen waren performancekritisch. Die Simulationen wurden auf einem Computercluster durchgeführt.
  • Programmierung in C++
C++ gcc emacs automake gnuplot doxygen perl svn boost MPI linux
Astrophysikalisches Institut Potsdam
Potsdam
4 Monate
2003-03 - 2003-06

: Entwicklung eines neuartigen Pfadplanungsalgorithmus für Roboter-Fussball. Robocup, Team: FU-Fighters

Entwickler
Entwickler
Freie Universität Berlin
Berlin

Aus- und Weiterbildung

Aus- und Weiterbildung

4 Jahre 9 Monate
1997-10 - 2002-06

Physikstudium

Diplom in Physik, Universität Hannover
Diplom in Physik
Universität Hannover

Nebenfach:

Informatik

Titel der Diplomarbeit:

Atom Optics of Vortices in Bose-Einstein Condensates.

10 Monate
1999-09 - 2000-06

Studienaufenthalt im Rahmen des Socrates-Erasmus Austauschprogrammes.

., University of Manchester
.
University of Manchester
6 Jahre 11 Monate
1990-08 - 1997-06

Schulbildung

Abitur, Kurt-Schwitters-Gymnasium Misburg, Hannover
Abitur
Kurt-Schwitters-Gymnasium Misburg, Hannover

Position

Position

Entwicklung neuer Rechenverfahren

Algorithmenentwicklung

High Performance Computing

Entwicklung von GPGPU-Anwendungen mit GOOPAX

Kompetenzen

Kompetenzen

Top-Skills

Algorithmenentwicklung GPGPU-Development C++

Produkte / Standards / Erfahrungen / Methoden

ant
automake
boost
Caffe
doxygen
eclipse
gcc
git
gnuplot
Goopax
MISRA/PC-lint
MKS
MPI
MSVC
OpenMP
perforce
SCons
svn
Visual Studio

Leistungen

GPGPU:

  • Nutzung von Grafikkarten zur schnellen Berechnung.
  • Vertrieb und Support meines GPGPU-Compilers [Name auf Anfrage].
  • Portierung Ihrer existierenden HPC-Programme.

 

High Performance Computing:

  • Code-Optimierung
  • Paralleles Rechnen (MPI, Threads, OpenMP)

 

Wissenschaftliches Rechnen:

  • Entwicklung mathematischer Modelle und Verfahren.
  • Entwicklung neuartiger Simulationsverfahren.
  • Entwicklung schneller Algorithmen.

 

C++:

  • Robustes und fehlertolerantes Programmdesign
  • Techniken zur automatisierten Fehlersuche
  • Fortgeschrittene Programmiertechniken bis hin zu template-Metaprogrammierung und selbstschreibenden Programmen.

 

 

Forschungsinteressen

  • künstliche Intelligenz, maschinelles Lernen
  • Informatik
  • theoretische Physik
  • Mathematik

Betriebssysteme

Linux
Unix
Linux
Windows

Programmiersprachen

Assembler
bash
C
C++
C++-11
cmake
Emacs
Fortran
Imake, GNU-Make, Make-Maker etc...
Java
Lisp
Maschinensprachen
MS Visual C++
OpenCL
Perl
Python
Qt
Shell
TeX, LaTeX

Datenbanken

Oracle
Postgres
SQL

Datenkommunikation

Internet, Intranet
Router
TCP/IP

Hardware

ARM
embedded Systeme
PC

Grafikkarten (AMD, nvidia)

Berechnung / Simulation / Versuch / Validierung

CFD (Computational Fluid Dynamics)
Hardware-in-the-Loop Simulation (HIL)
MKS (Mehrkörpersimulation)
Software-in-the-Loop Simulation (SIL)

Ich habe verschiedene Simulationsprogramme entwickelt (in C++) (Galaxienentstehung, Bose-Einstein-Kondensate, CFD, ...)

Einsatzorte

Einsatzorte

Deutschland, Österreich, Schweiz
nicht möglich

Projekte

Projekte

15 Jahre 9 Monate
2008-07 - heute

Entwicklung des GPGPU-Compilers

  •  ist eine fortschrittliche, hardwareunabhängige Programmierumgebung zur Verwendung von Grafikkarten für rechenintensive Anwendungen. Im Gegensatz von Konkurrenzprodukten wie OpenCL oder CUDA erlaubt die eingebettete Kernel-Programmierung direkt in C++.
  • Besondere Features:
    • Objektorientiertes Programmieren direkt in C++
    • Hohe Performance durch fortschrittliche Optimierungsverfahren und Anpassung an die vorhandene Hardware
    • Nutzung von Vektor-Instruktionen, falls von der Hardware unterstützt.
    • Automatische Fehlererkennung von Speicherinitialisierung und Race-Conditions.
    • Schnelle mathematische Funktionen
  • Unterstützung für Visual Studio, Clang und gcc
  • Entwicklung von Beispielprogrammen:
    • N-body Simulation, basierend auf der Fast-Multipole-Method
    • N-body Simulation mit direct-force calculation
    • Mandelbrot-Fraktal mit speziellem Deep-Zoom Algorithmus.
eigene Softwareentwicklung
22 Jahre 3 Monate
2002-01 - heute

Entwicklung des Programms

Goopax C++-11 gcc ...
  • ist ein vielseitig einsetzbares Prognoseprogramm, das auf einem neuartigen, von mir entwickelten Verfahren des maschinellen Lernens basiert. Tinmind ist in der Lage, Daten zu analysieren, Zusammenhänge in Daten zu finden und Vorhersagen über zukünftige, unbekannte Situationen zu liefern. Die Qualität der Prognosen ist dabei besser als bei etablierten Verfahren wie Neuronalen Netzen oder Support Vector Machines.
  • Forschung in der künstlichen Intelligenz.
  • Entwicklung und Optimierung der mathematischen Verfahren.
  • Tinmind nutzt den GPGPU-Compiler Goopax für die Berechnungen.
  • Entwicklung mathematischer Modelle für die Verwendung auf den Finanzmärkten.
  • Performance-Optimierung
Goopax C++-11 gcc emacs automake cmake bash perl svn git boost MPI OpenMP Linux OpenCL
eigene Softwareentwicklung
2 Monate
2017-04 - 2017-05

Entwicklung einer Anwendung zur Bilderkennung und Klassifikation mit Deep-Learning Verfahren

Caffe Goopax C++ ...
Caffe Goopax C++ Linux
Jonat Technologies
6 Monate
2016-07 - 2016-12

Algorithmenentwicklung

C++ MSVC
  • Entwicklung einer Funktion, um Einzelbilder zu einem Gesamtbild zu kombinieren.
  • GPGPU Programmierung
C++ MSVC
Sirona Dental Systems GmbH
4 Monate
2015-10 - 2016-01

Entwicklung von GPGPU-Anwendungen für Kameras

Goopax C++ gcc ...
  • Entwicklung von GPGPU-Anwendungen für Kameras
  • Performance-Tests
Goopax C++ gcc Linux ARM
Testo Visual Systems GmbH
3 Monate
2013-11 - 2014-01

Weiterentwicklung der Routenplanungs-Software.

C++ Java gcc ...
  • Weiterentwicklung der Routenplanungs-Software.
  • Implementierung und Durchführung von Tests

C++ Java gcc eclipse git perforce Linux
TomTom
10 Monate
2011-12 - 2012-09

Fahrerassistenzsysteme. Weiterentwicklung eines Systems zur kamerabasierten Fahrspurerkennung.

C++ MISRA/PC-lint Visual Studio ...
  • Optimierung bestehender Algorithmen zur Fahrspurerkennung (C++, embedded)
  • Vereinfachung der Programmstruktur
  • Entwicklung von Verfahren zur automatisierten Fehlerüberprüfung von Arrays, Zeigern und der Variableninitialisierung
  • Entwicklung von Methoden zum Abgleich der Algorithmen auf PC und Zielhardware
  • Einbinden eines Klassifikators, sowie Erstellung der dazugehörigen Lernumgebung und Programmierung eines Labeling-Tools
  • Entwicklung eines Visualisierungsmoduls zum Vergleich der erkannten Fahrspuren mit Datenbankeinträge
C++ MISRA/PC-lint Visual Studio MKS SCons python SQL (Oracle)
Continental AG
Lindau
3 Monate
2007-09 - 2007-11

Programmierung von Webservern

Java eclipse ant ...
  • Softwareentwicklung in Java
  • Implementierung angeforderter Funktionalitäten, Optimierung, Debugging.
  • Optimierung der Client-Server Interaktion
  • Optimierung der Datenbankzugriffe
Java eclipse ant svn linux SQL (postgres)
freiheit.com technologies GmbH
Hamburg
10 Monate
2006-11 - 2007-08

: Weiterentwicklung des Softwareprodukts Fluidator. Der Zweck des Produktes ist die Fluidsimulation auf Basis eines Teilchenansatzes.

Konzeption, Forschung, Software-Entwicklung, Algorithmenentwickl MS Visual C++ doxygen svn ...
Konzeption, Forschung, Software-Entwicklung, Algorithmenentwickl
  • Weiterentwicklung des Softwareprodukts Fluidator. Der Zweck des Produktes ist die Fluidsimulation auf Basis eines Teilchenansatzes. Es sollte eine zuverlässige Alternative zu etablierten Finite Elemente Methoden entwickelt werden.
  • Erforschung neuer Verfahren für hydrodynamische Simulationen.
  • Entwicklung des Simulationsprogramms fluidator, einem N-body/SPH-Simulationsprogramm für industrielle Anwendungen.
  • Entwicklung der notwendigen Datenstrukturen und Algorithmen für das Teilchenmodell.
  • Die Erstellung dieser Software bedurfte, zusätzlich zu Programmierexpertise, auch physikalischen und mathematischen Sachverstand, da die Algorithmen in der Forschung noch nicht abschließend bekannt sind.
  • Programmierung in C++ unter der Entwicklungsumgebung Microsoft VisualStudio .NET.
MS Visual C++ doxygen svn windows
algorithmica technologies GmbH
Bremen
4 Jahre 1 Monat
2002-10 - 2006-10

Entwicklung neuartiger Verfahren und Algorithmen für astrophysikalische Simulationen

Forschung, Konzeption, Software-Entwicklung C++ gcc emacs ...
Forschung, Konzeption, Software-Entwicklung
  • Entwicklung neuartiger Verfahren und Algorithmen für astrophysikalische Simulationen
  • Entwicklung des N-body/SPH-Simulationsprogramms starburst.
  • Ziel war die Entwicklung eines Programms zur Simulation der Entstehung von Galaxien. Die gängigen Simulationsverfahren weisen erhebliche Mängel auf. Ich habe eigenständig neue Verfahren erarbeitet, die genauere und verlässlichere Resultate ermöglichen.
  • Erarbeitung neuer Algorithmen für:
  • Gravitation: Kraftberechnung mit Komplexität O(N)
  • Hydrodynamik (SPH): Skaleninvarianz bei gleichzeitiger Energieerhaltung
  • Strahlungstransport
  • Erarbeitung eines neuen Verfahrens zur automatischen Parametrisierung von „Subgrid-Physik“, das sehr viel genauere und annahmenfreie Simulationen ermöglicht (z.B. bei der Sternentstehungsrate oder bei Turbulenzen).
  • Durchführung und Auswertung der Simulationen
  • Die Rechnungen waren performancekritisch. Die Simulationen wurden auf einem Computercluster durchgeführt.
  • Programmierung in C++
C++ gcc emacs automake gnuplot doxygen perl svn boost MPI linux
Astrophysikalisches Institut Potsdam
Potsdam
4 Monate
2003-03 - 2003-06

: Entwicklung eines neuartigen Pfadplanungsalgorithmus für Roboter-Fussball. Robocup, Team: FU-Fighters

Entwickler
Entwickler
Freie Universität Berlin
Berlin

Aus- und Weiterbildung

Aus- und Weiterbildung

4 Jahre 9 Monate
1997-10 - 2002-06

Physikstudium

Diplom in Physik, Universität Hannover
Diplom in Physik
Universität Hannover

Nebenfach:

Informatik

Titel der Diplomarbeit:

Atom Optics of Vortices in Bose-Einstein Condensates.

10 Monate
1999-09 - 2000-06

Studienaufenthalt im Rahmen des Socrates-Erasmus Austauschprogrammes.

., University of Manchester
.
University of Manchester
6 Jahre 11 Monate
1990-08 - 1997-06

Schulbildung

Abitur, Kurt-Schwitters-Gymnasium Misburg, Hannover
Abitur
Kurt-Schwitters-Gymnasium Misburg, Hannover

Position

Position

Entwicklung neuer Rechenverfahren

Algorithmenentwicklung

High Performance Computing

Entwicklung von GPGPU-Anwendungen mit GOOPAX

Kompetenzen

Kompetenzen

Top-Skills

Algorithmenentwicklung GPGPU-Development C++

Produkte / Standards / Erfahrungen / Methoden

ant
automake
boost
Caffe
doxygen
eclipse
gcc
git
gnuplot
Goopax
MISRA/PC-lint
MKS
MPI
MSVC
OpenMP
perforce
SCons
svn
Visual Studio

Leistungen

GPGPU:

  • Nutzung von Grafikkarten zur schnellen Berechnung.
  • Vertrieb und Support meines GPGPU-Compilers [Name auf Anfrage].
  • Portierung Ihrer existierenden HPC-Programme.

 

High Performance Computing:

  • Code-Optimierung
  • Paralleles Rechnen (MPI, Threads, OpenMP)

 

Wissenschaftliches Rechnen:

  • Entwicklung mathematischer Modelle und Verfahren.
  • Entwicklung neuartiger Simulationsverfahren.
  • Entwicklung schneller Algorithmen.

 

C++:

  • Robustes und fehlertolerantes Programmdesign
  • Techniken zur automatisierten Fehlersuche
  • Fortgeschrittene Programmiertechniken bis hin zu template-Metaprogrammierung und selbstschreibenden Programmen.

 

 

Forschungsinteressen

  • künstliche Intelligenz, maschinelles Lernen
  • Informatik
  • theoretische Physik
  • Mathematik

Betriebssysteme

Linux
Unix
Linux
Windows

Programmiersprachen

Assembler
bash
C
C++
C++-11
cmake
Emacs
Fortran
Imake, GNU-Make, Make-Maker etc...
Java
Lisp
Maschinensprachen
MS Visual C++
OpenCL
Perl
Python
Qt
Shell
TeX, LaTeX

Datenbanken

Oracle
Postgres
SQL

Datenkommunikation

Internet, Intranet
Router
TCP/IP

Hardware

ARM
embedded Systeme
PC

Grafikkarten (AMD, nvidia)

Berechnung / Simulation / Versuch / Validierung

CFD (Computational Fluid Dynamics)
Hardware-in-the-Loop Simulation (HIL)
MKS (Mehrkörpersimulation)
Software-in-the-Loop Simulation (SIL)

Ich habe verschiedene Simulationsprogramme entwickelt (in C++) (Galaxienentstehung, Bose-Einstein-Kondensate, CFD, ...)

Vertrauen Sie auf GULP

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

Das GULP Freelancer-Portal

Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.