/* amok_bandwidth - Bandwidth tests facilities */
-/* Copyright (c) 2003-6 Martin Quinson. */
-/* Copyright (c) 2006 Ahmed Harbaoui. */
-/* All rights reserved. */
+/* Copyright (c) 2004, 2005, 2006, 2007, 2009, 2010. The SimGrid Team.
+ * All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
gras_datadesc_struct_close(bw_res_desc);
bw_res_desc = gras_datadesc_ref("bw_res_t", bw_res_desc);
- gras_msgtype_declare_rpc("BW handshake", bw_request_desc, bw_request_desc);
+ gras_msgtype_declare_rpc("BW handshake", bw_request_desc,
+ bw_request_desc);
gras_msgtype_declare_rpc("BW reask", bw_request_desc, NULL);
gras_msgtype_declare("BW stop", NULL);
request->msg_amount = msg_amount;
request->peer.name = NULL;
request->peer.port = gras_socket_my_port(measMasterIn);
- DEBUG6
- ("Handshaking with %s:%d to connect it back on my %d (bufsize=%ld, msg_size=%ld, msg_amount=%ld)",
- gras_socket_peer_name(peer), gras_socket_peer_port(peer),
- request->peer.port, request->buf_size, request->msg_size,
- request->msg_amount);
+ XBT_DEBUG
+ ("Handshaking with %s:%d to connect it back on my %d (bufsize=%ld, msg_size=%ld, msg_amount=%ld)",
+ gras_socket_peer_name(peer), gras_socket_peer_port(peer),
+ request->peer.port, request->buf_size, request->msg_size,
+ request->msg_amount);
TRY {
gras_msg_rpccall(peer, 15, "BW handshake", &request, &request_ack);
}
CATCH(e) {
RETHROW2
- ("Error encountered while opening the measurement socket to %s:%d for BW test: %s",
- gras_socket_peer_name(peer), request_ack->peer.port);
+ ("Error encountered while opening the measurement socket to %s:%d for BW test: %s",
+ gras_socket_peer_name(peer), request_ack->peer.port);
}
- DEBUG2("Got ACK; conduct the experiment (msg_size = %ld, msg_amount=%ld)",
- request->msg_size, request->msg_amount);
+ XBT_DEBUG
+ ("Got ACK; conduct the experiment (msg_size = %ld, msg_amount=%ld)",
+ request->msg_size, request->msg_amount);
*sec = 0;
first_pass = 1;
And then increase the number of messages to compensate (check for overflow there, too) */
if (request->msg_size > 64 * 1024 * 1024) {
unsigned long int new_amount =
- ((request->msg_size / ((double) 64 * 1024 * 1024))
- * request->msg_amount) + 1;
+ ((request->msg_size / ((double) 64 * 1024 * 1024))
+ * request->msg_amount) + 1;
xbt_assert0(new_amount > request->msg_amount,
"Overflow on the number of messages! You must have a *really* fat pipe. Please fix your platform");
request->msg_size = 64 * 1024 * 1024;
}
- VERB5
- ("The experiment was too short (%f sec<%f sec). Redo it with msg_size=%lu (nb_messages=%lu) (got %fMb/s)",
- meas_duration, min_duration, request->msg_size, request->msg_amount,
- ((double) request->msg_size) * ((double) request->msg_amount /
- (*sec) / 1024.0 / 1024.0));
+ XBT_VERB
+ ("The experiment was too short (%f sec<%f sec). Redo it with msg_size=%lu (nb_messages=%lu) (got %fMb/s)",
+ meas_duration, min_duration, request->msg_size,
+ request->msg_amount,
+ ((double) request->msg_size) * ((double) request->msg_amount /
+ (*sec) / 1024.0 / 1024.0));
gras_msg_rpccall(peer, 60, "BW reask", &request, NULL);
}
TRY {
gras_socket_meas_send(measOut, 120, request->msg_size,
request->msg_amount);
- DEBUG0("Data sent. Wait ACK");
+ XBT_DEBUG("Data sent. Wait ACK");
gras_socket_meas_recv(measIn, 120, 1, 1);
} CATCH(e) {
gras_socket_close(measOut);
*sec = gras_os_time() - *sec;
if (*sec != 0.0) {
*bw =
- ((double) request->msg_size) * ((double) request->msg_amount) /
- (*sec);
+ ((double) request->msg_size) * ((double) request->msg_amount) /
+ (*sec);
}
- DEBUG1("Experiment done ; it took %f sec", *sec);
+ XBT_DEBUG("Experiment done ; it took %f sec", *sec);
if (*sec <= 0) {
- CRITICAL1("Nonpositive value (%f) found for BW test time.", *sec);
+ XBT_CRITICAL("Nonpositive value (%f) found for BW test time.", *sec);
}
} while (*sec < min_duration);
- DEBUG2("This measurement was long enough (%f sec; found %f b/s). Stop peer",
- *sec, *bw);
+ XBT_DEBUG
+ ("This measurement was long enough (%f sec; found %f b/s). Stop peer",
+ *sec, *bw);
gras_msg_send(peer, "BW stop", NULL);
free(request_ack);
gras_msg_cb_ctx_t ctx_reask;
static xbt_dynar_t msgtwaited = NULL;
- DEBUG5
- ("Handshaked to connect to %s:%d (sizes: buf=%lu msg=%lu msg_amount=%lu)",
- gras_socket_peer_name(expeditor), request->peer.port, request->buf_size,
- request->msg_size, request->msg_amount);
+ XBT_DEBUG
+ ("Handshaked to connect to %s:%d (sizes: buf=%lu msg=%lu msg_amount=%lu)",
+ gras_socket_peer_name(expeditor), request->peer.port,
+ request->buf_size, request->msg_size, request->msg_amount);
/* Build our answer */
answer = xbt_new0(s_bw_request_t, 1);
else
/* FIXME: tell error to remote */
RETHROW0
- ("Error encountered while opening a measurement server socket: %s");
+ ("Error encountered while opening a measurement server socket: %s");
}
}
}
CATCH(e) {
RETHROW2
- ("Error encountered while opening a measurement socket back to %s:%d : %s",
- gras_socket_peer_name(expeditor), request->peer.port);
+ ("Error encountered while opening a measurement socket back to %s:%d : %s",
+ gras_socket_peer_name(expeditor), request->peer.port);
/* FIXME: tell error to remote */
}
TRY {
measIn = gras_socket_meas_accept(measMasterIn);
- DEBUG4
- ("BW handshake answered. buf_size=%lu msg_size=%lu msg_amount=%lu port=%d",
- answer->buf_size, answer->msg_size, answer->msg_amount,
- answer->peer.port);
+ XBT_DEBUG
+ ("BW handshake answered. buf_size=%lu msg_size=%lu msg_amount=%lu port=%d",
+ answer->buf_size, answer->msg_size, answer->msg_amount,
+ answer->peer.port);
}
CATCH(e) {
gras_socket_close(measMasterIn);
tooshort = 1;
free(request);
request = (bw_request_t) payload;
- VERB0("Return the reasking RPC");
+ XBT_VERB("Return the reasking RPC");
gras_msg_rpcreturn(60, ctx_reask, NULL);
}
gras_msg_cb_ctx_free(ctx_reask);
gras_socket_close(measOut);
free(answer);
free(request);
- VERB0("BW experiment done.");
+ XBT_VERB("BW experiment done.");
return 0;
}
- DEBUG4("Ask for a BW test between %s:%d and %s:%d", from_name, from_port,
+ XBT_DEBUG("Ask for a BW test between %s:%d and %s:%d", from_name, from_port,
to_name, to_port);
gras_msg_rpccall(sock, 20 * 60, "BW request", &request, &result);
if (bw)
*bw = result->bw;
- VERB6("BW test (%s:%d -> %s:%d) took %f sec (%f kb/s)",
+ XBT_VERB("BW test (%s:%d -> %s:%d) took %f sec (%f kb/s)",
from_name, from_port, to_name, to_port,
result->sec, ((double) result->bw) / 1024.0);
gras_socket_t peer, asker;
asker = gras_msg_cb_ctx_from(ctx);
- VERB6("Asked by %s:%d to conduct a bw XP with %s:%d (request: %ld %ld)",
+ XBT_VERB("Asked by %s:%d to conduct a bw XP with %s:%d (request: %ld %ld)",
gras_socket_peer_name(asker), gras_socket_peer_port(asker),
request->peer.name, request->peer.port,
request->msg_size, request->msg_amount);
if (i != j) {
/* Mesurements of Bandwidth */
amok_bw_request(p1->name, p1->port, p2->name, p2->port,
- buf_size_bw, msg_size_bw, msg_amount_bw, min_duration,
- &sec, &matrix_res[i * len + j]);
+ buf_size_bw, msg_size_bw, msg_amount_bw,
+ min_duration, &sec, &matrix_res[i * len + j]);
}
}
}