lukego / blog

Luke Gorrie's blog
565 stars 11 forks source link

Snabb, RaptorJIT, and Studio #19

Open lukego opened 6 years ago

lukego commented 6 years ago

I have been working as an independent open source professional (Snabb Solutions) for over five years now, and I really love it.

This has been a great adventure since the very beginning (Snabb, my lab) and it is improving all the time as more interesting people, problems, and projects connect with Snabb. (It is great to be starting a movement with you, Snabb hackers!)

So: Starting today I am expanding to work on three (!) related projects: Snabb, RaptorJIT, and Studio.

Snabb, as you may already know, is a high-performance network dataplane. You use Snabb to build network equipment like routers, firewalls, and VPNs. Snabb has a great community and a robust distributed development model. It's great stuff, you should check out Andy Wingo's great talk and article about the project.

RaptorJIT is a fork of LuaJIT. LuaJIT is awesome but there is so much more to do. Snabb itself desperately wants much better profiling support, more predictable JIT heuristics, protection from obscure bad cases, more transparent trace compilation, and most of all a vibrant upstream community to share and cooperate with. LuaJIT is not moving in these directions: Hence RaptorJIT.

Studio is a graphical framework for building debugging tools. You extend Studio to import your messy data (log files, profiler data, coredumps, whatever), convert everything into a convenient format, and then interactively browse high-level information to understand what the fudge is going on. The frontend is Pharo and the backend is Nix so the sky is the limit. Check out a screenshot of Studio browsing RaptorJIT profiler data cross-referenced with generated JIT code.

There is a lot of hacking to do over the coming years!

Snabb is already up and running but RaptorJIT and Studio need to get into the air. If these new projects are up your alley then please get in touch. I am interested in hearing friendly words of encouragement, meeting hackers to work together with, and connecting with clients who will pay for development/support/training services that they need. Drop me a line on luke@snabb.co or on Github!

hannibalhuang commented 6 years ago

Hi Luke , thanks for this great post ! One minor question, i didn't see the license file for RapidJIT ?

lukego commented 6 years ago

Thanks @hannibalhuang. The licensing terms are in the files COPYING and COPYRIGHT but I should display them more prominently. TLDR; Apache license. See also raptorjit/raptorjit#3.