I just ran djangobench comparing 1.5 to 1.6. The biggest thing seems to be 
form_create bechmark, the average is 15x slower. But for some reason the 
minimum runtime is just 1.16x slower. This seems a bit strange. This might 
be worth more investigation.

Otherwise there doens't seem to be anything alarming going on. Most ORM 
operations are slightly faster (likely due to __deepcopy__ removal).

There are a couple of individual benchmarks worth mentioning... url_reverse 
and query_iterator are slower (1.15x and 1.12x respectively). The 
default_middleware and qs_filter_chaining benchmarks have gained a lot 
(2.0x and 3.1x respectively). model_save_existing/model_save_new are faster 
(2x+), but model_creation is slightly slower. I suspect there is something 
going on with connection creation or transactions for model_creation, after 
all model_creation is a convenience method for model.__init__ + 
model_save_new which both aren't slower.

What else? url_reverse and template compliation under i18n slightly slower. 
For the rest of benchmarks, see below.

Running 'default_middleware' benchmark ...
Min: 0.001260 -> 0.000554: 2.2755x faster
Avg: 0.001389 -> 0.000681: 2.0394x faster
Significant (t=8.222155)
Stddev: 0.00037 -> 0.00048: 1.2843x larger (N = 50)

Running 'form_clean' benchmark ...
Min: 0.000042 -> 0.000042: no change
Avg: 0.000049 -> 0.000043: 1.1341x faster
Not significant
Stddev: 0.00004 -> 0.00001: 6.6718x smaller (N = 50)

Running 'form_create' benchmark ...
Min: 0.000085 -> 0.000099: 1.1657x slower
Avg: 0.000088 -> 0.001396: 15.8410x slower
Not significant
Stddev: 0.00001 -> 0.00916: 783.3314x larger (N = 50)

Running 'l10n_render' benchmark ...
Min: 0.011702 -> 0.014151: 1.2093x slower
Avg: 0.012200 -> 0.014846: 1.2169x slower
Significant (t=-4.824893)
Stddev: 0.00233 -> 0.00310: 1.3311x larger (N = 50)

Running 'model_creation' benchmark ...
Min: 0.000311 -> 0.000400: 1.2860x slower
Avg: 0.000336 -> 0.000432: 1.2840x slower
Significant (t=-2.799691)
Stddev: 0.00015 -> 0.00019: 1.2751x larger (N = 50)

Running 'model_delete' benchmark ...
Min: 0.000407 -> 0.000468: 1.1500x slower
Avg: 0.000423 -> 0.000484: 1.1440x slower
Significant (t=-7.131460)
Stddev: 0.00005 -> 0.00004: 1.1807x smaller (N = 50)

Running 'model_save_existing' benchmark ...
Min: 0.062923 -> 0.021829: 2.8826x faster
Avg: 0.063206 -> 0.022001: 2.8729x faster
Significant (t=793.026302)
Stddev: 0.00034 -> 0.00014: 2.3570x smaller (N = 50)

Running 'model_save_new' benchmark ...
Min: 0.041341 -> 0.021819: 1.8947x faster
Avg: 0.063127 -> 0.022379: 2.8208x faster
Significant (t=76.086085)
Stddev: 0.00344 -> 0.00158: 2.1770x smaller (N = 50)

Running 'multi_value_dict' benchmark ...
Min: 0.000083 -> 0.000085: 1.0230x slower
Avg: 0.000165 -> 0.000168: 1.0164x slower
Not significant
Stddev: 0.00005 -> 0.00005: 1.0339x larger (N = 50)

Running 'qs_filter_chaining' benchmark ...
Min: 0.004264 -> 0.001362: 3.1311x faster
Avg: 0.004311 -> 0.001391: 3.0996x faster
Significant (t=170.435257)
Stddev: 0.00010 -> 0.00007: 1.2953x smaller (N = 50)

Running 'query_aggregate' benchmark ...
Min: 0.000467 -> 0.000412: 1.1331x faster
Avg: 0.000479 -> 0.000423: 1.1322x faster
Significant (t=11.625112)
Stddev: 0.00002 -> 0.00002: 1.0048x smaller (N = 50)

Running 'query_all' benchmark ...
Min: 0.047256 -> 0.043987: 1.0743x faster
Avg: 0.049713 -> 0.046489: 1.0693x faster
Significant (t=3.604195)
Stddev: 0.00423 -> 0.00470: 1.1104x larger (N = 50)

Running 'query_all_multifield' benchmark ...
Min: 0.103770 -> 0.099138: 1.0467x faster
Avg: 0.107616 -> 0.103382: 1.0409x faster
Significant (t=4.033836)
Stddev: 0.00495 -> 0.00553: 1.1182x larger (N = 50)

