Last year I made a presentation to Unite LA, the dotnetos conference in Warsaw and to the dotnext conference in Moscow of the burst compiler that we have been working on for the past two years at Unity

In a nutshell:

The burst compiler is a technology aimed at unlocking performance for a subset of C# code beyond what C++ has been usually able to do, by translating .NET IL code into highly efficient native code.

You can consult the slides right here:

Cheers!

Comments

dwarfland posted at Sun, 07 Apr 2019 15:55:21 GMT

Interesting project! I was wondering if you have had a look at our c# compiler, https://elementscompiler.com. There might be some overlap there, as we already compile c# to native (and other non-il targets); maybe we should talk and possibly cooperate. (Orthogonal to that, it would also be interesting to look at integrating our other languages in their CLR flavor more deeply with Unity, as well). Let me know what you think!

nxrighthere posted at Mon, 08 Apr 2019 13:23:26 GMT

Great job Alex, very excited about this feature:
v
Most of my stuff utilizes interop, if the Burst will be able to reduce its cost, it would be just fantastic. My community screaming for this feature.

xoofx posted at Mon, 08 Apr 2019 16:02:59 GMT

very excited about this feature:

I forgot to update the slides, as [DllImport] is now supported inside burst jobs

nxrighthere posted at Mon, 08 Apr 2019 17:20:07 GMT

@xoofx That's great! We are going to check it out very soon, thanks!

xoofx posted at Mon, 08 Apr 2019 21:04:47 GMT

Beware though that some platforms (like iOS) don't allow loading dynamic libraries

nxrighthere posted at Tue, 09 Apr 2019 03:36:54 GMT

Yup, they work only in the editor if you target iOS, static libraries are required for builds, but luckily most of the projects that I'm working on is primarily for desktop platforms. (On top of this I'm not a fan to work with constrained environments 😸).

xoofx posted at Tue, 28 May 2019 10:56:37 GMT

Will it be open source and available here on github just like we can use CoreRT today ?

I would like but It is out of my sole decision. But so far, it looks unlikely though...

nxrighthere posted at Sun, 14 Jul 2019 13:57:05 GMT

@xoofx Thanks Alex, [DllImport] works great. I'm using native libraries with Burst without any problems, however, there's only one problem with the Unity itself which described in this thread. It prevents me from mixing UnityEngine API with native code without involving Mono. 😢

jamesford42 posted at Thu, 12 Sep 2024 18:39:03 GMT

On mobile these slides are not visible, consider having some sort of link to them as a nonembedded document. Or just a better embedding. (This is feedback about the blog which linked here for its comments)