| Index: dm/DMReporter.cpp | 
| diff --git a/dm/DMReporter.cpp b/dm/DMReporter.cpp | 
| index 3f71d693e43a750b98dc348871d4ee228664098e..5187a6f453ae6ab086793756d58e42436d83558a 100644 | 
| --- a/dm/DMReporter.cpp | 
| +++ b/dm/DMReporter.cpp | 
| @@ -4,6 +4,17 @@ | 
| #include "SkCommonFlags.h" | 
| #include "OverwriteLine.h" | 
|  | 
| +#ifdef SK_BUILD_FOR_UNIX | 
| +    #include <sys/resource.h> | 
| +    static long get_max_rss_kb() { | 
| +        struct rusage ru; | 
| +        getrusage(RUSAGE_SELF, &ru); | 
| +        return ru.ru_maxrss; | 
| +    } | 
| +#else | 
| +    static long get_max_rss_kb() { return 0; } | 
| +#endif | 
| + | 
| namespace DM { | 
|  | 
| void Reporter::printStatus(SkString name, SkMSec timeMs) const { | 
| @@ -21,7 +32,10 @@ void Reporter::printStatus(SkString name, SkMSec timeMs) const { | 
| status.appendf(", %d failed", failed); | 
| } | 
| if (FLAGS_verbose) { | 
| -        status.appendf("\t%5dms %s", timeMs, name.c_str()); | 
| +        if (long max_rss_kb = get_max_rss_kb()) { | 
| +            status.appendf("\t%4ldM peak", max_rss_kb / 1024); | 
| +        } | 
| +        status.appendf("\t%5dms\t%s", timeMs, name.c_str()); | 
| } | 
| SkDebugf("%s", status.c_str()); | 
| } | 
|  |