wiki:students

Version 15 (modified by csa, 10 years ago) (diff)

--

Institute for Data Processing and Electronics proposes a wide selection of topics for Internships as well as Master and Bachelor thesis. You may select from highlighted topics with defined research program or find a custom research project among our current activities. You will find samples of such projects below. In case of questions contact Suren A. Chilingaryan <csa@suren.me>.

Research Domains

  • Mathematics & algorithm development in MATLAB/Octave
  • GPU-based image processing with CUDA/OpenCL
  • Code optimization, parallel programming, and cluster computations
  • Dynamic web interfaces with HTML5 and WebGL
  • Web-based data processing using WebCL
  • Visualization of multidimensional time series
  • Linux Device Drivers and High-speed Data Acquisition
  • Control applications using LabVIEW or Tango environments
  • Digital Electronics & FPGA programming
  • Analog electronics and laboratory instrumentation
  • User Interfaces & Usability

Sample Topics

Parallel Computing

High-speed Data Acquisition

Web Technologies

Open HiWi positions

GUI Development and Visualization in Python with Qt Framework

  • Contact person: Timo Dritschler <timo.dritschler@kit.edu>
  • Official announcement
  • Download announcement
  • Required Skills: Python, Visualization, Usability and design of graphical user interfaces
  • Optional Skills: Qt Framework, C, Basic understanding of hardware and low-level communication
  • Conditions: The position is intended as a long-term engagement with a work time of about 30-40h per month

At the Institute for Data Processing and Electronics we develop a high speed readout system for advanced cryogenic sensors involved in the diagnostic instruments used to study and research beam characteristics of the ANKA Synchrotron at KIT. To aid the Scientists in setting up and using the wideband readout system, a Graphical User Interface was written in Python, using the Qt Framework, that provides means to configure the readout hardware, record and visualize output data. We are currently looking for a HiWi to support us in maintaining and further developing the GUI and optionally improving the data acquisition workflow by writing appropriate Python bindings for the underlying communication library that interfaces with the hardware.

The student will be integrated in the ANKA-TeraHertz and in the electronic groups and is expected to contribute to the current development of the applied software, maintaining and further developing the Graphical User Interface for the readout system.

Administration of the high-performance GPU cluster at IPE

  • Contact person: Suren A. Chilingaryan <csa@suren.me>
  • Official announcement
  • Download announcement
  • Required Skills: Very good knowledge of Linux and the ability to find and solve system problems; scripting languages.
  • Conditions: The position is intended as a long-term engagement with a work time of about 30h per month

To support the development of parallel algorithms, a heterogeneous cluster is operated by IPE. Several generations of parallel accelerators from different HPC vendors are available to the scientists. Due to the heavily heterogeneous configuration and rapid changes of the parallel programming SDKs, the administration of the system is complicated and time consuming.

The student will take care for the administration of the cluster hardware and software. The task includes:

  • System maintenance and upgrades
  • Installation of additional hardware nodes and components
  • Configuration of Infiniband and MPI communication stacks
  • Maintenance of parallel SDKs from AMD, Intel, and NVIDIA
  • Administration of Nagios configuration and scripts
  • Problem diagnostics for software and hardware

Highlighted topics for Internship

Optimizing imaging algorithms for the latest CPU and GPU architectures

  • Contact person: Suren A. Chilingaryan <csa@suren.me>
  • Apply online
  • Download announcement
  • Required Skills: Good knowledge of C programming language, knowledge of OpenCL or/and CUDA is a plus
  • Experience Gained: Image processing in scientific applications, High Performance Computing, Hardware-aware software development, Parallel and GPU programming, Benchmarking and Profiling.

Parallel computing has become increasingly important in the last several years. Standard servers include nowadays up to 64 cores. Modern GPUs are able to execute thousands of floating point operations in parallel and have become a valuable tool in multiple scientific fields that require high computational throughput. It becomes more and more important to parallelize existing algorithms and tune the implementations to the recent hardware architectures. For the optimal performance, it is crucial to also take the details of hardware architectures into account.

The student will join an ongoing projects and will perform optimization of selected image-processing algorithms for recent parallel architectures. Available projects include:

  • advanced image reconstruction and segmentation algorithms done in cooperation with the ANKA synchrotron,
  • digital image tracking algorithms done in cooperation with Institute for Thermal Process Engineering,
  • simulation codes for the international KATRIN and Edelweiss collaborations.

Managing high-throughput scientific electronics with Linux

  • Contact person: Suren A. Chilingaryan <csa@suren.me>
  • Apply online
  • Download announcement
  • Required Skills: Very good knowledge of the C/C++ programming language, acquaintance with POSIX standards, understanding of process synchronization. Prior experience in developing Linux kernel modules is a plus.
  • Linux kernel development, PCIe-based scientific electronics, DMA protocols

Nowadays scientific instrumentation is characterized by increasing data rates and the need for efficient online analysis and monitoring. To address this demands,sophisticated hardware and software capable to stream tens of gigabytes per seconds is required. Additional complexity is added by necessity to synchronize the development of hardware and software components. To support the development of DAQ electronics, we have designed the “Advanced Linux PCI Services” ALPS. The framework provides standard components like register access and DMA protocols across multiple devices, ALPS allows one to rapidly implement software support for newly developed PCI-based electronics and provides extensive support for hardware debugging.

