RyuJIT: The New 64-bit JIT Compiler For .NET 2015

Microsoft works day and night to bring forth the best in every product and technology that they have to offer for their worldwide consumer market. Such effort and a continuous evolving process is especially seen within the .NET team of Microsoft. Taking up new challenges every day, the team is on a continuous road to make the .NET environment robust and more efficient by the day.

The .NET team continued to work persistently to come up with the new Just-In-Time (JIT) compile and RyuJIT is their new next-generation compiler for the whole .NET 2015 framework including .NET Core.

net

32-bit and 64-bit

For the longest possible time and since I have gotten aware of my surroundings in the environment of technology, 32-bit x86 has always been in use. It is one robust computer architecture but when compared with 64-bit, the 32-bit pointer lacks the capability of addressing RAM over 4GB, unlike the latter, which can essentially address unlimited amounts of RAM. One must remember that 64-bit has not proven to be the fastest in every aspect when compared to 32-bit (for example, the 64-bit JIT compiler in .NET allows for faster execution but it’s not a fast program itself), but the world is moving towards it at a strong and steady pace.

Originally, the 64-bit JIT was primarily used for server code, differing from .NET x86 JIT whose purpose was make start up faster through quick production of code. The current .NET 64-bit JIT is not always fast in compiling code and you might need to rely upon other sources such as NGen or background JIT to achieve your goal for a fast program start up.


The new 64-bit JIT Compiler for .NET

.NET team has tirelessly worked to unveil to the world the new, next-generation x64 compiler codenamed RyuJIT. The name itself has an interesting history to it. The majority of compiler developers and most of the CS students have come across a recognized compiler book commonly referred to as The Dragon Book. In the Japanese language Ryu means “dragon” and so RyuJIT is the “dragon JIT”.

The new JIT contributes up to a 30 percent faster start up, is twice as fast and manages to still produce an efficient great code that runs steady throughout the long run of a server process.Adding more to the amazing features of RyuJIT, it’s based off of the same codebase as x86 JIT which means that .NET programs will be more consistent between architectures – in simpler terms will provide bug-for-bug compatibility. Moreover, Microsoft has finally added SIMD (Single Instruction, Multiple Data) support via RyuJIT. It means the usage goes from physics engines in games and scientific research, to financial applications performing complex calculations of stocks and bonds.

Summary

RyuJIT is currently available as a Community Technology Preview (CTP) and CTP3 is now available to the developer audience worldwide in their non-production environment. With such continuous developments, it is not an exaggeration to say that this is just the beginning – a beginning to a revolutionary era is the field of technology. Keep following news and updates on RyuJIT to be a witness of it becoming the One True JIT CompilerTM.

Read more articles on .NET Core: