[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
custodian.

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
  http://dl.acm.org/authorize?730730
  Addendum:
    http://www.cs.utah.edu/plt/publications/ismm04-addendum.txt



Posted on the users mailing list.