Messages in this thread |  | | Date | Mon, 18 Jun 2001 13:44:33 -0400 | | From | Pete Wyckoff <> | | Subject | Re: getrusage vs /proc/pid/stat? |
| |
dank@kegel.com said: > I'd like to monitor CPU, memory, and I/O utilization in a > long-running multithreaded daemon under kernels 2.2, 2.4, > and possibly also Solaris (#ifdefs are ok). > > getrusage() looked promising, and might even work for CPU utilization. > Dunno if it returns info for all child threads yet, haven't tried it. > In Linux, though, getrusage() doesn't return any info about RAM. > > I know I can get the RSS and VSIZE under Linux by parsing /proc/pid/stat, > but was hoping for a faster interface (although I suppose a seek, > a read, and an ascii parse isn't *that* slow). Is /proc/pid/stat > the only way to go under Linux to monitor RSS?
getrusage() isn't really the system call you want for this.
There is a max RSS value, which linux could support but doesn't, but you seem to want to see the current RSS over time. Search the archive for various patches/complaints about getrusage.
For vsize, most OSes offer time-integral averages of text, data, and stack sizes via getrusage(). Again, more of an aggregate than a current snapshot, and again, linux returns zero for these currently.
-- Pete - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |