Celeste Profiler

The program celeste-profiler is a simple profiling client used to measure a variety of performance and load related tests usually involving a single Celeste node and multiple, concurrent clients.

The output of each test is a line of text containing comma-separated-values for the measured results. Each line contains, in left-to-right order, the number of concurrent samples, the minimum value, the mean value, the range of values, the median value, and the maximum value. The output is either to a named file or to the standard output.

celeste-profiler [--celeste-address address:port] [test*]

The default value for the --celeste-address parameter is 127.0.0.1:14000 which corresponds to TCP port 14000 on the local host.

If the programme is invoked without a value for the test parameter it will enter into a simple interactive loop where commands can be entered as input strings.

For example, running the profiler on a 2.93Ghz MacPro running 12 Celeste nodes:

Profiler example
$ celeste-profiler rtt:10,100,10,100,-
# Round Trip Time: 10 to 100 by 10 clients each performing 100 operations
Concurrent,Minimum,Mean,Range,Median,Maximum
10,2,5,4,6,6
20,3,9,8,10,11
30,7,11,6,12,13
40,10,13,4,14,14
50,11,15,7,16,18
60,14,17,5,18,19
70,16,21,8,22,24
80,17,24,10,25,27
90,18,29,14,30,32
100,20,29,12,30,32

Round-trip-time

This test measures the number of milliseconds to send a single round-trip message from the client to a Celeste node.

rtt:<initial>,<final>,<step>,<count>,<output>

initial: the initial number of concurrent clients
final: the final number of concurrent clients
step: the increment of the number of concurrent clients for each test
count: the number of messages to exchange.
output: the name of the output file, or '-' for standard output.

Bandwidth

This test measures the number of bytes-per-second that can be copied, message by message, from the client to the Celeste node and back.

bps:<initial>,<final>,<step>,<count>,<size>,<output>

initial: the initial number of concurrent clients
final: the final number of concurrent clients
step: the increment of the number of concurrent clients for each test
count: the number of messages to exchange.
size: the number of bytes in each message payload.
output: the name of the output file, or '-' for standard output.


Be aware of the memory requirement for exchanging final*size messages.
You may need adjustments to the maximum memory sizes for the JVM running celeste-profile.

Credentials

This test creates a set of unique credentials.

creds:<count>,<output>

count: the number of credentials to create
output: the name of the output file, or '-' for standard output.

Create

This test creates a set of unique files.

create:<initial>,<final>,<step>,<count>,<output>

initial: the initial number of concurrent clients
final: the final number of concurrent clients
step: the increment of the number of concurrent clients for each test
count: the number of files to create
output: the name of the output file, or '-' for standard output.

Write

This test writes data to a file.

write:<initial>,<final>,<step>,<count>,<output>

initial: the initial number of concurrent clients
final: the final number of concurrent clients
step: the increment of the number of concurrent clients for each test
count: the writes to perform
output: the name of the output file, or '-' for standard output.

Read

This test reads data from a file
read:<initial>,<final>,<step>,<count>,<output>

initial: the initial number of concurrent clients
final: the final number of concurrent clients
step: the increment of the number of concurrent clients for each test
count: the number of reads to perform
output: the name of the output file, or '-' for standard output.

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

Sign up or Log in to add a comment or watch this page.


The individuals who post here are part of the extended Sun Microsystems community and they might not be employed or in any way formally affiliated with Sun Microsystems. The opinions expressed here are their own, are not necessarily reviewed in advance by anyone but the individual authors, and neither Sun nor any other party necessarily agrees with them.

Copyright 1994-2009 Sun Microsystems, Inc.
Powered by Atlassian Confluence
Sun Guidelines on Public Discourse Privacy Policy Terms of Use Trademarks Site Map Employment Investor Relations Contact