[netperf-dev] netperf2 commit notice r210 - trunk/src

raj at netperf.org raj at netperf.org
Sat Feb 2 21:01:49 PST 2008


Author: raj
Date: 2008-02-02 21:01:48 -0800 (Sat, 02 Feb 2008)
New Revision: 210

Modified:
   trunk/src/nettest_bsd.h
   trunk/src/nettest_omni.c
Log:
doubles are trouble double your fun send two 32s not 64 one

Modified: trunk/src/nettest_bsd.h
===================================================================
--- trunk/src/nettest_bsd.h	2008-02-02 02:17:52 UTC (rev 209)
+++ trunk/src/nettest_bsd.h	2008-02-03 05:01:48 UTC (rev 210)
@@ -89,11 +89,13 @@
 };
 
 struct omni_results_struct {
-  double     bytes_received;
+  uint32_t   bytes_received_hi;  /* why? because we cannot easily send */
+  uint32_t   bytes_received_lo;  /* uint64_t or doubles between endianess */
   uint32_t   recv_calls;
   int32_t    recv_buf_size; /* SO_RCVBUF at end of test */
 
-  double     bytes_sent;
+  uint32_t   bytes_sent_hi;
+  uint32_t   bytes_sent_lo;
   uint32_t   send_calls;
   int32_t    send_buf_size; /* SO_SNDBUF at end of test */
   uint32_t   failed_sends;

Modified: trunk/src/nettest_omni.c
===================================================================
--- trunk/src/nettest_omni.c	2008-02-02 02:17:52 UTC (rev 209)
+++ trunk/src/nettest_omni.c	2008-02-03 05:01:48 UTC (rev 210)
@@ -3750,19 +3750,20 @@
 	lib_remote_peak_cpu_id = omni_result->peak_cpu_id;
 	rsr_size_end = omni_result->recv_buf_size;
 	rss_size_end = omni_result->send_buf_size;
-	remote_bytes_sent = omni_result->bytes_sent;
+	remote_bytes_sent = (uint64_t)omni_result->bytes_sent_hi << 32;
+	remote_bytes_sent += omni_result->bytes_sent_lo;
 	remote_send_calls = omni_result->send_calls;
-	remote_bytes_received = omni_result->bytes_received;
+	remote_bytes_received = (uint64_t)omni_result->bytes_received_hi << 32;
+	remote_bytes_received += omni_result->bytes_received_lo;
 	remote_receive_calls = omni_result->recv_calls;
-	remote_bytes_xferd = omni_result->bytes_received +
-	  omni_result->bytes_sent;
+	remote_bytes_xferd = remote_bytes_received + remote_bytes_sent;
 	if (omni_result->recv_calls > 0)
-	  remote_bytes_per_recv = (double) omni_result->bytes_received /
+	  remote_bytes_per_recv = (double) remote_bytes_received /
 	    (double) omni_result->recv_calls;
 	else
 	  remote_bytes_per_recv = 0.0;
 	if (omni_result->send_calls > 0)
-	  remote_bytes_per_send = (double) omni_result->bytes_received /
+	  remote_bytes_per_send = (double) remote_bytes_sent /
 	    (double) omni_result->send_calls;
 	else
 	  remote_bytes_per_send = 0.0;
@@ -4543,10 +4544,12 @@
   /* send the results to the sender  */
   
   omni_results->send_calls      = local_send_calls;
-  omni_results->bytes_received	= bytes_received;
+  omni_results->bytes_received_lo = bytes_received & 0x00000000FFFFFFFFULL;
+  omni_results->bytes_received_hi = (bytes_received & 0xFFFFFFFF00000000ULL) >> 32;
   omni_results->recv_buf_size   = lsr_size_end;
   omni_results->recv_calls      = local_receive_calls;
-  omni_results->bytes_sent      = bytes_sent;
+  omni_results->bytes_sent_lo   = bytes_sent & 0x00000000FFFFFFFFULL;
+  omni_results->bytes_sent_hi   = (bytes_sent & 0xFFFFFFFF00000000ULL) >> 32;
   omni_results->send_buf_size   = lss_size_end;
   omni_results->trans_received	= trans_completed;
   omni_results->elapsed_time	= elapsed_time;



More information about the netperf-dev mailing list