Google's new Courgette patching system for Chrome, could it help PS3 game updates?

Currently one main difference between Xbox 360's game updates/patches and the ones delivered through PSN is that PS3's updates/patches have to replace the complete executable instead of just sending small updates which are "basically" applied to the executable file thus requiring a much smaller download for the user at update time. MS seems to have a patent on their current process so Sony is pretty much restricted to doing the full update or finding a good or better way around MS's patent.

Enter Courgette: http://dev.chromium.org/developers/design-documents/software-updates-courgette

server:
hint = make_hint(original, update)
guess = make_guess(original, hint)
diff = bsdiff(concat(original, guess), update)
transmit hint, diff

client
receive hint, diff
guess = make_guess(original, hint)
update = bspatch(concat(original, guess), diff)

Google, already using a technique to deliver small patches for its browser, is developing (and possibly opening up to Chromium and thus to a more open source license, which would allow Sony to take advantage for it) a new and more efficient way of handling updates and a way that could also save SCE money in addition to the time it saves users to download said updates (time spent downloading is money SCE spends to push that data out).

Do you think that such a way would still infringe on MS's Xbox 360 game updates related patents (I realize that there might be something making them console specific in terms of enforceability because I somehow do not think no one else in the PC space is using diff updates to binaries to reduce download size...)?
 
I thought there are already existing games/applications that support incremental update (prior arts) ?
 
I thought there are already existing games/applications that support incremental update (prior arts) ?

I remember hearing that on PS3 you have to replace the whole game executable file to apply an update (while you only send a delta patch of the executable on Xbox 360... but that seems the way Chrome does it at the moment... and why cannot Sony do just that while Google can with Chrome? ... patents... grr.... grr....)... for updates to disc based games you could avoid that, using this method, by installing the game executable file(s) on the HDD before installing the patch. Current PS3 game patches are all quite large IIRC.
 
Bu... bu... but, KZ2 patch 1.38 is only 90Mb or so.

I think it's the firmware update that's problematic. However I see weird situations where the update skipped halfway to the end. Don't know what's the deal with that.
 
Bu... bu... but, KZ2 patch 1.38 is only 90Mb or so.

No one has said KZ2's full executable is in the GB range ;)... 90 MB for an executable that loads a lot of other data and code is not that small :).

I think it's the firmware update that's problematic. However I see weird situations where the update skipped halfway to the end. Don't know what's the deal with that.

Firmware is like 128 MB max IIRC (most of them have been way below 90 MB too), right?

It sounds comparable to that KZ2's update.

BTW, here is the link to Courgette's source code:

http://src.chromium.org/viewvc/chrome/trunk/src/courgette/
 
We need to say something outrageous about the PS3 update mechanism. Then archie4oz or DeanA will show up magically to correct us. What should I say ?
 
We need to say something outrageous about the PS3 update mechanism. Then archie4oz or DeanA will show up magically to correct us. What should I say ?

Uhm... that they forgot to enable the "enable_smart_delta_patches" flag in PS3's firmware and thus the PSN server cannot offer such functionality?!?
 
Bu... bu... but, KZ2 patch 1.38 is only 90Mb or so.

I think it's the firmware update that's problematic. However I see weird situations where the update skipped halfway to the end. Don't know what's the deal with that.

There are smaller ones too, like Home is in the 16-32MB range?

But yeah, this could be interesting for Sony. All things considered, I definitely see potential for (more - remember, they already have that google search feature) collaboration between Sony and Google, on this, the various Chrome projects, Google Earth on PSN, etc.
 
Wont this need a PS4 to make it work? Can you just dump an app to the PS3 OS? BTW i would like to ask the people in the know, how is the quality of PS3 OS code? The common conception is that since it is by Sony and it was finalised late, it should be a mess underneath...archie/deanA any comments or winks?

Back to PS4, i wished it is made by Sony, IBM, Google and Imgtec (deferred ATW!). couldnt stand Nvidia/JSH self-serving hyperbole attitude, and they screwed Sony and MS with their "console" gpus! I think if Ken Kutaragi was still here, that would have been his next big collaboration! Cell and Google/IBM cloud computing tech, the cool "open" sourceness of Google's image, would have fit nicely into his curve! Tried to involved Apple the last round but Apple, being Apple was too stuck up dealing with this "old" Japanese company. But since Stringer/Hirai is running SCE, PS4 would probably not be about tech but about finance from those 2 arts grads (boohoo!). PS4 would probably if any collaboration be with MS, the oft-rumored one console future, though i am not sure i can trust Balmer, that man, something about him that scares me and i think i am not the only one? :devilish:
 
