From 940d811792b3aa0bdc1d38bc9fadfd388f982363 Mon Sep 17 00:00:00 2001 From: Karl Williamson Date: Wed, 15 Nov 2023 09:53:10 -0700 Subject: [PATCH] pp --- pp.c | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/pp.c b/pp.c index c02efc2ba5eb..dde5b411bcd2 100644 --- a/pp.c +++ b/pp.c @@ -709,6 +709,45 @@ PP(pp_study) DEBUG_U(PerlIO_printf(Perl_debug_log, "%s:%d:%p: %llu\n", __FILE__, __LINE__, aTHX_ statex.ullAvailVirtual)); # else /*DEBUG_U(PerlIO_printf(Perl_debug_log, "%s:%d:%p: %p\n", __FILE__, __LINE__, aTHX_ sbrk((intptr_t) 0)));*/ + struct rusage current_rusage; + errno = 0; + if (getrusage(RUSAGE_SELF, ¤t_rusage) != 0) { + DEBUG_U(PerlIO_printf(Perl_debug_log, "%s:%d: getrusage failed: %ld\n", + , __FILE__, __LINE__, get_extended_os_errno())); + } + else { + DEBUG_U(PerlIO_printf(Perl_debug_log, "%s:%d: " + "max resident set size=%ld" + "; integral shared text memory size=%ld" + "; integral unshared data size=%ld" + "; integral unshared stack size=%ld" + "; page reclaims=%ld" + "; page faults=%ld" + "; swaps=%ld" + "; block input operations=%ld" + "; block output operations=%ld" + "; messages sent=%ld" + "; messages received=%ld" + "; signals received=%ld" + "; voluntary context switches=%ld" + "; involuntary context switches=%ld\n", + , __FILE__, __LINE__, + ru_maxrss, + ru_ixrss, + ru_idrss, + ru_isrss, + ru_minflt, + ru_majflt, + ru_nswap, + ru_inblock, + ru_oublock, + ru_msgsnd, + ru_msgrcv, + ru_nsignals, + ru_nvcsw, + ru_nivcsw)); + } + # endif #endif struct rusage current_rusage;