The student will join the ALPS project and will contribute with

  • the implementation of additional DMA protocols,
  • support for new hardware and
  • the implementation of new subsystems that help to control and debug hardware.

Web-based monitoring of large-scale data in scientific experiments

  • Contact person: Suren A. Chilingaryan <csa@suren.me>
  • Apply online
  • Download announcement
  • Required Skills: JavaScript & PHP; knowledge of OpenGL/WebGL is a plus
  • Experience Gained: WebCL/WebGL, Data management in high energy physics experiments, Visualization of scientific data

Huge quantities of information are produced by scientific experiments world wide. Data formats, underlying storage engines, and sampling rates are varying significantly. At the Institute for Data Processing and Electronics we develop a web-based visualization framework which handles multiple types of slow-control data and helps engineers and scientists to inspect device operation and examine the integrity and validity of the measurements. The framework is used in a wide area of applications ranging from fusions experiments, astroparticle physics, to meteorological systems. State-of-the-art web browsers support a rich set of features to construct sophisticated interfaces using web technologies only. With introduction of WebGL it become possible to perform 3D visualization as well. The student is expected to design and implement a new module for real-time monitoring. The main challenge is to visualize multi-dimensional data sets and arrays of sensors mapped to the 3D models.

Highlighted Master topics

Enhancing the quality of tomographic reconstruction by advanced iterative algorithms optimized for parallel architectures

  • Contact person: Suren A. Chilingaryan <csa@suren.me>
  • Apply online
  • Download announcement
  • Required Skills: Very good knowledge of the programming languages C and Python. Good knowledge of linear algebra and computer vision algorithms. Prior experience in parallel programming with CUDA, OpenCL, MPI, SIMD, OpenMP or Pthreads is a plus.
  • Experience Gained: Synchrotron imaging, compressive sensing theory, iterative image reconstruction, non-linear optimization, parallel programming, GPU programming.

X-ray microtomography is a powerful tool to analyze and understand internal otherwise invisible mechanisms of small animals. Resolution and duration of experiments with living objects are currently limited by radiation damage. The compressed sensing theory has demonstrated the feasibility to recover signals from the under sampled data and, hence, opens up the possibility to reduce radiation. These reconstruction techniques are computationally very demanding and have therefore been not used for synchrotron experiments up to now.

The master thesis will be performed within an international project that aims to develop a novel instrumentation for ultrafast imaging at synchrotron light sources. We expect the student to get familiar with the latest developments in the field of compressive sensing theory and its application to tomographic image reconstruction. Advanced methods described in literature have to be evaluated using realistic sample datasets. Promising algorithms should to be implemented. To take advantage of the latest high-performance computing hardware, the selected algorithms have to be adapted for better mapping to massively parallel architectures. The implementation in OpenCL will be optimized for latest GPU architectures from AMD and NVIDIA.

Segmentation of 4D X-ray Microtomography Image Sequences

  • Contact person: Suren A. Chilingaryan <csa@suren.me>
  • Apply online
  • Download announcement
  • Required Skills: Strong C and Python knowledge, numerical algorithms in image processing. Experience with parallel programming is a plus.
  • Experience Gained: Synchrotron Imaging, 4D Tomography, Image Segmentation, Optical Flow, Parallel programming, GPU programming.

Recent developments in X-ray microtomography (SR-μCT) facilitate the investigation of internal morphology and structural changes in small living organisms in 4D (3D + time). In order to analyze internal dynamics existing instrumentation records hundreds of 3D volumes with high-resolution within a few minutes. The first step in data analysis is segmented of the functional units. Currently this is a manual task requiring months of work of highly skilled biologists.

The aim of this work is to develop algorithms for semi-automatic segmentation of 4D tomographic volumes and to implement them. One possible solution is to use the optical-flow in sequences of 3D volumes and use it to map manual segmentations of the selected volumes to consecutive frames. The algorithms have to be optimized for the latest parallel computing architectures. The work is embedded in national and international collaborations for high data-rate processing and performed within an interdisciplinary team of computer scientists, synchrotron physicists, and biologists.

High-speed tracking of fluorescent nanoparticles in 3D and with subnanometer precision using Parallel Accelerators

  • Contact person: Suren A. Chilingaryan <csa@suren.me>
  • Download announcement
  • Required Skills: Good knowledge of C/C++ programming language. Prior knowledge of parallel programming models is a plus.
  • Experience Gained: Parallel programming, GPU programming, Image processing

In the field of organic and printed electronics (e. g. polymer solar cells, OLEDs or Li-Ion batteries) there is a growing demand for thin functional layers with highly homogeneous surface topology. If these layers are coated from the liquid phase, the coating and drying steps affect the surface quality. During the drying process, Marangoni convection might occur, leading to surface inhomogeneities. To get a better understanding of convection process we apply μPIV using fluorescent nanoparticles to resolve the respective flow field in the liquid phase. In case of a 3D a multifocal system is used to acquire images in different layers at the same time.

