Programming and optimising processors

FPGA

Programmable processor: Intel's Stratix ist one of these Fielfd Programmable Gate Arrays, which can be reconfigurated. Photo: Intel

The doctoral thesis in three times 60 or in a total of 180 seconds: Pascal Jungblut, who is currently doing his doctorate at the Chair of Communication System and System Programming at Ludwig-Maximilians-Universität (LMU) in Munich, brings only one slide for his short talk at the ceremony marking the 60th anniversary of the Leibniz Supercomputing Centre (LRZ). It shows a circuit board with a field programmable gate array (FPGA) and two colourful graphics. "FPGAs are more flexible than known processors," the young computer scientist explains. "These are chips with circuits you can configure and change again and again, even if they are already built into a computer or device." The programmable components are the focus of his research. So far, they are usually only partially reconfigured, for example to manage when a computer carries out which tasks, in which order and at what speed. For this purpose, the first graphic on the presentation slide shows colourful boxes of different sizes neatly sorted next to and below each other, like on a timetable, each of which stands for a task. And with an FPGA, these can be executed sequentially or, in some cases, simultaneously next to each other.

Further accelerating supercomputing

Pascal, however, is concerned with the question: Why have only parts of an FPGA been reprogrammed so far, why not the entire chip? "FPGAs are complex to programme, programming and compiling often take days or even weeks. That's why it's done in research, but otherwise only parts of it are reconfigured," he explains. "But what happens if you reconfigure the entire chip area – would that make it worse to manage and control the tasks or could it actually even increase efficiency?" These are good questions. The answers are relevant in areas where machines are networked with computers, such as Internet of Things (IoT) technology. They could also help improve the design of processors in general and in the further specialisation of FPGA. They are also interesting for high-performance computing (HPC) and for the design of future supercomputers. "There are still no FPGAs installed in the SuperMUC-NG," says Pascal Jungblut, "but that may change, FPGAs today also serve as accelerators and should increase computing power.

Currently, computing centres around the world are busy preparing supercomputers for the exascale level – to perform a trillion (1018) and more computing operations per second. In addition to graphics processing units (GPUs), hopes are also pinned on FPGAs, among other things. These processors are still comparatively new and are mostly used where fast processing of signals as well as flexible, changeable circuits are required to improve implemented functions without having to touch the hardware. If these components could also be adapted to special applications or algorithms, supercomputing would become even more efficient. "Control and optimisation often take place on a larger scale in HPC," says Pascal. "For example, if a simulation is to be run on 32 compute cores, the algorithm must also define which operations take place where. I do this on one core, and that is an FPGA." Taking this step further: the flexible chips could be adapted to specific tasks (and then simplify the development of algorithms); they can also be optimised as a whole in such a way that a computer processes several tasks that fit together in parallel – on the second graphic of the presentation slide, the task colours therefore blur into a rainbow. Both approaches increase efficiency and computing power.

LRZ60

Pascal at his lecture with the shortest presentation

But these processors have another advantage: with FPGA, bridges can be built between different processor technologies. For example, they can be configured to take on the tasks of a familiar processor (CPU) as well as those of a GPU specialised in processing graphical data. At the LRZ, tests are currently even being conducted to see whether FPGA can bring together classical with quantum computing. "FPGA are still a niche product and therefore not cheap. They are rarely used," observes the Munich doctoral student. "But that could also be a typical chicken-and-egg problem, if only a few FPGA are available, they are naturally used less often."

To find answers to his fundamental questions about the holistic programmability of FPGA, the computer scientist is experimenting with the offerings of various manufacturers, including those that contain the Bavarian Energy, Architecture and Software Testbed (BEAST), the test environment at the LRZ, filled with new types of computer technology. For his doctoral thesis, he has also developed an abstraction model to compare different configuration concepts and their effect on computing power or energy requirements. The goal is to better define the distribution of tasks between processors and FPGAs and to develop algorithms for the configuration of FPGAs or to simplify their partial reconfiguration: "I hope," says Pascal, "that chip manufacturers and thus indirectly also users will benefit from my work one day or that the LRZ will benefit when it purchases new computers."

Research to improve everyday life

Bringing research results into everyday life and to the people, combining theory with practice and simplifying everyday tasks – these were the reasons to study computer science: "I've liked working with computers since I was a child," says Pascal. Encouraged by his technophile father and his grandfather, who as an engineer was always curious about information technology, he taught himself the first tricks of programming at the Commodore 64 of his mother, set up websites and developed his first programmes. For his civilian service, the down-to-earth East-Westphalian was lured to Munich from the small town of Blomberg near Detmold to do computer tasks: "That was an unusual position," he recalls. "We looked after the PCs of a radiology ward and also wrote a tool for the administration for X-rays and other tasks."

