In order to emulate Windows NT kernel synchronization primitives, Wine currently uses a single server process, which fields operations on those primitives via RPC from client processes.
This has historically worked well, but has turned out to be a severe performance bottleneck in heavily multithreaded applications such as modern games.
In this talk, I propose to emulate the complexity of NT synchronization primitives in a kernel driver, which according to proof-of-concept tests can improve performance up to twice the speed of current Wine.
Proof-of-concept trees are available here:
https://repo.or.cz/linux/zf.git/short...
https://repo.or.cz/wine/zf.git/shortl...