Axel Belinfante [Wed, 10 Apr 2013 17:34:40 +0000]
added   -o <fd> flag  that puts all resource statistics to  fd  (errors go to stderr)

here <fd> is supposed to be a number, i.e. the following works in (ba)sh :

   memtime -o 3  date 3>&2

note that without the redirect memtime will fail to open fd 3

Axel Belinfante [Wed, 10 Apr 2013 17:32:05 +0000]
specify same max rlimit for darwin as for linux (maxseconds+2)

Axel Belinfante [Wed, 10 Apr 2013 15:08:50 +0000]
Merge remote-tracking branch 'origin/master'

Axel Belinfante [Wed, 10 Apr 2013 15:08:03 +0000]
added entry for man page

Mar 11  2010 Makefile.am

Axel Belinfante [Fri, 28 Sep 2012 15:11:46 +0000]
changed set_cpu_limit to set hard limit == soft limit +2 (in seconds)

this seems better than using a percentage for the limit difference

Axel Belinfante [Fri, 28 Sep 2012 14:53:24 +0000]
use given cpu limit as soft limit; use 1.05 times higher value for cpu hard limit

without this, i.e. with cpu soft limit == cpu hard limit
a process is immediately killed when the limit is reached;
on linux, at least:
  - when the soft limit is reached, but the hard limit is not reached yet,
    (every second)  a special 'cpu time exceeded' signal is sent,
  - the process is only killed when the hard limit is reached

thus, with this change, on linux, we may get nicer error messages
(when process is run via a shell: 'CPU time limit exceeded', instead of 'Killed')

Axel Belinfante [Fri, 28 Sep 2012 14:52:22 +0000]
added manual page item to Makefile.am

Michael Weber [Fri, 27 Nov 2009 09:49:39 +0000]
Merge branch 'mw/sampling'

* mw/sampling:
  don't print errors if child was signalled already

Michael Weber [Fri, 20 Nov 2009 10:05:41 +0000]
don't print errors if child was signalled already

Michael Weber [Fri, 27 Nov 2009 09:35:25 +0000]
Merge branch 'mw/signal-handling'

* mw/signal-handling:
  signal handling cleanup, no functional changes

Michael Weber [Fri, 20 Nov 2009 10:04:47 +0000]
signal handling cleanup, no functional changes

Michael Weber [Fri, 27 Nov 2009 08:06:25 +0000]
Merge branch 'jk/minix'

* jk/minix:
  memtime for Minix 3

Jeroen Ketema [Thu, 26 Nov 2009 12:15:28 +0000]
Make Solaris code a bit more robust

On solaris the application started by memtime may
exit before sampling_fork is able to open the
"status" file from the proc file system. Since
the process exited, the "status" file no longer
exists and initialization fails although the
child process finished succesfully. As a work
around ignore status when it could not be opened.

Jeroen Ketema [Thu, 26 Nov 2009 11:06:13 +0000]
Improve command line error checking

Jeroen Ketema [Thu, 19 Nov 2009 10:20:16 +0000]
memtime for Minix 3

Note:

* There doesn't seem to be a way to differentiate between Minix 3
  and earlier versions from within the standard configure interface
  (any Minix is just recognized as minix).

* memtime needs to run with root rights.

* The memory usage statistics are way off (too low right now just counting
  text and data segment sizes, and way too big when including stack
  segement size).

* The autoconf tools for the most recent Minix are slightly out of
  data. Hence, memtimereconf cannot be run.

* The compiler emits a warning, as one of the internal Minix macros
  is missing some parenthesis.

* Only compiles with the GNU C compiler, not with the ACK C compiler
  that comes standard with Minix.

Signed-off-by: Michael Weber <michaelw@foldr.org>

Jeroen Ketema [Thu, 19 Nov 2009 19:34:51 +0000]
Rename RSS define to VSIZE, which is what is used

Signed-off-by: Michael Weber <michaelw@foldr.org>

Jeroen Ketema [Thu, 19 Nov 2009 19:32:35 +0000]
Kill some unused code on Darwin

Signed-off-by: Michael Weber <michaelw@foldr.org>

Jeroen Ketema [Thu, 19 Nov 2009 19:30:10 +0000]
Limit VSIZE on Solaris instead of RSS

Signed-off-by: Michael Weber <michaelw@foldr.org>

Jeroen Ketema [Thu, 19 Nov 2009 18:31:02 +0000]
Fix and improve Linux sample routine

* Get the clock frequency and pagesize from the system before
  we start sampling

* Start the search of the right data from /proc/#/stat by
  skipping everything up to the first ')'. This is slightly
  more robust than searching for spaces (assuming that those
  occur more often than ')'s in process names). You will get
  wrong data if you manage to name your process something like
  "a.out :-) 1 2 3 4 5 6 7 8".

* Use the obtained clock frequency to calculate the running time.

Signed-off-by: Michael Weber <michaelw@foldr.org>

Jeroen Ketema [Thu, 19 Nov 2009 20:18:18 +0000]
Solve timing issues on FreeBSD

Signed-off-by: Michael Weber <michaelw@foldr.org>

Jeroen Ketema [Thu, 19 Nov 2009 12:22:18 +0000]
Fix pid issue in sampling_fork under BSDs

Signed-off-by: Michael Weber <michaelw@foldr.org>

