MCPcopy Create free account
hub / github.com/Singular/Singular / omUpdateInfo

Function omUpdateInfo

omalloc/omStats.c:27–110  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

25}
26
27void omUpdateInfo()
28{
29#ifdef OM_MALLOC_UPDATE_INFO
30 OM_MALLOC_UPDATE_INFO;
31#endif
32
33 /* this can happen, since sizes are added as requested, and
34 subtracted as the real size of the memory */
35 if (om_Info.CurrentBytesFromMalloc < 0)
36 om_Info.CurrentBytesFromMalloc = 0;
37
38 om_Info.UsedBytesFromValloc = omGetUsedBinBytes();
39 om_Info.AvailBytesFromValloc = om_Info.CurrentBytesFromValloc - om_Info.UsedBytesFromValloc;
40
41#ifdef OM_MALLOC_USED_BYTES
42 om_Info.UsedBytesMalloc = OM_MALLOC_USED_BYTES;
43#else
44 om_Info.UsedBytesMalloc = om_Info.CurrentBytesFromMalloc
45 -om_Info.InternalUsedBytesMalloc;
46#endif
47#ifdef OM_MALLOC_AVAIL_BYTES
48 om_Info.AvailBytesMalloc = OM_MALLOC_AVAIL_BYTES;
49#endif
50
51 om_Info.UsedBytes = om_Info.UsedBytesMalloc + om_Info.UsedBytesFromValloc;
52 om_Info.AvailBytes = om_Info.AvailBytesMalloc + om_Info.AvailBytesFromValloc;
53
54#ifdef OM_HAVE_VALLOC_MMAP
55 om_Info.CurrentBytesMmap = om_Info.CurrentBytesFromValloc;
56 om_Info.MaxBytesMmap = om_Info.MaxBytesFromValloc;
57#endif
58#ifdef OM_MALLOC_CURRENT_BYTES_MMAP
59 om_Info.CurrentBytesMmap += OM_MALLOC_CURRENT_BYTES_MMAP;
60#endif
61#ifdef OM_MALLOC_MAX_BYTES_MMAP
62 om_Info.MaxBytesMmap += OM_MALLOC_MAX_BYTES_MMAP;
63#endif
64
65#ifndef OM_MALLOC_CURRENT_BYTES_SBRK
66#ifdef HAVE_SBRK
67 if (om_SbrkInit)
68 {
69 om_Info.CurrentBytesSbrk = (unsigned long) sbrk(0) - om_SbrkInit;
70 if (om_Info.CurrentBytesSbrk > om_Info.MaxBytesSbrk)
71 om_Info.MaxBytesSbrk = om_Info.CurrentBytesSbrk;
72 }
73 else
74 {
75 om_SbrkInit = (unsigned long) sbrk(0);
76 }
77#endif
78#else
79 om_Info.CurrentBytesSbrk = OM_MALLOC_CURRENT_BYTES_SBRK;
80#ifdef OM_MALLOC_MAX_BYTES_SBRK
81 om_Info.MaxBytesSbrk = OM_MALLOC_MAX_BYTES_SBRK;
82#else
83 if (om_Info.CurrentBytesSbrk > om_Info.MaxBytesSbrk)
84 om_Info.MaxBytesSbrk = om_Info.CurrentBytesSbrk;

Callers 7

jjEXTENDED_SYSTEMFunction · 0.85
jjMEMORYFunction · 0.85
checkForMonomialFunction · 0.85
ptNormalizeFunction · 0.85
omGetInfoFunction · 0.85
omPrintStatsFunction · 0.85
omPrintInfoFunction · 0.85

Calls 2

omGetUsedBinBytesFunction · 0.85
sbrkFunction · 0.85

Tested by

no test coverage detected