What VM flags do you want from Webstart

Hi Guys,

We’ve been approached by the webstart team about telling them what game developers need from Webstart. Out of that discussion came a desire for the list of VM flags you feel you need to be able to set.

Note that while ‘all of them’ is AN answer, it isn’t the answer im looking for. Thats a much bigger can of worms that has to do with security that we are stil lwrestling with. But if there are any specific flags you found you need that you cant set from Webstart today, this migth be a fast track to getting them added sooner rather then later.

Thanks

JK

Howabout an open discussion with them about this stuff, brainstorm some ideas, and we can convey the relative importance/value and they can convey the relative chances of progress.

Any easy question you can ask you (Jeff) already have the answer to in the threads on these forums you’ve seen come and go bemoaning the parlous state of webstart.

Okay, so BBB weighs in as a “I have nothing to say.”

If anyone else would like to take advantage of the window of opportunity here I’ll watch this topic for a few days. If noone has anything specific for me to tell them I’ll them you are happy with the situation and to scratch VM flags off their improvements list.

— If you don’t like rants, skip to the last paragraph. —

Why did they come to you in the first place? Is it, perhaps, just maybe, because I asked them to? Is it, in fact, that I also at the same time asked them to do a live chat with the people in this community, and they liked the idea, and we liked the idea, and it looked set to go ahead and be a useful discussion?

I suppose next time I’m talking to sun staff about JGO and the GTG (which almost no-one seems to know about) I’ll just not mention the GTG.

PS: Go read the GTG forum and look at the GTG’s “community board” (which I predicted was going to crash and burn) and the complete lack of explanation or attempt to fix it. “Communication? We’ve heard of it”.

What I really, really, really want (and I know that I’m not alone because I do actually talk to people around here outside the boards too) is to communicate with people within Sun. The GTG never actually manages to come through on ANY of their promises or offers to set up communication channels (I’ve got the emails that Chris sent me for many of these things, all “yes, great, will send it next week!” and stuff like that stretching back 2 years and no results), and now it seems all you can do is block them. I was beginning to wonder why the proposed chat had suddenly gone silent.

Shrug.

/me is from now on going to just talk directly to the sun engineers whose email addresses he has rather than waste more time with this pointless indirection

Anyone who has burning issues to resolve with Sun, feel free to email me (ceo at grexengine.com) and I’ll filter them, mulitplex them, try to find appropriate people within sun, and pass your comments on. And if I can’t, I’ll at least tell you that I’m not going to and give you some suggestions of where to look yourself.

a bit off topic there BBB. Please stay on this topic of what people want in webstart.

Personally, im not experienced enough in webstart to know what is there and what isn’t.

If -Xmx and -Xss aren’t there, i would love to see em there if you lovely people at SUN dont mind.

DP

Tut tut, “when given an opportunity to feedback, its rarely a good idea to snub it outright” - Rule #4357 of community software development.

Webstart - garbage collection control (incgc, noclassgc), client/server vm. Reading through the possibles… -Xcheck:jni and -Xprof might be nice from the point of view that most developers here don’t have access to all platforms to test on.

Thanks Jeff, please excuse me if any of these are already available and I haven’t seent he latest update.

Kev

Client and Server VM flags are available with 1.5 … but to have the server vm, you first have to download the JDK (not in JRE).

So the servervm is not really here for standard users…

Please include servervm in the standard JRE.

Lilian

is there a way to detect whether someone is using a JDK or a JRE via webstart? I mean if i set to use the server flag, would it fail and print out some sort of message or would it fall back to using the client VM?

DP

I want to be able to fine tune any aspect of memory allocation & GC (and I can’t see how security would be affected by this so should be fine, yes?). So that’s all the flags related to that. But not in the context of gaming; I have no interest in using Webstart for games deployment any more. I’m using it now for a big commercial Swingified client/server offering.

Cas :slight_smile:

Because we are the Game Technolgoy Group and it is our charter to be the point of contact and repository of knowledge for everywhere and anywhere Sun touches the game industry.

Thought maybe I should clear that up as perhapse some folks didn’t know that., but thats all I intend to say on that subject.

On the Server VM/JRE issue, the webstart guys are ofcourse not the right folks to talk to. They’d tell you to simply specify JDK in your JNLP. Beyond that its out of their hands.

