Ultra Messaging (UM) allows for collection of timestamp information from SolarFlare NICs when a packet is published onto the wire, and when that packet is received from the wire at the incoming NIC.
However, these two timestamps only reflect the elapsed time between the two NICs. For a more complete view of where latency might be occurring, the sending application should also collect the current time prior to calling the source send API. Likewise, the receiving application should collect the current time from within the application callback function which is handling message delivery.
Solarflare recommends the use of the clock_gettime() API call to collect the "current" time.
With these four timestamps, a more complete analysis of where latency is occurring between the two applications can be performed.
What can we do to improve this information (2000 or fewer characters)