X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/e38d01e7b27d128a6d756194166ce8e0445a33b2..00001ff70f922b49f8c77737617d98f8d6f110e9:/include/amok/bandwidth.h diff --git a/include/amok/bandwidth.h b/include/amok/bandwidth.h index 884fb196e6..ec2d1b6c70 100644 --- a/include/amok/bandwidth.h +++ b/include/amok/bandwidth.h @@ -2,11 +2,10 @@ /* amok_bandwidth - Bandwidth test facilities */ -/* Authors: Martin Quinson */ -/* Copyright (C) 2003, 2004 the OURAGAN project. */ +/* Copyright (c) 2003-2005 Martin Quinson. 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. */ + * under the terms of the license (GNU LGPL) which comes with this package. */ #ifndef AMOK_BANDWIDTH_H #define AMOK_BANDWIDTH_H @@ -15,53 +14,39 @@ /* module handling */ -void amok_bw_init(void); -void amok_bw_exit(void); - - -/* *************************************************************************** - * Bandwidth tests - * ***************************************************************************/ -/** - * amok_bw_test: - * @peer: A (regular) socket at which the the host with which we should conduct the experiment can be contacted - * @buf_size: Size of the socket buffer - * @exp_size: Total size of data sent across the network - * @msg_size: Size of each message sent. Ie, (@expSize % @msgSize) messages will be sent. - * @sec: where the result (in seconds) should be stored. - * @bw: observed Bandwidth (in Mb/s) +/** \addtogroup AMOK_bw + * \brief Test the bandwidth between two nodes + * + * This module allows you to retrieve the bandwidth between to arbitrary hosts, + * provided that they run some GRAS process which initialized this module. + * + * The API is very simple. Use amok_bw_test() to get the BW between the local host + * and the specified peer, or amok_bw_request() to get the BW between two remote + * hosts. The elapsed time, as long as the achieved bandwidth is returned in the + * last arguments of the functions. + * + * All sizes are in kilo bytes. + * + * \todo Cleanup and implement the link saturation stuff. * - * Conduct a bandwidth test from the local process to the given peer. - * This call is blocking until the end of the experiment. + * @{ */ -gras_error_t amok_bw_test(gras_socket_t peer, - unsigned int buf_size,unsigned int exp_size,unsigned int msg_size, + +void amok_bw_init(void); +void amok_bw_exit(void); + +xbt_error_t amok_bw_test(gras_socket_t peer, + unsigned long int buf_size,unsigned long int exp_size,unsigned long int msg_size, /*OUT*/ double *sec, double *bw); -#if 0 -/** - * grasbw_request: - * @from_name: Name of the host we are asking to do a experiment with (to_name:to_port) - * @from_port: port on which the process we are asking for an experiment is listening for message - * @to_name: Name of the host with which we should conduct the experiment - * @to_port: port on which the peer process is listening (for message, do not - * give a raw socket here. The needed raw socket will be negociated between - * the peers) - * @bufSize: Size of the socket buffer - * @expSize: Total size of data sent across the network - * @msgSize: Size of each message sent. Ie, (@expSize % @msgSize) messages will be sent. - * @sec: where the result (in seconds) should be stored. - * @bw: observed Bandwidth (in Mb/s) - * - * Conduct a bandwidth test from the process from_host:from_port to to_host:to_port. - * This call is blocking until the end of the experiment. - */ -gras_error_t grasbw_request(const char* from_name,unsigned int from_port, +xbt_error_t amok_bw_request(const char* from_name,unsigned int from_port, const char* to_name,unsigned int to_port, - unsigned int bufSize,unsigned int expSize,unsigned int msgSize, + unsigned long int bufSize,unsigned long int expSize,unsigned long int msgSize, /*OUT*/ double *sec, double*bw); +/** @} */ +#if 0 /* *************************************************************************** * Link saturation @@ -81,7 +66,7 @@ gras_error_t grasbw_request(const char* from_name,unsigned int from_port, * Ask the process 'from_name:from_port' to start to saturate the link between itself * and to_name:to_name. */ -gras_error_t grasbw_saturate_start(const char* from_name,unsigned int from_port, +xbt_error_t grasbw_saturate_start(const char* from_name,unsigned int from_port, const char* to_name,unsigned int to_port, unsigned int msgSize, unsigned int timeout); @@ -97,7 +82,7 @@ gras_error_t grasbw_saturate_start(const char* from_name,unsigned int from_port, * Ask the process 'from_name:from_port' to stop saturating the link between itself * and to_name:to_name. */ -gras_error_t grasbw_saturate_stop(const char* from_name,unsigned int from_port, +xbt_error_t grasbw_saturate_stop(const char* from_name,unsigned int from_port, const char* to_name,unsigned int to_port);