During experiment a 4 GB of data is recorded every second by 5 high-speed cameras. It is a challenge to analyze such amount of data interactively and extract particle trajectories. At a first step, we expect student to parallelize the data evaluation codes and optimize for latest GPU architectures from AMD and NVIDIA. On the second stage, the codes should be modified to run in GPU- cluster environment.

Optimizing high speed data transfer and processing of DAQ systems with NVIDIAs GPUDirect

  • Contact person: Suren A. Chilingaryan <csa@suren.me>
  • Download announcement
  • Required Skills: Good knowledge of C/C++ programming language as well es Linux kernel and driver development. Knowledge of parallel programming models is a plus.
  • Experience Gained: Parallel programming, GPU programming, RDMA data transfer mechanisms.

Recent data acquisition systems are characterized by increasing data rates and the need for efficient online analysis and monitoring. Conventional CPUs are no longer able to handle the increased computational demands of scientific processes. In the field of high performance computing, GPUs with their modern and simple methods to utilize parallel processing make for an easily accessible alternative to classical CPU computing. Unfortunately, the gap between computational capabilities of GPU systems and throughput of system memory has grown tremendously and becomes the main factor limiting performance. This is especially harmful for PCI-express (PCIe) based data acquisition systems using multiple GPU cards for data processing. Using standard approaches to handle PCIe devices, the data will be copied into the system memory, sometimes multiple times, at each stage of data processing pipeline. For instance, the standard pipeline consisting of 3 stages (data readout from the frame-grabber card, preprocessing on GPU, and dispatch to the remote server over network or Infiniband interface) will include 4 copies in system memory at least and usually more depending on the hardware and software configuration.

Recently NVIDIA revealed the GPUDirect for RDMA technology to relieve the load on the system memory. The GPUDirect/RDMA technology enables point to point transfers between PCIe devices and NVIDIA GPU on the same bus bypassing the system memory entirely. The alternative technology is called GPUDirect for Video and developed by NVIDIA specially for high-speed frame grabbers. For his Diploma work, the student is supposed to:

  • Compare GPUDirect/RDMA and GPUDirect/Video technologies ,
  • Provide GPUDirect-enabled drivers for our FPGA-based data acquisition platform (FDAP),
  • Investigate if similar approach could be used to transfer data between FDAP and Infiniband adapters directly ,
  • Evaluate the technology in terms of latency and throughput compared to the existing drivers,
  • Check if and how the GPUDirect technology can be used with UFO parallel processing framework to split load across the nodes in GPU cluster.

The performance benefit of technology should be demonstrated for realistic scenarios like ultra high-speed X-ray tomography.

A scalable storage platform for large archives of multi-dimensional meteorological data

To advance the understanding of turbulence and convection in the atmosphere, KIT designed a mobile setup, KITCube, consisting of multiple meteorological instruments surveying an atmospheric volume of about 10 km side length. These instruments continuously produce large amounts of multi-dimensional time series data, capturing different aspects of weather situations in a variety of formats. To understand this phenomena, it is crucial to correlate measurements from different instruments with a high spatial and temporal accuracy. Hence, an advance data management and preservation system is required. Traditional relational databases have serious limitations in handling multi-dimensional data efficiently but the newly emerged family of NoSQL databases can provide a better approach by its flexible data model, low latency, simple data query and scalability.

You are expected to evaluate different database engines and find an optimal solution to handle the data produced by KITCube, be it with NoSQL database or as a hybrid system of relational and non-relational database. You should identify the standard data access patterns and benchmark the considered storage engines in each selected scenario. The reliability and scalability in the clustered environment have to be taken into account as well. The goal is to create a data storage system for KITCube to handle large archives of meteorology data. This work will be carried out in close collaboration of the IPE data management group with the IMK meteorologists.

Web-Platform for Online Monitoring of Large Scientific Experiments

  • Contact person: Chuan Miao <chuan.miao@kit.edu>
  • Apply online
  • Download announcement
  • Required Skills: The student is expected to be enthusiastic about web application development and command good knowledge of HTML5 and JavaScript?. Experiences in popular JavaScript? frameworks are welcome but not necessary. Experiences in mobile applications and/or WebCL/WebGL are a plus.
  • Experience Gained: Web application development; Visualization of scientific data; Data management for large scientific facilities

In KIT, many scientific and engineering facilities demand a fast, configurable and yet versatile status display. Usually, large amount of data are collected from various devices and sensors at frequent rates. To help scientists and engineers in supervising the experiments, a status display provides a quick overview of device operation and the current measurements.

The student is expected to design and implement a web-based platform providing all necessary instruments to quickly build new status displays for a variety of experiments. It should provide rich data visualization capabilities, clean configuration interface, and run across major platforms and browsers. One of the challenges is to automatically adapt to the available display resolution supporting client hardware scaling from small mobile devices to the large visualization stations. Fast and interactive visualization of 2D and 3D data is another emphasis of the project.

Attachments (15)