Julia is similar to Python with comparable speed and functionality to programming in C but provides a more consistent set of libraries and interdependencies and so is increasing in popularity alongside languages such as Rust.
Spectrum has written a software development kit (SDK) for Julia that adds programming support for scientific and numerical computing for digitizers, generators and digital I/O products in AI, medicine and robotics.
A key feature of Julia is that it has been specifically designed for high-performance applications that require fast processing of data such as machine learning and scientific computing. For example, libraries include optimized source C and Fortran code for linear algebra, random number generation, signal processing and even string processing. Using Julia also supports parallelism as developers can call the desired script with a given number of cores and parallelize directly from a command line. It is possible to send tasks to different threads, or run loops in parallel, directly from code.
Combining Julia with the Spectrum Instrumentation test systems also helps to speed up processing and reduce latency. The Spectrum products offer ultrafast data transfers with a variety of different acquisition and generation modes (such as single, multiple, gated and FIFO) which helps to optimize testing throughputs. This is one of the reasons why Spectrum products can be found working in applications involving autonomous vehicles, robotics, drones, imaging devices, medical appliances and control systems. Their general-purpose design means they can also be used with almost any sensors from accelerometers and transducers to photo diodes that are commonly used in AI applications.
Researchers at the Leibniz Institute for Atmospheric Physics in Germany are using Julia for LIDAR (Light Detection and Ranging) laser systems to measure temperature and wind speed in the atmosphere.
“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,