Hello.
I've tested Corosync latency without IPC.
First, I've found a Pload module and instrumented it's data messages
with TSC values, so become able to measure CPU ticks spending in the
Corosync stack for each message.
Second, I've measured the average ticks to pass 300 bytes messages in
different batch sizes with and without Totem on a single node.
Totem disabling was carried out in accordance to the "[PATCH] Example
short-circuit of totem for single node cases - for TESTING ONLY" message
of 18 May from this maillist.
bindnetaddr: 127.0.0.1
hold: 0
I have run corosync with the CPU affinity set to a single hyper-thread
to prevent the process from loosing cache and context switching, though
it does not help a lot: the results are stable for 10000 and 100000 only.
# taskset 0x1 /usr/sbin/corosync -f
The latency (in ticks)/throughput(in TP/S) for each variant:
batch size| with Totem | w/o Totem
1 | 596K/5.4M | 58K/5M
10 | 0.8M/1.9M | 82K/3M
100 | 5.0M/1.2M | 5M/0.9M
1000 | 7.9M/1.4M | 8M/1.3M
10000 | 24.4M/2.0M | 23M/2.1M
100000 | 31.8M/1.2M | 31M/1.3M
There is a strong gap in latencies for 1 and 10 message batches: some of
the cases are small (tens kiloticks), and some of them are big (millions
ticks). I have no explanation.
The latency seems to not depend on the totem realization, but looks very
high. Am I doing something wrong?
Thanks.
-- VV
_______________________________________________
discuss mailing list
discuss@xxxxxxxxxxxx
http://lists.corosync.org/mailman/listinfo/discuss