[racket] Performance measurement per each thread

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Fri Nov 16 08:28:43 EST 2012

At Fri, 16 Nov 2012 15:33:39 +0900, 주대연 wrote:
> Hi I am a student in master course for Computer Engineering.
> I am studying Racket for my research.
> My one of goals is to measure the performance(cpu usages, memory, i/o..etc)
> of each thread.
> So I have two questions...
> 1) CPU, I/O usages
>     Is there any way to measure CPU usage per each thread in run-time by
> Racket?

The `current-process-milliseconds' function returns a thread-specific
value if you give it a thread argument.

> 2) Memory usages
>    Also memory usages per each thread in rum-time??
>    As I know Linux doesn't provide the way to measure memory usage per each
> thread.
>    So How about Racket?

You can't ask for thread-specific memory use directly, but you can ask
for custodian-specific memory use, and every thread can have its own

Beware of sharing among threads and how that influences memory
accounting. For more information about custodian-based memory
accounting, see

  "Memory Accounting without Partitions"
  Wick and Flatt, ISMM'04

Posted on the users mailing list.