X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/b7a0bd6d14b9d12d0caf498e34c54f7842a7edc7..c27063685d923b2edf0fbbcee0ad50c370dc9470:/ChangeLog diff --git a/ChangeLog b/ChangeLog index 8dc85ea024..dc403a964c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,33 +1,132 @@ -SimGrid (3.0.2) unstable; urgency=low +SimGrid (3.1.1) unstable; urgency=low + + GRAS: + * New module mecanism where user code can use per process globals [Mt] + This is similar to gras_userdata_*() functions, but for libraries. It + factorize some code developped over and over in the examples and AMOK. + It has still to be documented and used (only amok/peermanagement is + converted for now). + * Fix a vicious bug in the TCP buffering mecanism which leaded to message + loss when they were small enough to fit into the buffer and sent quickly + enough so that they can all get received in one shoot. + * gras_datadesc_by_name and gras_msgtype_by_name: now raise an exception + if not found. Use the *_or_null() variant for the old semantic. + * In gras_msg_handle, do not discard messages without callback. + They are probably messages to be explicitly awaited later (ie, proofs of + mis-synchronization in userland since they are sent before being awaited) + No big deal usually. + * gras_socket_meas_send/recv: semantic changed! + The numerical arguments used to be (1) the total amount of data to send + and (2) msg_size. This was changed to (1) msg_size and (2) amount of + messages. This was need for the fool willing to send more than MAXINT + bytes on quite fat pipes. + + + AMOK: + * Do really rename the hostmanagement module to peermanagement. [Mt] + Ie, rename functions from amok_hm_* to amok_pm_*. This breaks the API, + but this is rather new and this was documented in the module + documentation (poor excuses, I admit) + * Bandwidth measurement semantic changed! This follows the changes to + gras_socket_meas_send/recv explained above. + + SIMDAG: + * A sequential mode has been added to the workstations. When a workstation + is in sequential mode, it can execute only one task, and the other tasks + are waiting in a FIFO. [Christophe Thiery] + + SURF: + * The KCCFLN05 workstation model now handles parallel tasks. It is the + model for SIMDAG. [Christophe Thiery] + * Bug fix in the maxmin solver: Some values were close to 0 instead of + equal to 0, which caused some bad behaviors in + saturated_constraint_set_update. I now use a threshold mechanism like in + surf. [AL] XBT: - * New module: cunit (my jUnit implementation in ansi C) [MQ] - - Test units are placed directly into the library code, they get extracted - automatically and placed into the src/testall binary. - - Convert most of the XBT tests to this system. - * New functions: xbt_dynar_getfirst_as() and xbt_dynar_getlast_as() [MQ] - * XML parsing: rewrote parts of flexml to enable multiple xml parsers to - live in the same C code. This required to change a little bit the API - of surfxml parsing but shouldn't be an issue for end-users. [AL] - * New module: sparse graph structure with basic algorithms. [AL] - * Display more information on backtraces: source line & function names are - now displayed just like valgrind does (rely on addr2line tool) [MQ] - * New function: xbt_display_backtrace(). Sweet while debuging [MQ] + * When running manually src/testall, you select specific units [Mt] + testall is the result of our cunit mecanism, and should replace all + the scripty thingy around since bash don't run easily on billware. + + * A mallocator system has been added. [Christophe Thiery] + Mallocators allow you to recycle your unused objects instead of freeing them + and allocating new ones. + + Documentation update: + * FAQ reworking + New FAQs: + - "Valgrind spits tons of errors!" [Mt] + - "How to repport bugs" [Mt] + - "Cross-compiling a Windows DLL of SimGrid from Linux" [Mt] + - Communication time measurement within MSG [AL] + - I experience weird communication times when I change the latency [AL] + * GRAS tutorial [Mt] + It contains: + - an introduction to the framework and to the used communication model + - an initiatic tour introducing the most proheminent features: + # Part 1: Bases + . Lesson 0: Installing GRAS + . Lesson 1: Setting up your own project + # Part 2: Message passing + . Lesson 2: Exchanging simple messages + . Lesson 3: Passing arguments to the processes (in SG) + . Lesson 4: Attaching callbacks to messages + . Lesson 5: Using globals in processes + . Lesson 6: Logging informations properly + . Lesson 7: Using internal timers + . Lesson 8: Handling errors through exceptions + . Lesson 9: Exchanging simple data + More are due, of course. They will come latter. In the meanwhile, you can + check the examples which are still here. + -- + +SimGrid (3.1) unstable; urgency=low + + General: + * Port to gcc 4.x + There was a stack corruption somewhere, visible only when optimizing + with these versions. [Vince] + + SIMDAG: + * This is a NEW module! SimDAG (SD for short) is a revival of the old SG + module that enabled to play with Directed Acyclic Graphs. It is built + directly on top of SURF and provides an API rather close to the old + SG. Some old codes using SG are currently under rewrite to check that + all needful functions are provided. [Christophe Thiery] + SURF: - * complete rewrote of the KCCFLN05 workstation model. It is now an + * Complete rewrite of the KCCFLN05 workstation model. It is now an extension of the classical CLM03 model that gracefully handles - failures. This is now the standard model for MSG and GRAS. [AL] + failures. This is now the default model for MSG and GRAS. It doesn't + handle parallel tasks yet though. [AL] + * Bug fix: Weights were not correctly set in the network part. + WARNING: This may have resulted in incorrect results with simulations + where there are more than one flow on a given link. [AL] + + SURF, MSG, GRAS: + * After a (long ?) discussion on simgrid-devel, we have decided that the + convention we had on units was stupid. That is why it has been decided + to move from (MBits, MFlops, seconds) to (Bits, Flops, seconds). + WARNING : This means that all previous platform files will not work as + such with this version! A warning is issued to ask users to update + their files. [AL] + A conversion script can be found in the contrib module of the CVS, under + the name contrib/platform_generation/surfxml_update.pl [MQ] MSG,GRAS: * Bug fix: Processes were started in reverse order, wrt deployment file. WARNING: if your code relies on this bug, please fix it. [AL] * Bug fix: Add a test in MSG_task_execute to stop whenever a task is being executed on two different locations. [AL] + * Bug fix: Failures are now better supported thanks to Derrick's tests + (there was many failure situations I hadn't thought of and that weren't + correctly handled). [AL] + * New function: MSG_host_is_avail indicates you whether a given m_host_t + is up or down. [AL] GRAS: * New! a real RPC mecanism, as it ought to be since too long. [MQ] - Exception occuring on server-side are propagated back to client (!). + Exception occurring on server-side are propagated back to client (!). API CHANGE: the callback changed their prototype. Change: int my_handler(gras_socket_t expeditor, void *payload_data) { @@ -35,15 +134,47 @@ SimGrid (3.0.2) unstable; urgency=low int my_handler(gras_msg_cb_ctx_t ctx , void *payload_data) { gras_socket_t expeditor=gras_msg_cb_ctx_from(ctx); and you're set. + * New! function: gras_msg_handleall to deal with all messages arriving + within a given period. + * New! function: gras_socket_server_range to get a server socket in a + range of port numbers (ease to avoid port number conflicts) [MQ] + * New! gras processes display their backtrace when they get a SIGUSR1 + or when Ctrl-C is pressed. Use Ctrl-C Ctrl-C to exit. + Sweet to debug RL processes [MQ] AMOK: * Bandwidth module: - Do not force experiment sizes to be expressed in kb, or it becomes - impossible to mesure the latency this way (needs one byte-long tests) + impossible to measure the latency this way (needs one byte-long tests) WARNING: this changes the amok_bw_* function semantic. [MQ] - Implements the link saturation stuff. [MQ] + * Peer management module: + New! module factorizing code that we wrote over and over [MQ]. - -- + XBT: + * New module: cunit (my jUnit implementation in ansi C) [MQ] + - Test units are placed directly into the library code, they get extracted + automatically and placed into the src/testall binary. + - Convert most of the XBT tests to this system. + * New functions: xbt_dynar_getfirst_as() and xbt_dynar_getlast_as() [MQ] + * XML parsing: rewrote parts of flexml to enable multiple xml parsers to + live in the same C code. This required to change a little bit the API + of surfxml parsing but shouldn't be an issue for end-users. [AL] + * New module: sparse graph structure with basic algorithms (this is work + in progress and the API is not considered to be frozen yet). [AL] + * Display more information on backtraces: source line & function names are + now displayed just like valgrind does (rely on addr2line tool) [MQ] + * New function: xbt_backtrace_display(). Sweet while debuging [MQ] + * Reworked a little bit some #include statements to load only required + headers. Some user code that relied on SimGrid to include stdlib or + stdio may need to include it by themselves. [AL] + * Fixed xbt/log.h. A missing SG_BEGIN_DECL prevented compilation with + g++. [AL] + * Renamed xbt_host_t into xbt_peer_t since it betterly describes what I + meant. This breaks the API of AMOK and of xbt/config. Sorry about this, + but I guess that almost nobody used those parts. [MQ] + + -- Da SimGrid team Fri, 14 Jul 2006 01:32:27 +0200 SimGrid (3.0.1) unstable; urgency=low