#include "vtr_rusage.h" | |
#ifdef __unix__ | |
# include <sys/time.h> | |
# include <sys/resource.h> | |
#endif | |
namespace vtr { | |
size_t get_max_rss() { | |
size_t max_rss = 0; | |
#ifdef __unix__ | |
rusage usage; | |
int result = getrusage(RUSAGE_SELF, &usage); | |
if (result == 0) { //Success | |
//ru_maxrss is in kilobytes, convert to bytes | |
max_rss = usage.ru_maxrss * 1024; | |
} | |
#else | |
//Do nothing, other platform specific code could be added here | |
//with appropriate defines | |
#endif | |
return max_rss; | |
} | |
} // namespace vtr |