"There's a simple solution to that: Use OpenCL/OpenGL. DX works much better on windows, and it needs emulation on linux. But OpenCL/GL work just as well on either OS"
OpenGL/CL are currently worse than DX11 for taking advantage of some new features of modern hardware. OpenGL is targeted towards professional 3D design and not low latency 3D gaming.
The best thing going for OpenGL is its cross platform support and being stable.
The worse thing going for OpenGL is it being locked down to standards and not being flexible enough to take advantage of the new changes to GPUs.
They have no near future plans to re-work OpenGL to take advantage of multi-core rendering. DX11 was re-worked to support this, but it required a re-write.
Don't get me wrong, OpenGL is great for what it does, but it's greatness is also its problem.
1) Win7 was re-written to support user mode video drivers which reduces kernel context switching and allows recovery of the OS after a driver crash.
2) DX11 allows rendering calls to be mixed with DirectCompute(like OpenCL), and true multi-threading. OpenGL supports driver level multi-threading, but not API call multi-threading.
These two features alone would require a re-write of both the Linux graphics driver model and a re-write of OpenGL/CL API, both of which is contrary to the stability of the platform.
When you get too big, you lose your agility.
I've been reading up on the devel blogs of the new BattleField3, which is targeted at DX11. In a nutshell, the developers are saying DX11 opens up a whole new way of rendering which is faster, scales with cores, and is more flexible, but requires a new way of programming/designing.
Until Linux creates a new driver model and OpenGL/CL becomes more flexible, the platform will be lagging behind video games in performance and features.