#28977: Change Local Memory Cache to Use LRU
-------------------------------------+-------------------------------------
     Reporter:  Grant Jenks          |                    Owner:  Grant
                                     |  Jenks
         Type:  New feature          |                   Status:  assigned
    Component:  Core (Cache system)  |                  Version:  master
     Severity:  Normal               |               Resolution:
     Keywords:                       |             Triage Stage:  Accepted
    Has patch:  1                    |      Needs documentation:  0
  Needs tests:  0                    |  Patch needs improvement:  0
Easy pickings:  0                    |                    UI/UX:  0
-------------------------------------+-------------------------------------

Comment (by Grant Jenks):

 Josh asked on django-developers if I would run more extensive benchmarking
 against the current changes. Here's the results of the locmem backend
 using the python-diskcache benchmark harness. Note that these were
 generated with only one process as locmem does no cross-process
 synchronization.

 The current implementation benchmark results:

 {{{
 ========= ========= ========= ========= ========= ========= =========
 =========
 Timings for locmem
 -------------------------------------------------------------------------------
    Action     Count      Miss    Median       P90       P99       Max
 Total
 ========= ========= ========= ========= ========= ========= =========
 =========
       get     88986     16526  12.159us  19.789us  28.849us 154.734us
 1.266s
       set      9030         0  14.067us  15.974us  30.994us 150.919us
 134.134ms
    delete       983         0  11.921us  13.828us  26.941us  32.663us
 12.563ms
     Total     98999
 1.413s
 ========= ========= ========= ========= ========= ========= =========
 =========
 }}}

 And the new implementation benchmark results:

 {{{
 ========= ========= ========= ========= ========= ========= =========
 =========
 Timings for locmem
 -------------------------------------------------------------------------------
    Action     Count      Miss    Median       P90       P99       Max
 Total
 ========= ========= ========= ========= ========= ========= =========
 =========
       get     88986     16526   5.007us   5.245us  14.067us  80.109us
 449.330ms
       set      9030         0   5.960us   7.153us  16.689us 111.103us
 58.852ms
    delete       983         0   4.053us   5.007us   8.821us  18.835us
 4.200ms
     Total     98999
 512.381ms
 ========= ========= ========= ========= ========= ========= =========
 =========
 }}}

 Displayed is four percentiles of timing: Median (50th), 90th, 99th, and
 Max (100th). The results are better across the board with a 50% speedup
 typical.

-- 
Ticket URL: <https://code.djangoproject.com/ticket/28977#comment:5>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" 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].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/068.02cfad1fbffd9739dec3eba87400b572%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to