aboutsummaryrefslogtreecommitdiff
path: root/docs/note-2021-09-15.md
blob: 4b9dc9c2e93d3d23ebd91aa97ce84f7dbe31d2e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Added storage worker
====================

This worker is charged to make IO calls when storing chunk data. This way writes
are asynchronous and `matchChunks` can continue without being interrupted.

perf output
-----------

```
        238 109,33 msec task-clock                #    1,597 CPUs utilized          
           683 140      context-switches          #    0,003 M/sec                  
            13 181      cpu-migrations            #    0,055 K/sec                  
            65 129      page-faults               #    0,274 K/sec                  
   657 925 115 947      cycles                    #    2,763 GHz                    
 1 007 554 842 920      instructions              #    1,53  insn per cycle         
   135 946 178 728      branches                  #  570,940 M/sec                  
     2 360 293 394      branch-misses             #    1,74% of all branches        

     149,118546976 seconds time elapsed

     226,961825000 seconds user
      18,354254000 seconds sys
```

This is not a huge improvement, but at the same time, hashes are stored which
makes them a lot faster to recover (no need for rehashing every existing chunk).