The fight against the Covid-19 does not only take place in medical laboratories, but also in computing. Handling the huge amounts of data for vaccine development requires advanced tools: ‘Julia’, a relatively new software language, has surged in popularity. It delivers comparable speed and functionality to programming in C while also allowing scientific and numerical computing. As a manufacturer of advanced scientific test and measurement equipment, Spectrum Instrumentation has announced that it has created a Software Development Kit (SDK) for programming its full range of over 200 different digitisers, generators and digital I/O products using Julia.
A key feature of Julia is that it has been specifically designed for high-performance applications that require fast processing of data, like machine learning and scientific computing. For example, libraries include optimised source C and Fortran code for linear algebra, random number generation, signal processing and even string processing.
Furthermore, Julia offers parallelism. Call the desired script with a given number of cores and parallelise directly from a command line. Additionally, it is possible to send tasks to different threads, or run loops in parallel, directly from code. The result is a language that offers similar speeds to C, while allowing coding that is more comparable to Python or MATLAB.
Dr. Josef Höffner from the Leibniz Institute for Atmospheric Physics in Germany develops high performance LIDAR (Light Detection and Ranging) systems to measure temperature and wind speed in the atmosphere. Now as a Julia user, he said, “We perform complex data acquisition and control, with 30 high speed signals, using three Spectrum Instrumentation cards, operating in closed loop operation 24/7. Our laser makes 500 pulses per second and we have to calculate, in real time, what has to happen next and adjust the controls. For that we have to get the result quickly. That means fast electronics, fast evaluation and then fast control of the hardware. We have found Julia offers a unique combination of speed and dynamic programming, simplifying the software development.”