Jeroen Ketema [Thu, 19 Nov 2009 12:18:14 +0000]
Fix typing issue

Tested on all systems except for Solaris.

Signed-off-by: Michael Weber <michaelw@foldr.org>

Michael Weber [Wed, 18 Nov 2009 20:21:48 +0000]
Remove check for C99, use default CFLAGS

Jeroen Ketema [Tue, 17 Nov 2009 19:52:40 +0000]
Update gitignore

Signed-off-by: Michael Weber <michaelw@foldr.org>

Jeroen Ketema [Wed, 18 Nov 2009 00:50:17 +0000]
memtime for FreeBSD

Catch: I can only get the total runtime from the kinfo_proc
structure, not the break down in user time and system time.

Signed-off-by: Michael Weber <michaelw@foldr.org>

Jeroen Ketema [Mon, 16 Nov 2009 22:31:04 +0000]
memtime for DragonFly BSD

Signed-off-by: Michael Weber <michaelw@foldr.org>

Jeroen Ketema [Mon, 16 Nov 2009 19:37:15 +0000]
memtime for OpenBSD and NetBSD

There is only little difference between the two
except that some new features were introduced in
netbsd 5.0.

Currently haven't tested this code on netbsd's
prior to version 5.0.

Signed-off-by: Michael Weber <michaelw@foldr.org>

Michael Weber [Tue, 17 Nov 2009 15:29:57 +0000]
Proper interval time measurements for Darwin

Thanks to Jeroen Ketema for finding an implementation in libtop.

Michael Weber [Mon, 16 Nov 2009 16:54:14 +0000]
Only die on Darwin if Mach stuff is not found.

Michael Weber [Tue, 27 Oct 2009 11:29:26 +0000]
Handle signals and pass them on to child.

This prints stats even on interrupt.
Also, "killall -PROF memtime" prints stats.

Michael Weber [Tue, 27 Oct 2009 11:27:56 +0000]
Use mach/shared_region.h

Fixes Snow Leopard compilation issue.

Michael Weber [Fri, 24 Jul 2009 12:32:24 +0000]
Instead of exit, abort if child dies with unsafe signal

This is mostly for the benefit of mpirun, which takes down
all distributed processes if one dies with a signal.

Michael Weber [Wed, 8 Apr 2009 15:21:38 +0000]
Typo in sunos5.c

Michael Weber [Wed, 8 Apr 2009 14:31:58 +0000]
Kill self with child's signal, if safe.

This should propagate exit codes properly to the shell.

Michael Weber [Fri, 20 Mar 2009 10:06:38 +0000]
Ignore more files.

Michael Weber [Fri, 20 Mar 2009 10:06:20 +0000]
Adding README and License makes distcheck pass.

Michael Weber [Thu, 19 Mar 2009 10:32:37 +0000]
Small naming cleanup

Michael Weber [Wed, 18 Mar 2009 23:55:34 +0000]
Restore parent's original bootstrap port in child.

Otherwise directory services would not work in the child. E.g., "memtime ls" works, but "memtime ls -l" does not
because it queries user names of the listed files.

Michael Weber [Wed, 18 Mar 2009 16:09:38 +0000]
Added installation instructions

Michael Weber [Wed, 18 Mar 2009 16:09:27 +0000]
Works for Darwin8

Michael Weber [Sun, 15 Mar 2009 14:12:18 +0000]
Removed some newlines

Michael Weber [Fri, 13 Mar 2009 12:43:54 +0000]
Compiles again on Linux and SunOS.

Michael Weber [Fri, 13 Mar 2009 11:55:31 +0000]
Updated ChangeLog

Michael Weber [Fri, 13 Mar 2009 10:45:17 +0000]
Remove unused check for exe extension

Michael Weber [Fri, 13 Mar 2009 10:43:24 +0000]
Refactoring, no changes in functionality

* split up sampling_fork() into setup/send/recv

Michael Weber [Fri, 13 Mar 2009 10:39:39 +0000]
Check for C99, changed email address

Michael Weber [Fri, 13 Mar 2009 03:57:26 +0000]
More precise VSIZE counting on Darwin

It's still somewhat off, but there appears to be
no better way to do it.

Michael Weber [Fri, 13 Mar 2009 03:48:16 +0000]
Get rid of task_for_pid()

Sampling now works without elevated priviledges.

Michael Weber [Thu, 12 Mar 2009 18:05:19 +0000]
Exit when unknown options are given.

Michael Weber [Thu, 12 Mar 2009 17:47:54 +0000]
Install License

Michael Weber [Thu, 12 Mar 2009 17:43:30 +0000]
Moved RLIMIT defines to Makefile.am

Michael Weber [Thu, 12 Mar 2009 17:42:34 +0000]
Added files to .gitignore

Michael Weber [Thu, 12 Mar 2009 17:42:04 +0000]
Added myself to authors and copyright.

Michael Weber [Thu, 12 Mar 2009 17:20:44 +0000]
A number of fixes

* 64-bit clean

* ported to Darwin9
  needs either
  + superuser rights
  + or calling user added to procmod group
  + disable security (sysctl kern.tfp.policy)

* automake-ified

Michael Weber [Thu, 12 Mar 2009 17:13:11 +0000]
Import of memtime-1.3

http://www.update.uu.se/~johanb/memtime/memtime-1.3.tar.gz