comparison OrthancServer/Resources/ImplementationNotes/memory_consumption.txt @ 5155:20911302c6e7

doc
author Alain Mazy <am@osimis.io>
date Wed, 01 Feb 2023 19:32:14 +0100
parents 217863b09457
children 2020c2e479d3
comparison
equal deleted inserted replaced
5154:dce028ec0fe9 5155:20911302c6e7
35 2 ~ 390 MB ~ 340 MB 35 2 ~ 390 MB ~ 340 MB
36 3 ~ 398 MB ~ 345 MB 36 3 ~ 398 MB ~ 345 MB
37 4 out-of-memory crash ~ 345 MB 37 4 out-of-memory crash ~ 345 MB
38 5..20 ~ 380 MB (stable) 38 5..20 ~ 380 MB (stable)
39 39
40 Note: the use of malloc_trim does not guarantee that Orthanc will never reach a 40 3nd test: memory constrained Docker containers
41 ..............................................
42
43 In this last test, we lowered the memory allocation to 300MB and have been able to
44 run the first test script for at least 7 minutes (we did not try longer !). The
45 consumed memory is most of the time around 99% but it seems that the memory constrain
46 is handled correctly. Note that, in this configuration, 128 MB are used by the Dicom
47 Cache.
48
49 The same test without malloc_trim could never run for more than 35 seconds.
50
51
52 Note:
53 ----
54
55 The use of malloc_trim does not guarantee that Orthanc will never reach a
41 out-of-memory error, especially on very constrained systems. 56 out-of-memory error, especially on very constrained systems.
42 Depending on the allocation pattern, the Orthanc memory can get 57 Depending on the allocation pattern, the Orthanc memory can get
43 very fragmented and increase since malloc_trim only releases memory 58 very fragmented and increase since malloc_trim only releases memory
44 at the end of each of malloc arena. However, note that, even long before the 59 at the end of each of malloc arena. However, note that, even long before the
45 introduction of malloc_trim, we have observed Orthanc instances running for years 60 introduction of malloc_trim, we have observed Orthanc instances running for years