I’ll go talk to some freinds in the J2SE team though and explore the reasoning on that for you though. My suspicion is that it was a decision made to reduce the JRE download size. :confused:

On topic: Thanks for the feedback guys. Ill put together a list from it on Monday to feed back to the webstart folks!

Jeff Kesselman
SUN Senior Software Engineer
Game Server Architect - Game Technologies Group

Do they want any feedback about other aspects of deployment?

How about this little gem:

Play now!

which would take care of auto-installing webstart if it’s not installed and then feed the supplied url to it… thus making installation a single click with no downloads required!

And while you’re at it, why not help people download new video drivers too, like games do? See this: http://www.phelios.net/updatevideodrivers.html

If you could get Webstart to sort out video drivers as well that’d be grand. It benefits almost every aspect of a user’s system, and I know it’s strictly nothing to do with Java but if you want Java to look great instead of merely … well, a “thing that does stuff”…

Cas :slight_smile:

[quote]Do they want any feedback about other aspects of deployment?
[/quote]
Sure, this is all useful stuff to collect, thanks.

As others have said anything to do with tuning GC should be exposed. (heap size limits, algorithm, that fancy one that we got in Java 5 that specifies the desired maximum GC pause time…)

Also, things like compile thresholds and anything that tunes the performance characteristics of HotSpot could be useful, though perhaps they aren’t really needed as the VM seems to be doing a pretty good job.

Most of the other things like enabling certain graphics pipelines I think can already be done with the -D stuff… but does it happen on time to be effective, when WebStart has already started showing UI bits for splash screens and such?

Also +1 on princec’s deployment issues. Even using WebStart as an INTERNAL update mechanism in a game. So your game code & data doesn’t go in to a shared WebStart cache, but you can use WebStart APIs to update your own private cache.

Without even reading this thread, I just wanted to say “sorry” for my previous post; I’ve had a week from hell (*) and over the last 4 days been losing my temper very easily. And then, yesterday, I realised I’d been working every single day since the start of March, when I got back from the GDC, jetlagged, and went straight to work over the weekend. Shrug. The game’s shipped now (part 1) and I’m slightly calmer, but I’m going to refrain from forums for a few weeks now, I think. Clearly, if I can’t keep a level head when I hit minor frustrations (like in this thread) then I’d be best just to shut up.

(*) My bank manager removed a couple of thousand pounds credit from my bank account “by accident”, locking me out of my account and I found out at midnight in the middle of London, about 60 miles from home. Then I spent the following night sleeping on a floor in an empty house, i.e. getting practically no sleep. So I was pretty ratty this weekend.

As for vm flags, I would like to see the GC tuning flags and the j2d rendering flags included. The latter not stricktly for games, but for example the jws deployed app I made for my work I found that swing doesn’t always work on the customer’s machine without setting noddraw to true. The latter is not a vm flag I think but a property, but I think setting it in jnlp doesn’t work.

EDIT: And yes (although off-topic), pleeease start including the server vm in the JRE. It’s just almost 1MB more in the distribution and it’s definitely worth it.

[quote]Also, things like compile thresholds and anything that tunes the performance characteristics of HotSpot could be useful, though perhaps they aren’t really needed as the VM seems to be doing a pretty good job.
[/quote]
Yes, that too :slight_smile:

And while you’re at it, please remove that horrible “Java Loading…” splash screen. It serves no purpose except putting of people that don’t really like java. Better to start java silently without rubbing the “java” brand in the user’s nose over and over again. It’s just too intrusive. You’ve never seen or wanted to see “C++ written native executable loading”, did you? :wink:

I believe thre actually IS a silent mode now, theya dded a bunch of stuff like that in 1.5, but Ill hand all this abck to the WebStart guys.

Thanks guys!

I’d quite like Java to start up as a system service and just deal with requests to execute JNLP and jar files…

Cas :slight_smile:

no thanks! - dont need a ton more programs slurping up my ram!

Get more RAM then :smiley:

Cas :slight_smile:

Well, I think that java2d flags should not be ignore because they were considered not secure enough in the first place. I don’t understand why running a game with performance flags turned on would be consided unsecure (according to Java 5 docs)? For example how the flag sun.java2d.transaccel would violate security for the user?