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 <jdpatter...@gmail.com>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
> google-appengine-j...@googlegroups.com.
> To unsubscribe from this group, send email to
> google-appengine-java+unsubscr...@googlegroups.com<google-appengine-java%2bunsubscr...@googlegroups.com>
> .
> 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 google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to