Re: Advice on modifying Lavapipe to isolate JIT compilation in separate process
Dave Airlie <[email protected]>
| Newsgroups | gmane.comp.video.mesa3d.devel |
|---|---|
| Message-ID | <CAPM=9tzuM3YzPm=NMcH+EfDrL9bA3MMam3YVXSYMw9aZQ=SYtQ@mail.gmail.com> |
On Thu, 27 Apr 2023 at 15:18, Josh Gargus <[email protected]> wrote: > > Thanks for your advice! I hadn't looked at Venus, but that seems like a very promising place to start. > > The other approach feels more approachable now too; it feels like there are less "unknown unknowns", although there are plenty of known unknowns to investigate (address independence was one that was already bugging be before I wrote to this list). I think it shouldn't be too horrible to work out, another option might be to abuse the cache somehow, but I think that still needs writable + executable which probably doesn't help, but stuff should be address independent as I do write x86 asm programs to the cache and read them back out, only relocating around the global symbols. > > It seems like Venus is the more straightforward approach, so I'm inclined to just go with it. However, it seems like there would be a performance hit compared to only doing JIT compilation in a separate process. Do you have a rough sense of the performance hit of serializing everything over Venus? The answer will depend on the workload, I know. Yeah I think you'll definitely see a large perf hit than just moving compilation out to a separate process, I'm not sure of the raw venus overhead numbers here, someone else might have more information available. Dave.