The Ring Demo
ring - test the performance of Horus.
SYNOPSIS
ring [-cldh] [-n nmembers] [-s msgsize] [-r nrounds]
[-k nmsgs_per_round] [-t protocol]
[-R debug_rounds] [-f priority] [-S local_msgsize]
DESCRIPTION
Ring tests the performance of Horus. It starts a group
with the specified number of members and runs the following
scenario for the specified number of rounds: each member sends
the specified number of messages of the specified size to all
other members and wait for messages from other members.
In the COORDINATOR_ONLY mode, only the coordinator sends the
specified number of messages. Other members sends only one
message per round for synchronization purpose.
Ring measures the time for the entire run and computes various
figures averaged over multiple rounds. Latency, throughput,
and bandwidth can be measured by specifying the following set of
parameters:
msgs/round message size
-----------------------------------------
latency 1 1
throughput large 1
bandwidth 1 large
To designate a member as the coordinator, start it with one
of command options n, s, k, or r specified. Starting a new
coordinator overwrites any existing name server entry for
the ring group, and effectively starts a new run of testing.
A typical usage for a coordinator:
ring [-n#] [-s#] [-r#] [-k#] [-t protocol]
A typical usage for a non coordinator:
ring [-t protocol]
As with any Horus application, a directory server (dirsver)
must be started before starting any ring process.
OPTIONS
- -n nmembers
Specify the number of members.
- -s msgsize
Specify the message size.
- -k nmsgs_per_round
Specify the number of members.
- -r nrounds
Specify the number of rounds.
- -t protocol
Specify the protocol stack.
- -c
Turn on RING_COORD_ONLY option.
- -l
Turn on RING_LAZY option, which turns on Horus XXX_LAZY option.
- -d
Print debugging messages.
- -h
Print usage.
- -R debug_rounds
Print '.' on standard output every time the specified number
of rounds complete.
- -f priority
Specify priority for ring_group_event thread.
- -S local_msgsize
Specify the size message to be sent from this member.
Overwrites the size specified by -s.
FILES
horus/src/hutil/ring.c
AUTHOR
Robbert van Renesse
BUGS
Changing the priority of threads may drastically change the
behavior of the program.