RyuJIT FAQ is on the .NET Blog

Go forth and read it to see if it answers your questions: http://blogs.msdn.com/b/dotnet/archive/2013/11/18/ryujit-net-jit-compiler-ctp1-faq.aspx

One thing that’s buried in the FAQ: we fixed bugs that people reported, so if you uninstall RyuJIT CTP1, re-download it and reinstall it, you’ll get an ever so slightly less buggy version!

If the FAQ doesn’t answer your questions, I’ll answer other questions over here. Fewer people read this one, so I’ll get myself into less trouble than my previous Answers to Questions 🙂



Comments (6)

  1. Mike Danes says:

    Well, here's a question:

    The FAQ says that RyuJIT can fallback to the old JIT compiler if it encounters something it doesn't support. Now, when I look at the generated code in the disassembly window of VS, how can I be sure that the code was generated by RyuJIT? I already turned off edit & continue just in case.

    I'm curious to see if some of the optimization issues that I previously reported against the x86 JIT are still present in RyuJIT 🙂

  2. John Mitas says:

    I would love to know why NGEN compilation via RyuJIT was not enabled for the public 🙂  …

    Also does that mean you may actually be doing NGEN work via RyuJIT but privately, other internal teams etc ?!

  3. Kevin Frei says:

    @Mike Danes,

    There's not really an easy way to tell by looking at the disassembly if you've got RyuJIT or not. I believe we might save & restore registers in a different order, so you could check that. As far as general optimization issues, we're still working on it (and will continue to do so for some time). You'll have a trivial time finding optimization concerns with the current CTP. Future releases should have significantly better code quality than the current one.

  4. Kevin Frei says:

    @John Mitas

    We didn't enable NGen compilation using RyuJIT because NGen leaves "side effects" laying around: if you produced native images using RyuJIT, then even after you disabled it those native images would still be lying around and usable. We explicitly did NOT want to have to burden our product support folks with questions like "have you, or anyone you loved, ever used RyuJIT CTP1 to NGen any images?" or "where were you the night of October 23rd, when RyuJIT decided to re-NGen you application due to Patch Tuesday?" etc… So we just didn't add NGen support for the AltJit capability.

    We are actually doing NGen work via RyuJIT internally (have been for several months, now), and when RyuJIT is fully ready for prime time, it will be the NGen compiler, instead of JIT64.

  5. Craig Johnson says:

    Awesome work.

  6. What is the diference between ryujit and roselyn ? says:

    What is the diference between ryujit and roselyn ?