OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
memory_use_c.c File Reference
#include "hardware.inc"
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>
#include <string.h>

Go to the source code of this file.

Macros

#define _FCALL

Functions

void map_memory (int *VmPeak, int *VmSize, int *VmRSS, int *VmHWM, int *VmStk)
void memory_stats_c_ ()
void memory_use_c (int *memsize)
void memory_use_c_ (int *memsize)
void memory_use_c__ (int *memsize)
void _FCALL MEMORY_USE_C (int *memsize)
void _FCALL MEMORY_STATS_C ()
void map_memory_ (int *VmPeak, int *VmSize, int *VmRSS, int *VmHWM, int *VmStk)
void map_memory__ (int *VmPeak, int *VmSize, int *VmRSS, int *VmHWM, int *VmStk)
void _FCALL MAP_MEMORY (int *VmPeak, int *VmSize, int *VmRSS, int *VmHWM, int *VmStk)

Macro Definition Documentation

◆ _FCALL

#define _FCALL

Definition at line 25 of file memory_use_c.c.

Function Documentation

◆ MAP_MEMORY()

void _FCALL MAP_MEMORY ( int * VmPeak,
int * VmSize,
int * VmRSS,
int * VmHWM,
int * VmStk )

Definition at line 276 of file memory_use_c.c.

277{
278 map_memory(VmPeak,VmSize,VmRSS,VmHWM,VmStk );
279}
void map_memory(int *VmPeak, int *VmSize, int *VmRSS, int *VmHWM, int *VmStk)

◆ map_memory()

void map_memory ( int * VmPeak,
int * VmSize,
int * VmRSS,
int * VmHWM,
int * VmStk )

Definition at line 40 of file memory_use_c.c.

41{
42 int pid;
43 FILE * stream;
44 char fil[512],cmd_line[512],line[512],str1[128],str2[128],size[128],size2[128],size3[128],size4[128],size5[128];
45 char * rd;
46 int i,slen,non_convertible,nreadi,VmP,VmS;
47
48 pid = getpid();
49
50 sprintf(fil,"/proc/%i/status",pid);
51 stream = fopen(fil,"r");
52
53 *VmPeak=-1;
54 *VmSize=-1;
55 *VmRSS=-1;
56 *VmHWM=-1;
57 *VmStk=-1;
58
59 while (fgets(line,512,stream)){
60 if (strncmp(line,"VmPeak",6)==0){
61 sscanf(line,"%s %s %s",str1,size,str2);
62 *VmPeak=atoi(size)/1024;
63 }
64
65 if (strncmp(line,"VmSize",6)==0){
66 sscanf(line,"%s %s %s",str1,size2,str2);
67 *VmSize=atoi(size2)/1024;
68 }
69
70 if (strncmp(line,"VmRSS:",6)==0){
71 sscanf(line,"%s %s %s",str1,size3,str2);
72 *VmRSS=atoi(size3)/1024;
73 }
74
75 if (strncmp(line,"VmHWM:",6)==0){
76 sscanf(line,"%s %s %s",str1,size4,str2);
77 *VmHWM=atoi(size4)/1024;
78 }
79
80 if (strncmp(line,"VmStk:",6)==0){
81 sscanf(line,"%s %s %s",str1,size5,str2);
82 *VmStk=atoi(size5)/1024;
83 }
84 }
85 fflush(stdout);
86 fclose(stream);
87}
subroutine slen(x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, j, area, aream)
Definition slen.F:31

◆ map_memory_()

void map_memory_ ( int * VmPeak,
int * VmSize,
int * VmRSS,
int * VmHWM,
int * VmStk )

Definition at line 266 of file memory_use_c.c.

267{
268 map_memory(VmPeak,VmSize,VmRSS,VmHWM,VmStk );
269}

◆ map_memory__()

void map_memory__ ( int * VmPeak,
int * VmSize,
int * VmRSS,
int * VmHWM,
int * VmStk )

Definition at line 271 of file memory_use_c.c.

272{
273 map_memory(VmPeak,VmSize,VmRSS,VmHWM,VmStk );
274}

◆ MEMORY_STATS_C()

