Performance Zone is brought to you in partnership with:

Peter is a DZone MVB and is not an employee of DZone and has posted 158 posts at DZone. You can read more from them at their website. View Full User Profile

How fast are Java Datagrams?

12.21.2012
| 4739 views |
  • submit to reddit

Overview

Following my article How fast are Java sockets, this article follows the same tests except for Datagrams which use UDP rather than TCP.

The timings

The tests are the same except Datagrams don't support busy waiting in Java 6 which hurts the Threaded Ping latency

UDP Pings per second 224 K/s
UDP Pings latency was 1/50/99%tile 4.1/4.2/4.7 us
Threaded UDP Pings per second 131 K/s
Threaded UDP Pings latency was 1/50/99%tile 9.8/11.0/33.2 us

Comparison


Test  Threaded  Throughput Typical latency
Datagram Ping no 224 K/s  4.2 μs
Socket Ping no 170 K/s  5.8 μs
Datagram Ping yes 131 K/s 11.0 μs
Socket Ping yes 235 K/s 8.5 μs

The Code

DatagramPingTest.java
Published at DZone with permission of Peter Lawrey, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)