Running 'query_annotate' benchmark ...
Min: 0.000987 -> 0.000865: 1.1408x faster
Avg: 0.001006 -> 0.000881: 1.1417x faster
Significant (t=17.891371)
Stddev: 0.00004 -> 0.00003: 1.2235x smaller (N = 50)

Running 'query_complex_filter' benchmark ...
Min: 0.000308 -> 0.000218: 1.4136x faster
Avg: 0.000317 -> 0.000223: 1.4175x faster
Significant (t=27.463980)
Stddev: 0.00002 -> 0.00001: 1.3219x smaller (N = 50)

Running 'query_count' benchmark ...
Min: 0.000392 -> 0.000339: 1.1561x faster
Avg: 0.000401 -> 0.000347: 1.1571x faster
Significant (t=13.345028)
Stddev: 0.00002 -> 0.00002: 1.0469x smaller (N = 50)

Running 'query_dates' benchmark ...
Min: 0.001032 -> 0.000884: 1.1678x faster
Avg: 0.001055 -> 0.000900: 1.1730x faster
Significant (t=21.848869)
Stddev: 0.00004 -> 0.00003: 1.1197x smaller (N = 50)

Running 'query_delete' benchmark ...
Min: 0.000475 -> 0.000425: 1.1178x faster
Avg: 0.000530 -> 0.000436: 1.2153x faster
Significant (t=2.191750)
Stddev: 0.00030 -> 0.00004: 8.3495x smaller (N = 50)

Running 'query_delete_related' benchmark ...
Min: 0.000565 -> 0.000550: 1.0278x faster
Avg: 0.000623 -> 0.000605: 1.0289x faster
Not significant
Stddev: 0.00034 -> 0.00031: 1.0908x smaller (N = 50)

Running 'query_distinct' benchmark ...
Min: 0.000634 -> 0.000570: 1.1121x faster
Avg: 0.000643 -> 0.000584: 1.1016x faster
Significant (t=12.118505)
Stddev: 0.00002 -> 0.00003: 1.3095x larger (N = 50)

Running 'query_exclude' benchmark ...
Min: 0.000863 -> 0.000788: 1.0950x faster
Avg: 0.000880 -> 0.000803: 1.0953x faster
Significant (t=13.046264)
Stddev: 0.00003 -> 0.00003: 1.0791x larger (N = 50)

Running 'query_exists' benchmark ...
Min: 0.001760 -> 0.001236: 1.4240x faster
Avg: 0.001787 -> 0.001255: 1.4232x faster
Significant (t=85.893459)
Stddev: 0.00003 -> 0.00003: 1.0897x smaller (N = 50)

Running 'query_filter' benchmark ...
Min: 0.000670 -> 0.000638: 1.0501x faster
Avg: 0.000684 -> 0.000652: 1.0480x faster
Significant (t=5.370576)
Stddev: 0.00003 -> 0.00003: 1.0148x larger (N = 50)

Running 'query_get' benchmark ...
Min: 0.051161 -> 0.040722: 1.2564x faster
Avg: 0.051703 -> 0.040987: 1.2614x faster
Significant (t=67.436357)
Stddev: 0.00111 -> 0.00016: 6.8096x smaller (N = 50)

Running 'query_get_or_create' benchmark ...
Min: 0.002207 -> 0.001794: 1.2303x faster
Avg: 0.002301 -> 0.001860: 1.2370x faster
Significant (t=9.259437)
Stddev: 0.00024 -> 0.00023: 1.0271x smaller (N = 50)

Running 'query_in_bulk' benchmark ...
Min: 0.001014 -> 0.000756: 1.3412x faster
Avg: 0.001036 -> 0.000770: 1.3464x faster
Significant (t=39.238702)
Stddev: 0.00004 -> 0.00003: 1.2649x smaller (N = 50)

Running 'query_iterator' benchmark ...
Min: 0.000448 -> 0.000497: 1.1096x slower
Avg: 0.000458 -> 0.000508: 1.1100x slower
Significant (t=-11.870806)
Stddev: 0.00002 -> 0.00002: 1.0347x smaller (N = 50)

Running 'query_latest' benchmark ...
Min: 0.000720 -> 0.000602: 1.1960x faster
Avg: 0.000735 -> 0.000616: 1.1929x faster
Significant (t=18.266073)
Stddev: 0.00003 -> 0.00003: 1.1321x larger (N = 50)

Running 'query_none' benchmark ...
Min: 0.000044 -> 0.000262: 5.9674x slower
Avg: 0.000047 -> 0.000290: 6.1906x slower
Significant (t=-12.805744)
Stddev: 0.00001 -> 0.00013: 14.5148x larger (N = 50)

