Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
snake_case simix/blocking_simcall.hpp
[simgrid.git] / NEWS
1                     _               _____  ____   ___
2 __   _____ _ __ ___(_) ___  _ __   |___ / |___ \ / _ \
3 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \   __) | | | |
4  \ V /  __/ |  \__ \ | (_) | | | |  ___) | / __/| |_| |
5   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_____|\___/
6                (NOT RELEASED)
7
8
9  * Sanitize the public API. Compatibility wrappers in place for one year.
10  * MPI: Port the trace replay engine to C++, fix visualization
11
12                     _               _____  _  ___   _
13 __   _____ _ __ ___(_) ___  _ __   |___ / / |/ _ \ / |
14 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | | (_) || |
15  \ V /  __/ |  \__ \ | (_) | | | |  ___) || |\__, || |
16   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|  /_(_)_|
17                March 22 2018
18
19 The Fixed ABI release.
20
21  * Reduce the changes to the binary interface of MSG,
22    accidentally introduced by v3.19.
23                     _               _____  _  ___
24 __   _____ _ __ ___(_) ___  _ __   |___ / / |/ _ \
25 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | | (_) |
26  \ V /  __/ |  \__ \ | (_) | | | |  ___) || |\__, |
27   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|  /_/
28                March 20 2018
29
30 The Moscovitly-cold Spring release.
31
32  * SMPI: Allow to start new actors and ranks after simulation start.
33  * SMPI: Support ICC, better testing on classical proxy apps.
34  * Some kernel headers are now installed, allowing external plugins.
35  * (+ the classical bug fixes and doc improvement)
36                     _               _____  _  ___
37 __   _____ _ __ ___(_) ___  _ __   |___ / / |( _ )
38 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | |/ _ \
39  \ V /  __/ |  \__ \ | (_) | | | |  ___) || | (_) |
40   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|\___/
41                December 24 2017
42
43 The "Ho Ho Ho! SimGrid 4 beta is coming to town" release.
44   SimGrid 4 *may* be there by the next solstice.
45
46  * Convert almost all interesting MSG examples to S4U.
47  * New model: energy consumption due to the network.
48  * Major cleanups in the disk and storage subsystems.
49  * (+ further deprecate XBT, bug fixes and doc improvement)
50                     _               _____  _ _____
51 __   _____ _ __ ___(_) ___  _ __   |___ / / |___  |
52 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | |  / /
53  \ V /  __/ |  \__ \ | (_) | | | |  ___) || | / /
54   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|/_/
55                October 8 2017
56
57 The Drained Leaks release: (almost) no known leaks despite the tests.
58
59  * Many many internal cleanups (almost 700 commits since 3.16).
60  * The coverage of our tests is above 80%.
61  * All memleaks but one plugged; A dozen of bugs fixed.
62  * XBT: Further replace XBT with std::* constructs.
63                     _               _____  _  __
64 __   _____ _ __ ___(_) ___  _ __   |___ / / |/ /_
65 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | | '_ \
66  \ V /  __/ |  \__ \ | (_) | | | |  ___) || | (_) |
67   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|\___/
68                June 22 2017
69
70 The Blooming Spring Release: developments are budding.
71
72  * S4U: Progress; Activity refcounting is now automatic.
73  * XML: <AS> can now be named <zone> as they should.
74  * SMPI: Further performance improvements; RMA support.
75  * Cloud: Multi-core VMs (do not overcommit them yet)
76  * (+ bug fixes, cleanups and documentation improvements)
77                     _               _____  _ ____
78 __   _____ _ __ ___(_) ___  _ __   |___ / / | ___|
79 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | |___ \
80  \ V /  __/ |  \__ \ | (_) | | | |  ___) || |___) |
81   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|____/
82                Mar 22 2017
83
84 The Spring Release: continuous integration servers become green.
85
86  * S4U: progress, integrating more parts of SimDag; New examples.
87  * SMPI: Support MPI 2.2; Convert internals to C++ (TBC).
88  * Java: Massive memleaks and performance issues fixed.
89  * (+ bug fixes, cleanups and documentation improvements)
90                     _               _____  _ _  _    _ ____  ___
91 __   _____ _ __ ___(_) ___  _ __   |___ / / | || |  / | ___|/ _ \
92 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | | || |_ | |___ \ (_) |
93  \ V /  __/ |  \__ \ | (_) | | | |  ___) || |__   _|| |___) \__, |
94   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|  |_|(_)_|____/  /_/
95                Dec 28 2016
96
97 The Christmas Pi Release (better approximation).
98
99  * Fix various glitches in the previous release.
100                     _               _____  _ _  _
101 __   _____ _ __ ___(_) ___  _ __   |___ / / | || |
102 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | | || |_
103  \ V /  __/ |  \__ \ | (_) | | | |  ___) || |__   _|
104   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|  |_|
105                Dec 24 2016
106
107 The Christmas Pi Release.
108
109  * Documentation reorganized and improved
110
111  * S4U interface further rising, toward SimGrid 4
112    - Routing code rewritten for readability
113    - Virtual Machines almost turned into a plugin
114    - MSG, SimDag, MPI interfaces mostly unchanged
115    
116  * The model-checker now works on FreeBSD too.
117                     _               _____  _ _____
118 __   _____ _ __ ___(_) ___  _ __   |___ / / |___ /
119 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | | |_ \
120  \ V /  __/ |  \__ \ | (_) | | | |  ___) || |___) |
121   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|____/
122                 Apr 27 2016
123
124 The Half Release, a.k.a. the Zealous Easter Trim.
125
126  * Half of the lines of code are gone.
127    - v3.12: 286k lines; v3.13: 142k lines (+ comments)
128    - Experimental untested unused "features" removed
129    - We rewrote several parts in C++ instead of C
130
131  * Introducing v4 of the XML platform format
132    - Many long-due cleanups (details in the Changelog)
133
134  * MSG examples fully reorganized (in C and Java)
135
136  * The S4U interface is rising, toward SimGrid 4
137    - All host manipulations now done in S4U
138    - SimDag was mostly rewritten on top of S4U
139    - MSG & SimDag interfaces mostly unchanged
140                     _               _____  _ ____
141 __   _____ _ __ ___(_) ___  _ __   |___ / / |___ \
142 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | | __) |
143  \ V /  __/ |  \__ \ | (_) | | | |  ___) || |/ __/
144   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|_____|
145                 Oct 12 2015
146
147 The Facelift Release. Major changes:
148
149  * Many interface glitches addressed, everywhere.
150    - Require g++-4.7, Java 7 and boost 1.48
151    - Builds on Linux, OS X, Windows and FreeBSD
152    - See ChangeLog for renamed functions and options.
153
154  * Energy plugin: major cleanups/rewrites.
155    http://simgrid.org/tutorials/simgrid-energy-101.pdf
156
157  * Model-Checker progresses toward production use:
158    - More robust (now runs in a separate process).
159    - More efficient (with snapshots' memory compaction).
160    - More usable (execution paths replayed out of MC)
161    http://simgrid.org/tutorials/simgrid-mc-101.pdf
162
163  * SMPI improvements:
164    - Better standard coverage  - SMP-aware collectives
165    - InfiniBand model          - Early support for RMA
166    - Replay: Dynamic selector  - MVAPICH2 selector
167    http://simgrid.org/tutorials/simgrid-smpi-101.pdf
168
169 Upcoming v3.13 will introduce new interfaces, toward SimGrid 4.
170
171                     _               _____  _ _
172 __   _____ _ __ ___(_) ___  _ __   |___ / / / |
173 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | | |
174  \ V /  __/ |  \__ \ | (_) | | | |  ___) || | |
175   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|_|
176                 May 31 2014
177
178 The Class Release. Major changes:
179
180  * Surf is now in C++ (and documented!)
181  * Virtual Machine model for Cloud Simulation
182  * Surf callbacks: plug your code directly in Surf!
183  * Simcalls are script-generated to clean the mess
184
185                     _               _____  _  ___
186 __   _____ _ __ ___(_) ___  _ __   |___ / / |/ _ \
187 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | | | | |
188  \ V /  __/ |  \__ \ | (_) | | | |  ___) || | |_| |
189   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|\___/
190                 Nov 17 2013
191
192 The Clean Diaper Release, a.k.a. SimGrid is leak-free. Major changes:
193
194  * Preliminary DVFS support to track the energy consumption
195  * Java is back in the main package (and is very stable).
196  * The storage sub-modules is now believed to be usable.
197  * SMPI is now very stable (we pass most MPICH tests).
198  * Lots of memory leaks were corrected in this release.
199  * Verification and model checking further improved:
200    liveness+SMPI works; reduction through state equality detection
201  Plus the usual load of bug fixes and small improvements
202
203                     _               _____ ___
204 __   _____ _ __ ___(_) ___  _ __   |___ // _ \
205 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ (_) |
206  \ V /  __/ |  \__ \ | (_) | | | |  ___) \__, |
207   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)/_/
208                 Feb 5 2013
209
210 The "Grasgory" release. Major changes:
211
212  * Gras was completely removed from this version.
213  * Documentation reorganization to ease browsing it.
214  * New default value for the TCP_gamma parameter: 4MiB
215
216                     _               _____  ___   _
217 __   _____ _ __ ___(_) ___  _ __   |___ / ( _ ) / |
218 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ / _ \ | |
219  \ V /  __/ |  \__ \ | (_) | | | |  ___) | (_) || |
220   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)___(_)_|
221                 Oct 27 2012
222
223 The "we are told that some people want to also *install* the simgrid
224 framework" release.
225
226  * Add missing manpage to the archive.
227
228                     _               _____  ___
229 __   _____ _ __ ___(_) ___  _ __   |___ / ( _ )
230 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ / _ \
231  \ V /  __/ |  \__ \ | (_) | | | |  ___) | (_) |
232   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)___/
233                 Oct 25 2012
234
235 The Psssshiiiit release: SimGrid jumps into the Cloud.
236 Major changes:
237
238  * Experimental interface to manipulate VMs, EC2-style.
239  * Fixes around process restart and stochastic workloads
240  * platf: New C interface to create fixed or random platforms
241  * SimDag: Many fixes and improvements of typed tasks
242  * SMPI now covers more of the MPI interface.
243    More datatypes, more functions, more robust.
244  * Model-checking: mmalloc is more robust to user errors.
245
246                     _               _____ _____ _
247 __   _____ _ __ ___(_) ___  _ __   |___ /|___  / |
248 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \   / /| |
249  \ V /  __/ |  \__ \ | (_) | | | |  ___) | / /_| |
250   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_/(_)_|
251                 June 7 2012
252
253 The "cleaning the cleanup" release. Major changes:
254
255  * Portability fixups for Mac OSX and Windows
256  * Some other bug fixing and various polishing.
257
258                     _               ____  _____
259 __   _____ _ __ ___(_) ___  _ __   |___ /|___  |
260 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \   / /
261  \ V /  __/ |  \__ \ | (_) | | | |  ___) | / /
262   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_/
263                 May 15 2012
264
265 The "spring cleanups (before the next Big Project kicks in)" release.
266 Major changes:
267
268  * Major cleanups all around (doc, user options, MSG, Lua, internals)
269    Small backward compatibility glitches may have been introduced
270  * Parallel execution of user code should be stable and efficient now
271  * SMPI is now considered stable
272  * Add temporals to Model-Checking (highly experimental right now)
273
274                     _               _____  __    ____
275 __   _____ _ __ ___(_) ___  _ __   |___ / / /_  |___ \
276 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \| '_ \   __) |
277  \ V /  __/ |  \__ \ | (_) | | | |  ___) | (_) | / __/
278   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)___(_)_____|
279                 Oct 5 2011
280
281 The "Not coding new stuff allows to polish old things" release.
282
283  * Portability to Mac and Windows improved.
284  * Possible misconfigurations (contexts, libPCRE) made impossible by
285    removing the option or providing sane default value.
286  * Experimental support to NS3 simulator as a back-end.
287
288                     _               _____  __    _
289 __   _____ _ __ ___(_) ___  _ __   |___ / / /_  / |
290 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \| '_ \ | |
291  \ V /  __/ |  \__ \ | (_) | | | |  ___) | (_) || |
292   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)___(_)_|
293                 Jun 27 2011
294
295 The "Oops, we broke Macs too" release.
296 Bug fix to an issue preventing SimGrid from working on Mac OSX.
297
298                     _               _____  __
299 __   _____ _ __ ___(_) ___  _ __   |___ / / /_
300 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \| '_ \
301  \ V /  __/ |  \__ \ | (_) | | | |  ___) | (_) |
302   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)___/
303                 Jun 21 2011
304
305 The "OMG! They Killed Kenny!" version. Major changes:
306
307  * Java and Ruby bindings were removed from the main archive
308    - They are now distributed separately
309  * GRAS is not considered as stable anymore, but experimental. Sorry.
310  * First support for parallel simulation:
311    - Can run the user code of any simulation in parallel.
312    - Basic support for multi-cores hosts in platform files
313  * Improved P2P support:
314    - Peer tag in platform files for DSL connected nodes
315    - Vivaldi routing scheme for lightweigted yet accurate models
316  * Improved SMPI: Faster Fortran, automatic privatization of C globals
317  * Tracing: trace contains the full platform hierarchy
318    exactly as declared using the ASes of the platform file
319
320 Plus numerous other goodies (check the ChangeLog for details)
321
322                     _               _____  ____
323 __   _____ _ __ ___(_) ___  _ __   |___ / | ___|
324 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ |___ \
325  \ V /  __/ |  \__ \ | (_) | | | |  ___) | ___) |
326   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)____/
327                 01 Dec 2010
328
329 The "Winter in Frejus" release. Also known as "ANR/ADT funding helps"
330 Major changes are:
331
332  * New feature: Model check any simgrid simulation
333  * SMPI is now very usable.
334  * Visualization:
335     - now covers the whole framework
336     - major usability improvements
337  * SURF:
338     - scalable platform management through hierarchical description
339     - new efficient way to bypass the XML parser
340  * MSG: at last asynchronous functions are available
341  * SIMDAG: many usability improvements (dotloader, ...)
342  * GRAS: finally catch up with latest internal evolutions
343  * Build chain:
344     - Windows port: should be usable now but still considered experimental
345     - Autotools have now been completely removed
346
347                     _               _____ _  _    _
348 __   _____ _ __ ___(_) ___  _ __   |___ /| || |  / |
349 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \| || |_ | |
350  \ V /  __/ |  \__ \ | (_) | | | |  ___) |__   _|| |
351   \_/ \___|_|  |___/_|\___/|_| |_| |____(_) |_|(_)_|
352                 04 May 2010
353
354 The "Polishing easter eggs is probably a good idea" release.
355 This is a bug fixes release only.
356
357                     _               _____ _  _
358 __   _____ _ __ ___(_) ___  _ __   |___ /| || |
359 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \| || |_
360  \ V /  __/ |  \__ \ | (_) | | | |  ___) |__   _|
361   \_/ \___|_|  |___/_|\___/|_| |_| |____(_) |_|
362                 28 Apr 2010
363
364 The "Easter in Cargese" release. Also known as (major changes):
365
366  * the "se habla Java, Ruby 話せます, fala-se Lua (and deaf-friendly)"
367    ~> bindings were greatly improved
368    ~> new tracing infrastructure for better visualization introduced
369
370  * the "Welcome to configury modernity" release.
371    ~> we switched from autotools to cmake, and improved our cdash
372
373                     _               _____  _____ _  _
374 __   _____ _ __ ___(_) ___  _ __   |___ / |___ /| || |
375 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \   |_ \| || |_
376  \ V /  __/ |  \__ \ | (_) | | | |  ___) | ___) |__   _|
377   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)____(_) |_|
378                 24 Dec 2009
379
380 The "Desktop Grid needs love too" release (also called "Xmas release").
381 Most important changes:
382  * Big speedup through lazy evaluation of the linear models
383  * Supernovae mode: Compile everything in one unit to improve inlining
384  * Simix network module for internal cleanups
385  * Load DAX of applications into SimDag
386  * Lot of small cleanups and other bug fixes
387
388                     _               _____  _____  _____
389 __   _____ _ __ ___(_) ___  _ __   |___ / |___ / |___ /
390 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \   |_ \   |_ \
391  \ V /  __/ |  \__ \ | (_) | | | |  ___) | ___) | ___) |
392   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)____(_)____/
393                 20 Aug 2009
394
395 The "Need for Speed" release.
396 Big speedup through some function inlining.
397
398                     _               _____  _____  ____
399 __   _____ _ __ ___(_) ___  _ __   |___ / |___ / |___ \
400 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \   |_ \   __) |
401  \ V /  __/ |  \__ \ | (_) | | | |  ___) | ___) | / __/
402   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)____(_)_____|
403                 19 Aug 2009
404
405 The "Simplicity does not preceed complexity, but follows it" release.
406 Most important changes:
407  * surf and simix modules reworked for simplification.
408    It lays the ground for future extensions and improvements of SimGrid
409  * SMPI was further improved, although not ready for production use yet.
410
411 On the way, we gained a bit more than 5% on the classical master/slave
412 example. More to come on this in future releases.
413
414                     _               _____  _____  _
415 __   _____ _ __ ___(_) ___  _ __   |___ / |___ / / |
416 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \   |_ \ | |
417  \ V /  __/ |  \__ \ | (_) | | | |  ___) | ___) || |
418   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)____(_)_|
419                 27 Jun 2009
420
421 This dot release is mainly a maintenance one. Most important changes:
422  * We fixed a large amount of bugs all around
423
424  * We sanitized the way configuration is handled internally.
425    Try passing --cfg-help to binaries compiled against this version.
426
427  * SMPI is in better shape: lot of bugs fixing & usability improvements
428    It may be worth trying it (even if all bugs are not gone yet)
429
430 This version may have a bit more of memleaks than 3.3. This will be
431 fixed in a latter release.
432
433
434      ____  _            ____      _     _
435     / ___|(_)_ __ ___  / ___|_ __(_) __| |
436     \___ \| | '_ ` _ \| |  _| '__| |/ _` |
437      ___) | | | | | | | |_| | |  | | (_| |
438     |____/|_|_| |_| |_|\____|_|  |_|\__,_|
439                     _               _____  _____
440 __   _____ _ __ ___(_) ___  _ __   |___ / |___ /
441 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \   |_ \
442  \ V /  __/ |  \__ \ | (_) | | | |  ___) | ___) |
443   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)____/
444                _             _           _
445      _  _ _ _ | |___ __ _ __| |_  ___ __| |
446     | || | ' \| / -_) _` (_-< ' \/ -_) _` |
447      \_,_|_||_|_\___\__,_/__/_||_\___\__,_|
448                Mar 16 2007
449
450 homepage: http://simgrid.gforge.inria.fr/
451 download: http://gforge.inria.fr/frs/?group_id=12
452
453 At least, after 2 years of hard work, we managed to release the 3.3
454 version of the SimGrid framework. There is so many changes that the
455 changelog only lists the most important ones, leaving alone the small
456 improvements, bug fixing and new gadgets.
457
458 In short:
459  * Java bindings
460  * New simulation models, and improvement of the GTNetS wrapper
461
462  * Large memory savings (mainly in parser)
463  * Faster (twice faster is not uncommon, and from 20 hours to 2
464            minutes on very large scenarios)
465  * Much better scalability (tested up to 250,000 processes)
466
467  * Complete regression testing framework so that you can trust the tool
468  * Lot of neat new modules in the XBT toolbox
469
470 This version was thoroughly tested on linux 32bits and 64bits
471 (debian), as well as Mac OSX (leopard).
472
473 Unfortunately, our windows-guy left, and we cannot release the windows
474 version at the same time than the other archs. Any help would be
475 really welcomed here.
476
477 Some of the 96 included test suites are known to fail, but everything
478 should work anyway (don't panic):
479  * The amok module does not work in real deployment ATM, but I don't
480    see this as release critical since I'm not aware of anyone needing
481    this right now
482  * Some tests about the ability of GRAS to receive messages from
483    exotic platforms fail because I've lost access to these platforms
484    (such as AIX)
485  * the example/gras/pmm sometimes fails (about 1/10 of cases). I'm
486    quite puzzled, but I suspect a bug in the test, not in the lib.
487  * the tesh auto-tests "fail" on Mac OSX. This is because "rm -rf" is
488    sometimes too verbose (when the OS creates hidden files, I
489    suspect), but tesh definitely work as the rest on this arch.
490
491 We hope to manage to do more timely releases in the future, even if
492 that may turn out difficult since big stuff is coming (I don't say
493 much here for the suspense ;)
494
495 We hope you'll enjoy this new version, and please report any feedback
496 on the <simgrid-user@lists.gforge.inria.fr> list.
497
498 Martin Quinson (for Da SimGrid Team)