Hi Toby,

The web app does not actually use any of the code in the additional jars. I've created an issue here with the zipped webapp and links to the deployed large and normal versions.

http://code.google.com/p/googleappengine/issues/detail?id=3378

On 22 Jun 2010, at 05:13, Toby Reyelts wrote:

Hey John,

Nice tests. For the apps where you added a lot of jars, are you running any code at all from any of those jar files, or do they just sit unused in your webapp? It's certainly not our intent that unused jar files cause any extra delay in loading. If you can provide us with the sample webapps that demonstrate this latency, then we might be able to look into it further.

On Sun, Jun 20, 2010 at 4:09 AM, John Patterson <[email protected]> wrote:
Hi All,

Just thought I would share some timings I have made to determine what effect adding dependencies has on loading request time.

I made four apps using the Eclipse plugin and modified 3 of them to add or remove jars from the war/WEB-INF/lib directory.

Normal - default jars (13.2 MB)
Small - removed all persistence related jars leaving two GAE API jars (10.2 MB)
Large - added lots of jars from various projects (51MB)

Very basic testing procedure - I would just wait a few minutes and reload the Hello world servlet. Normally one minute was long enough to cause a loading request. However I did notice that waiting longer (5 mins) seemed to cause a longer wall clock time - perhaps there are several layers of caching for app resources that can expire.

Averages discard the highest timings:

               Total ms                CPU ms
Small   4079            501
               514                     501
               598                     535
               541                     552
               617                     518
               664                     535
               _____________
               587                     528


Normal  739                     585
               656                     535
               636                     585
               595                     552
               598                     535
               621                     552
               1148            552
               _____________
               640                     556


Large   2274            1372
               1155            1171
               2690            1422
               4064            1255
               1906            1272
               1077            1188
               2817            1355
               ______________
               1986            1296

Some things to notice:

1 - Often the CPU ms (which comes off your quota) often has the same value. e.g. 535ms and 552ms each appear four times. That seems to indicate that some discreet function is used to calculate the cost of loading your app.

2 - It seems that each 1MB of dependencies added takes about 35ms of clock time to load and adds about 19ms to your CPU quota. However, this figures will probably vary depending on if the file is already loaded (by another app?) and possibly other factors. It is also possible that the extra load time is related to the number of jars rather than just their size.

3 - removing the standard persistence jars does seem to have some effect

John

--
You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to [email protected] . To unsubscribe from this group, send email to [email protected] . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en .



--
You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to [email protected] . To unsubscribe from this group, send email to [email protected] . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en .

--
You received this message because you are subscribed to the Google Groups "Google 
App Engine for Java" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to