> * The interpreter should have a fast profiling mode (hashed counting of loop backedges) and a slower recording mode (for every instruction call the recorder first, then execute the instruction). It already does…
You could certainly do that, though the interface between statically JIT'd code and trace JIT'd code would get hairy. Plus, as I said above, there's simply not a whole lot of trace specialization going on in the first…
The tracing overheads are pretty huge. Running with tracing but without compilation takes 107s.
Also an example of how to implement a direct-threaded interpreter. Some performance data from a Brainfuck mandelbrot benchmark. Interpreter: 37.787s Tracing JIT: 11.716s Static Compiler: 2.402s The tracing JIT loses out…
Hey folks, I'm the actual author of this. I actually work on LLVM-proper during my day job. This was just a fun exercise to demonstrate that it was possible. I also have plans to write a tutorial based on it.
Hey, I'm the actual author of this. I actually work on LLVM-proper during my day job. This was just a fun exercise to demonstrate that it was possible. I also have plans to write a tutorial based on it.
> Apple employs a few (more than 1?) LLVM people, but it's hardly an Apple project by any means. They employ around two dozen LLVM developers, comprising half to two-thirds of the regular committers.
> * The interpreter should have a fast profiling mode (hashed counting of loop backedges) and a slower recording mode (for every instruction call the recorder first, then execute the instruction). It already does…
You could certainly do that, though the interface between statically JIT'd code and trace JIT'd code would get hairy. Plus, as I said above, there's simply not a whole lot of trace specialization going on in the first…
The tracing overheads are pretty huge. Running with tracing but without compilation takes 107s.
Also an example of how to implement a direct-threaded interpreter. Some performance data from a Brainfuck mandelbrot benchmark. Interpreter: 37.787s Tracing JIT: 11.716s Static Compiler: 2.402s The tracing JIT loses out…
Hey folks, I'm the actual author of this. I actually work on LLVM-proper during my day job. This was just a fun exercise to demonstrate that it was possible. I also have plans to write a tutorial based on it.
Hey, I'm the actual author of this. I actually work on LLVM-proper during my day job. This was just a fun exercise to demonstrate that it was possible. I also have plans to write a tutorial based on it.
> Apple employs a few (more than 1?) LLVM people, but it's hardly an Apple project by any means. They employ around two dozen LLVM developers, comprising half to two-thirds of the regular committers.