void _FCALL MEMORY_STATS_C ( )

Definition at line 259 of file memory_use_c.c.

260{
261 printf("Not Available under Windows\n");
262}

◆ memory_stats_c_()

void memory_stats_c_ ( )

Definition at line 90 of file memory_use_c.c.

91{
92 int pid;
93 FILE * stream;
94 char fil[512],cmd_line[512],line[512],str1[128],str2[128],size[128],size2[128],size3[128],size4[128];
95 char * rd;
96 int i,slen,non_convertible,nreadi,VmP,VmS;
97
98 pid = getpid();
99
100 sprintf(fil,"/proc/%i/status",pid);
101 stream = fopen(fil,"r");
102 VmP=0;
103 VmS=0;
104 while (fgets(line,512,stream)){
105 if (strncmp(line,"VmPeak",6)==0){
106 sscanf(line,"%s %s %s",str1,size,str2);
107 printf(" %s %s %s \n",str1,size,str2);
108
109 }
110 if (strncmp(line,"VmSize",6)==0){
111 sscanf(line,"%s %s %s",str1,size2,str2);
112 printf(" %s %s %s \n",str1,size2,str2);
113 }
114 if (strncmp(line,"VmRSS:",6)==0){
115 sscanf(line,"%s %s %s",str1,size3,str2);
116 printf(" %s %s %s \n",str1,size3,str2);
117 }
118 if (strncmp(line,"VmHWM:",6)==0){
119 sscanf(line,"%s %s %s",str1,size4,str2);
120 printf(" %s %s %s \n",str1,size4,str2);
121 }
122 if (strncmp(line,"VmStk:",6)==0){
123 sscanf(line,"%s %s %s",str1,size4,str2);
124 printf(" %s %s %s \n",str1,size4,str2);
125 }
126
127 }
128 fflush(stdout);
129 fclose(stream);
130}

◆ MEMORY_USE_C()

void _FCALL MEMORY_USE_C ( int * memsize)

Definition at line 254 of file memory_use_c.c.

255{
256 memory_use_c(memsize);
257}
void memory_use_c(int *memsize)

◆ memory_use_c()

void memory_use_c ( int * memsize)

Definition at line 132 of file memory_use_c.c.

133{
134 int pid;
135 FILE * stream;
136 char fil[512],cmd_line[512],line[512],str1[128],str2[128],size[128],size2[128];
137 char * rd;
138 int i,slen,non_convertible,nreadi,VmP,VmS;
139 *memsize=-1;
140
141 pid = getpid();
142
143 sprintf(fil,"/proc/%i/status",pid);
144 stream = fopen(fil,"r");
145 VmP=0;
146 VmS=0;
147 while (fgets(line,512,stream)){
148 if (strncmp(line,"VmPeak",6)==0){
149 VmP=1;
150 sscanf(line,"%s %s %s",str1,size,str2);
151 break;
152 }
153 if (strncmp(line,"VmSize",6)==0){
154 VmS=1;
155 sscanf(line,"%s %s %s",str1,size2,str2);
156 }
157 }
158
159 non_convertible=0;
160 if (VmP==1){
161 slen = strlen(size);
162 for (i=0;i<slen;i++){if (size[i] < '0' && size[i] > '9') non_convertible=1;}
163 if (non_convertible==0){*memsize = atoi(size)/1024;}else{*memsize = -1;}
164 }
165 else{
166 if (VmS==1){
167 slen = strlen(size2);
168 for (i=0;i<slen;i++){
169 if (size2[i] < '0' && size2[i] > '9') non_convertible=1;
170 }
171 if (non_convertible==0){*memsize = atoi(size2)/1024;}else{*memsize = -1;}
172 }else {*memsize = -1;}
173 }
174 fclose(stream);
175}

◆ memory_use_c_()

void memory_use_c_ ( int * memsize)

Definition at line 243 of file memory_use_c.c.

244{
245 memory_use_c(memsize);
246}

◆ memory_use_c__()

void memory_use_c__ ( int * memsize)

Definition at line 248 of file memory_use_c.c.

249{
250 memory_use_c(memsize);
251}