calculation of ac_mem (in BSD accounting) misleading?

From: Doug Bagley (doug@bagley.org)
Date: Wed May 30 2001 - 15:27:37 EST


I'm interested in understanding better why the value of ac_mem in the
BSD process accounting code (linux/kernel/acct.c) is calculated the
way it is. My humble uninformed opinion is that it's current
definition is possibly misleading at best and mostly useless at worst.

As a little background:

 The comment in include/linux/acct.h says ac_mem is "Average Memory
 Usage".

 According to BSD sources, ac_mem in BSD looks like a time-averaged
 resident set size:

  acct.ac_mem = (r->ru_ixrss + r->ru_idrss + r->ru_isrss) / t;
  (http://minnie.tuhs.org/FreeBSD-srctree/newsrc/kern/kern_acct.c.html)

But the code in linux/kernel/acct.c indicates that ac_mem is simply the
vmsize (in KB) at the time acct_process() is called from do_exit(). It
does not appear to be an average, and IMHO, vmsize is nearly useless,
especially if one expects RSS.

Does it make sense to others that ac_mem should be changed to reflect
the resident set size?

Cheers,
Doug
-
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/



This archive was generated by hypermail 2b29 : Thu May 31 2001 - 21:00:48 EST