How to force D3D mode on intel cards?

Hi Dmitri,

I was trying to google for a way to force d3d mode on intel cards and came across this:

[quote]There is a way to ignore the results of the hw checks
and force the use of the pipeline, just not via the -D
property but via special env. variable.

We’d like not to expose this unless really necessary
because if people start just setting a property
left and right (as they can or will be able to
with the webstart or applet) - their users may
pay for it, because on some systems the drivers
can bluescreen the system.
[/quote]
http://forums.java.net/jive/thread.jspa?threadID=31500

I was wondering if you could send me a personal message with the env variable just for my own testing?

If you can’t, then I was wondering if there is much of a performance boost with those cards using the d3d pipeline?

Thanks a lot :slight_smile:
Keith

Is it all intel cards that have it disabled or just the old drivers/old cards?

It’s not a huge secret - the source is available, after all, so anyone with a bit of time can figure it out:
http://hg.openjdk.java.net/jdk7/2d/jdk/file/b4450e6de8a3/src/windows/native/sun/java2d/d3d/D3DPipelineManager.cpp

There’s an env variable which controls whether we disable the pipeline if hw/os check fails: J2D_D3D_NO_HWCHECK . If set, the check is ignored. You’re on your own if you use it. You may also need to set -Dsun.java2d.d3d=true to “force” the d3d pipeline.

Potential performance boost is very much dependent on specific application, hw and driver version. Don’t expect much, intel hw is not very good (and drivers aren’t great either). Don’t even try unless you have something like X3100 or better, with latest drivers.

Dmitri

All of them. We may reconsider this as their drivers gotten better, but performance is still not great, especially for stuff like LCD AA text which is rendered with pixel shader. If we were to enable it, it would only be for the latest hw.

Thanks Dmitri, that’s great 8)

It’s such a pity that most computers have intel graphics cards.

Well I had x3100 with latest drivers it played games fine, it played COD 4 ok. There drivers are getting better.

I now have a x4500HD, which I had no trouble with. Plays COD4 and Left 4 Dead all fine. I know I’m comparing with games, which isn’t totally right. But I hope you do look into the newer hardware at least.

Could you try enabling the pipeline on yours and play around with SwingSet2 or something? Text performance would be most interesting (with LCD AA).

How would I force it using SwingSet2?


#> set J2D_TRACE_LEVEL=4
#> set J2D_D3D_NO_HWCHECK=true
#> java -Dsun.java2d.d3d=true -jar SwingSet2.jar

Worked all good. Infact better, colour chooser demo no longer flickered.

The drivers I’m using are the latest Windows 7 drivers (8.15.10.1713).

Ok, thanks, good to know.

Dmitri

Does that mean it will be turned on by default in a up coming update if its stable enough?

It will be considered, no promises.

Great. Then I hope everything goes well then. If you need any testing I’m here.
Post here if there’s any news.

Is there any news on this?
I just grabbed a whole lot of games in a Lan and so far what I’ve tested runs they all fine (Unreal tournament 3, Mirrors Edge, Halo2, Counter-Strike Source, etc). The latest drivers quite stable, so I see no reason why it can’t be turned on by default for the latest ones.