Last edited by a moderator:
That might be the full executable still... depending on what they are updating with each client update.

Yes, it's probably always the full executable, since updates to spaces are always downloaded within Home.

Point is, probably, that I'd think you'd always be able to make a game have a small executable, no?
 
Yes, it's probably always the full executable, since updates to spaces are always downloaded within Home.

Point is, probably, that I'd think you'd always be able to make a game have a small executable, no?

Maybe... but sometimes it might not be easy (see KZ2 bigger patch) and even in the case of a 16-24 MB patch... if you could reduce it to 4-8 MB or less it would be a big win.

Smaller patches = less money spent delivering them to users + happier users + possibility of delivering more frequent patches (if it is going to take a very short amount of time you might prefer to deliver the fix earlier rather than wait to roll it with other fixes later on...).
 
Firmware is like 128 MB max IIRC (most of them have been way below 90 MB too), right?

I have seen files a little over 140mb. Most recently It was over 130 IIRC.

This also reminds me of Omaha from Google. It's the technology they use for Chrome to update the browser without the user ever knowing. Just imagine reading a blog post from Sony stating that PS3's have been updated with the following features, and you didn't even know you had that update for the past couple of days.

http://google-opensource.blogspot.com/2009/04/google-update-goes-open-source.html
 
Last edited by a moderator:
This may or may not help, but I recently bought Burnout Paradise over PSN which immediately promted me to do an update. The update consisted of 5 updates and were all in various sizes (some as small as 120MB the largest was 430MB). In total, I downloaded roughly 900MB of updates, though the point was, there were multiple updates in various sizes.

That however doesn't mean that the game executable wasn't packed in one of every update however...
 
At least on the PC there's plenty of games and applications that apply patches to an executable rather than downloading the entire executable again. Likewise with game assets. Especially when you look at certain games where the game assets are packed into files that are 1+ gigabytes in size.

I'm not sure what is preventing Sony from doing the same other than the fact that they haven't bothered to take the time to implement it. Perhaps there's there's just too many things they feel they have to implement and/or fix that it's rather low on the list of priorities.

Regards,
SB
 
This may or may not help, but I recently bought Burnout Paradise over PSN which immediately promted me to do an update. The update consisted of 5 updates and were all in various sizes (some as small as 120MB the largest was 430MB). In total, I downloaded roughly 900MB of updates, though the point was, there were multiple updates in various sizes.

That however doesn't mean that the game executable wasn't packed in one of every update however...

One would think, in that instance, the developer would want to publish a new executable that contains all the patches so a user does not download the game for the first time and is greeted with 5 updates. That is just poor implementation, and customer service.
 
One would think, in that instance, the developer would want to publish a new executable that contains all the patches so a user does not download the game for the first time and is greeted with 5 updates. That is just poor implementation, and customer service.

Not uncommon however.

Windows does the same thing. With a roll up into a service pack every now and then. But even then SPs have to be individually installed in order.

MMOs operate in a similar way. With patches eventually getting rolled up into one patch. But until that happens you have to download and apply each patch sequentially.

And there are some games (Call of Heroes immediately comes to mind) where you have to install patches in order until they have a patch roll-up which doesn't happen too frequently.

Regards,
SB
 
There are a ton of third-party products out there (and plenty of games) using bit-differencing for patching. In fact, there are patching libraries available for the PS3 that support bit-differencing.

Why Sony doesn't implement this? Probably just time, but it's also true that when you use bit differencing, you have to generate diffs of every version, so you can go from 1.1 -> 1.3 or 1.2 -> 1.3. An alternative is to provide a hybrid system where you only keep the last X major version diffs and patch the full file for anyone else.
 
If this is a patent issue, it may be specific to consoles, like supposedly is the case for voice chat -- MS can't claim prior art on game-independent voice-comms any more than they can binary diffs.
 
Back
Top