13–15 Nov 2023
America/New_York timezone

Emulating NT synchronization primitives in Wine

13 Nov 2023, 14:30
45m
"James River Salon D" (Omni Richmond Hotel)

"James River Salon D"

Omni Richmond Hotel

183
LPC Refereed Track LPC Refereed Track

Speaker

Zeb Figura (CodeWeavers, Inc)

Description

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/shortlog/refs/heads/ntsync4

https://repo.or.cz/wine/zf.git/shortlog/refs/heads/ntsync4

Primary author

Zeb Figura (CodeWeavers, Inc)

Presentation materials

Diamond Sponsors
Platinum Sponsor
Gold Sponsors
Silver Sponsors
Catchbox Sponsor
Livestream Sponsors
T-Shirt Sponsor
Conference Services Provided by