Although salty liquorice, his favourite sweet, is difficult, if not impossible, to obtain in Bavaria, the East-Westphalian stayed at the Isar river after his civilian service and enrolled at the Technical University of Munich (TUM) in 2008 to study electrical engineering: "Computer science seemed too math-heavy to me, I was quite good at mathematics but didn't have the confidence to continue studying it.” Two semesters later, he switched to the LMU and to computer science: Electrical engineering also required so many numbers, equations and formulae that his confidence in his own computing skills had grown. At the same time, he continued programming – professionally and for the first time for a living. Agencies, IT service providers and companies from Berlin, Hamburg, Düsseldorf and Munich let him optimise e-commerce systems, adapt software and online functionalities to their needs, develop practical tools for business. This prolonged his studies, but at the same time money flowed into his bank account and professional knowledge entered his head: "It was a cool feeling to be financially self-sufficient," he says, grinning broadly. "Of course, the experience was also valuable."

His programming skills also benefit his doctoral thesis, and patience and accuracy are also required when testing and evaluating processors. Pascal Jungblut is not one to get bogged down. Straightforward developments are his thing. He never spent a semester abroad or at another university. Each step fits into the next, his training is very comprehensive, curiosity drives him on. For his Bachelor's degree, he explores virtual networks and their integration into real networks, for his Master's degree he analyses the runtime behaviour of software and other programmes. Now it's about optimising job distribution on the programmable chips: "I came across the topic during an event at the LRZ, chip manufacturers presented a comparable technology and found out that FPGA are rarely used. I wanted to take a closer look at that." Nevertheless, the young scientist is well networked: Pascal Jungblut belongs to the Munich Network Management Team, a group that unites researchers from all Munich universities and colleges and deals with information technologies.

Practical Answers for Computing

Since he joined the chair as a doctoral student, Pascal has been explaining computer architectures to students, supervising Bachelor's and Master's theses, but no longer solving company problems. "Pascal Jungblut supports me in my lecture 'Computer Networks and Distributed Systems', Prof. Dr. Dieter Kranzlmüller says, the head of the LMU Chair of Communication Systems and System Programming and of the LRZ, also the PhD supervisor. "I appreciate his immense technical know-how, his organisational talent and his friendly manner. He often helps me with content as well." Big words are not Pascal’s thing, nor are big gestures: his hands only make brief movements during the lecture, he speaks in a factual and clear manner. He describes himself as quiet and introverted. Conversations among friends are more important to him than loud parties, he likes to row, ride a racing bike or relax with hard science-fiction. These are books and films like "The Martian", in which future research and technology are described as accurately, comprehensibly and scientifically coherent as possible.

Colleagues emphasise his pragmatism, his "dry humour and the fact that he is hardly ever ruffled by anything: Pascal can make fun of the world so wonderfully, we laugh together quite a lot," says Sophia Grunder-Culemann, another doctoral student at the LMU Department of Communication Systems and System programming who is working on cryptography in her thesis. "He's also totally pragmatic and helpful, a good listener and someone who gives constructive advice and stays calm in really any situation." One who is present but never interferes because he can take a back seat. His research work is almost finished, still needs to be compiled and formulated. And then? Science, product development, a conference that finally focuses on user-friendliness and comprehensibility – anything would be possible. The main thing is that questions continue to arise for which practical answers are sought. "I have always enjoyed dealing with problems for which there was no solution," says the expert for processors. "And in general, I want to increase the usefulness of computers, they should provide good solutions to make life or work easier." It is quite possible that such solutions are also in the FPGA. (vs)

Pascal

Pascal Jungbluth, Member of the Munich Network Management Team at LMU
and researcher at the Chair of Communication System and System Programming

More young researchers and specialists you should know:

Ivana Jovanovic-Buha, TUM: Computational Science

Elizabeth Mayer, LRZ: Media and Computer Science

Amir Raoofy, TUM: Compouter Science and Supercomputing (HPC)

Mohamad Hayek, LRZ: Computer Science and Datatransfer

Sophia Grundner-Culemann, LMU, cryptography

Bengisu Elis, TUM, supercomputing and programming models

Daniëlle Schuman, LMU, quantum computing