Running 'query_order_by' benchmark ...
Min: 0.000694 -> 0.000629: 1.1035x faster
Avg: 0.000710 -> 0.000643: 1.1034x faster
Significant (t=12.579731)
Stddev: 0.00003 -> 0.00003: 1.0503x larger (N = 50)

Running 'query_prefetch_related' benchmark ...
Min: 0.157446 -> 0.139648: 1.1274x faster
Avg: 0.159709 -> 0.141490: 1.1288x faster
Significant (t=25.953202)
Stddev: 0.00345 -> 0.00357: 1.0323x larger (N = 50)

Running 'query_raw' benchmark ...
Min: 0.035057 -> 0.033581: 1.0440x faster
Avg: 0.036173 -> 0.034579: 1.0461x faster
Significant (t=3.157050)
Stddev: 0.00245 -> 0.00259: 1.0578x larger (N = 50)

Running 'query_raw_deferred' benchmark ...
Min: 0.034473 -> 0.032813: 1.0506x faster
Avg: 0.035510 -> 0.033668: 1.0547x faster
Significant (t=4.009721)
Stddev: 0.00221 -> 0.00238: 1.0801x larger (N = 50)

Running 'query_select_related' benchmark ...
Min: 0.101298 -> 0.092818: 1.0914x faster
Avg: 0.103418 -> 0.095025: 1.0883x faster
Significant (t=10.835818)
Stddev: 0.00374 -> 0.00400: 1.0704x larger (N = 50)

Running 'query_update' benchmark ...
Min: 0.000473 -> 0.000415: 1.1396x faster
Avg: 0.000486 -> 0.000426: 1.1406x faster
Significant (t=13.803712)
Stddev: 0.00002 -> 0.00002: 1.1961x smaller (N = 50)

Running 'query_values' benchmark ...
Min: 0.000535 -> 0.000479: 1.1170x faster
Avg: 0.000550 -> 0.000491: 1.1195x faster
Significant (t=9.839351)
Stddev: 0.00003 -> 0.00003: 1.0529x smaller (N = 50)

Running 'query_values_list' benchmark ...
Min: 0.000507 -> 0.000457: 1.1096x faster
Avg: 0.000519 -> 0.000465: 1.1159x faster
Significant (t=13.620094)
Stddev: 0.00002 -> 0.00002: 1.2072x smaller (N = 50)

Running 'startup' benchmark ...
0.166763 -> 0.309053: 1.8532x slower

Running 'template_compilation' benchmark ...
Min: 0.000980 -> 0.000998: 1.0182x slower
Avg: 0.001702 -> 0.001729: 1.0162x slower
Not significant
Stddev: 0.00498 -> 0.00507: 1.0169x larger (N = 50)

Running 'template_render' benchmark ...
Min: 0.018177 -> 0.019062: 1.0487x slower
Avg: 0.018609 -> 0.019538: 1.0499x slower
Significant (t=-2.514891)
Stddev: 0.00183 -> 0.00187: 1.0232x larger (N = 50)

Running 'template_render_simple' benchmark ...
Min: 0.000163 -> 0.000180: 1.1054x slower
Avg: 0.000874 -> 0.000894: 1.0230x slower
Not significant
Stddev: 0.00500 -> 0.00503: 1.0045x larger (N = 50)

Running 'url_resolve' benchmark ...
Min: 0.026218 -> 0.025550: 1.0261x faster
Avg: 0.026641 -> 0.025782: 1.0333x faster
Significant (t=7.810852)
Stddev: 0.00067 -> 0.00040: 1.6905x smaller (N = 50)

Running 'url_resolve_flat' benchmark ...
Min: 0.406173 -> 0.417229: 1.0272x slower
Avg: 0.408317 -> 0.421851: 1.0331x slower
Significant (t=-10.327930)
Stddev: 0.00627 -> 0.00682: 1.0878x larger (N = 50)

Running 'url_resolve_flat_i18n_off' benchmark ...
Min: 0.530959 -> 0.532872: 1.0036x slower
Avg: 0.533534 -> 0.540590: 1.0132x slower
Significant (t=-4.240113)
Stddev: 0.00627 -> 0.00995: 1.5865x larger (N = 50)

Running 'url_resolve_nested' benchmark ...
Min: 0.000155 -> 0.000151: 1.0269x faster
Avg: 0.000472 -> 0.000477: 1.0106x slower
Not significant
Stddev: 0.00221 -> 0.00227: 1.0274x larger (N = 50)

Running 'url_reverse' benchmark ...
Min: 0.000385 -> 0.000481: 1.2497x slower
Avg: 0.000490 -> 0.000579: 1.1807x slower
Not significant
Stddev: 0.00064 -> 0.00063: 1.0144x smaller (N = 50)

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-developers.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to