This page says that coarse synchronization is used to prevent concurrent thread device access.
http://msdn.microsoft.com/en-us/library/windows/desktop/ff476130(v=vs.85).aspx
Can I design a multithreaded resource loader with only multithreading in mind and expect that the cards/drivers that don't support it will serialize the resource creation? I can't be sure, but it seems like I have heard stories of this causing crashes on drivers without support for multithreaded resource creation.
Can anyone confirm this? I don't have a system that I can try it out on!