Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
8 years agorevert [a30523e] (remove supernovae) because I need some timings on G5K, and fix...
Martin Quinson [Tue, 15 Nov 2011 14:43:55 +0000 (15:43 +0100)]
revert [a30523e] (remove supernovae) because I need some timings on G5K, and fix what broke in supernovae mode since then

8 years agoplug some more memleaks. aint bad anymore
Martin Quinson [Tue, 15 Nov 2011 13:34:45 +0000 (14:34 +0100)]
plug some more memleaks. aint bad anymore

8 years agoLua: removing the MSG_process_sleep hack changes the order of output
Christophe Thiéry [Tue, 15 Nov 2011 13:28:29 +0000 (14:28 +0100)]
Lua: removing the MSG_process_sleep hack changes the order of output

8 years agoLua: copy tasks so that the sender doesn't have to sleep
Christophe Thiéry [Tue, 15 Nov 2011 13:23:43 +0000 (14:23 +0100)]
Lua: copy tasks so that the sender doesn't have to sleep

This will allow to implement asynchronous comms (isend/irecv)

8 years agoCosmetics
Christophe Thiéry [Tue, 15 Nov 2011 13:18:28 +0000 (14:18 +0100)]
Cosmetics

8 years agoplug a bunch of memleaks
Martin Quinson [Tue, 15 Nov 2011 12:14:28 +0000 (13:14 +0100)]
plug a bunch of memleaks

8 years agodamn it, there is no example testing the bypass mecanism!!
Martin Quinson [Tue, 15 Nov 2011 11:04:08 +0000 (12:04 +0100)]
damn it, there is no example testing the bypass mecanism!!

8 years agoreplace a new/free cycle by a locally stacked object
Martin Quinson [Tue, 15 Nov 2011 10:48:41 +0000 (11:48 +0100)]
replace a new/free cycle by a locally stacked object

8 years agowork to enforce that link arg is readily usable in r_g_r_a_l
Martin Quinson [Tue, 15 Nov 2011 10:41:26 +0000 (11:41 +0100)]
work to enforce that link arg is readily usable in r_g_r_a_l

8 years agoreduce the dynar creation madness in g_r_a_l in recursive case
Martin Quinson [Tue, 15 Nov 2011 10:28:19 +0000 (11:28 +0100)]
reduce the dynar creation madness in g_r_a_l in recursive case

8 years agorewrite an error message
Martin Quinson [Tue, 15 Nov 2011 09:43:04 +0000 (10:43 +0100)]
rewrite an error message

8 years agomerge get_route and get_latency in routings too
Martin Quinson [Tue, 15 Nov 2011 09:36:22 +0000 (10:36 +0100)]
merge get_route and get_latency in routings too

8 years agorename a global to avoid namespace pollution (and other cosmetics)
Martin Quinson [Tue, 15 Nov 2011 08:52:40 +0000 (09:52 +0100)]
rename a global to avoid namespace pollution (and other cosmetics)

8 years agokill useless asserts: this is not the way routing logics will take to notice about...
Martin Quinson [Tue, 15 Nov 2011 08:43:42 +0000 (09:43 +0100)]
kill useless asserts: this is not the way routing logics will take to notice about non-existant routes

8 years agofurther streamline r_get_route_a_l: now that latency is nicely additive, no need...
Martin Quinson [Tue, 15 Nov 2011 08:40:58 +0000 (09:40 +0100)]
further streamline r_get_route_a_l: now that latency is nicely additive, no need for extra precaution

8 years agosimplify _routing_get_route_and_latency wrt latency
Martin Quinson [Tue, 15 Nov 2011 08:36:10 +0000 (09:36 +0100)]
simplify _routing_get_route_and_latency wrt latency

- remove duplicated asserts about non negative latency
  routing_get_route_and_latency (w/o _) checks it
- give the responsability to initialize it to the caller
- streamline the code

8 years agoChange again the calling convention of routing_get_route_and_latency
Martin Quinson [Tue, 15 Nov 2011 08:15:09 +0000 (09:15 +0100)]
Change again the calling convention of routing_get_route_and_latency

now, you cannot call it without passing a valid route receiver. It
will be created if pointing to NULL, or simply filled. Actually that
was the de facto calling convention in the code.

This allows to simplify routing_get_route_and_latency by not checking
if the caller is interested in the route at every line.

(plus some useless cosmetics)

8 years agocheck that AS->get_route don't return NULL on non-existant route, but throw an exception
Martin Quinson [Tue, 15 Nov 2011 07:45:05 +0000 (08:45 +0100)]
check that AS->get_route don't return NULL on non-existant route, but throw an exception

8 years agokill the now useless 'cleanup' parameter of routing_get_route_and_latency
Martin Quinson [Tue, 15 Nov 2011 01:35:50 +0000 (02:35 +0100)]
kill the now useless 'cleanup' parameter of routing_get_route_and_latency

Instead, if route == NULL we won't bother collecting the route, so
freeing is useless.
If *route == NULL, we create a short-lived dynar (equivalent to the
result of having cleanup=1 previously
else, we fill that route without messing with it

8 years agokill global_routing->get_route_no_cleanup()
Martin Quinson [Tue, 15 Nov 2011 01:06:53 +0000 (02:06 +0100)]
kill global_routing->get_route_no_cleanup()

use routing_get_route_and_latency(....., 0) instead

8 years agokill routing_get_route(), use routing_get_route_and_latency() instead
Martin Quinson [Tue, 15 Nov 2011 01:01:25 +0000 (02:01 +0100)]
kill routing_get_route(), use routing_get_route_and_latency() instead

8 years agoAS->get_route is no longer in charge of creating the route it fills
Martin Quinson [Tue, 15 Nov 2011 00:35:56 +0000 (01:35 +0100)]
AS->get_route is no longer in charge of creating the route it fills

The whole idea is to reduce the dynar creation, copy, destroy madness
in the router. This step is only the first one on that way.

It may well happen that this change leads to massive memleaks. I'll
check after this later.

8 years agosimplification + add comments + reindent of _get_route_and_latency
Martin Quinson [Mon, 14 Nov 2011 23:31:49 +0000 (00:31 +0100)]
simplification + add comments + reindent of _get_route_and_latency

8 years agouseless cosmetics
Martin Quinson [Mon, 14 Nov 2011 23:16:07 +0000 (00:16 +0100)]
useless cosmetics

8 years agopre-parse the vivaldi coordinates
Martin Quinson [Mon, 14 Nov 2011 16:40:03 +0000 (17:40 +0100)]
pre-parse the vivaldi coordinates

8 years agoanother empty function murder
Martin Quinson [Mon, 14 Nov 2011 16:05:55 +0000 (17:05 +0100)]
another empty function murder

8 years agonah, properties in the XML file are not the right place to pass configuration options
Martin Quinson [Mon, 14 Nov 2011 16:01:02 +0000 (17:01 +0100)]
nah, properties in the XML file are not the right place to pass configuration options

Actually, the properties are the right location, but only when
included in a config tag. And in this setting, the right behavior is
already done by the </config> handler, no need to also do it for the
generic <prop> handler. Doing so anyway would prevent to pass
"coordinates" (user-)properties to hosts, links and such.

8 years agodon't trust globals to be memset'ed to 0 (and rework a message)
Martin Quinson [Mon, 14 Nov 2011 15:58:02 +0000 (16:58 +0100)]
don't trust globals to be memset'ed to 0 (and rework a message)

8 years agoerror message rewrite
Martin Quinson [Mon, 14 Nov 2011 15:50:13 +0000 (16:50 +0100)]
error message rewrite

8 years agoLet's trust the mathematics here: sqrt + fabs + fabs IS positive or nul :)
Martin Quinson [Mon, 14 Nov 2011 15:48:12 +0000 (16:48 +0100)]
Let's trust the mathematics here: sqrt + fabs + fabs IS positive or nul :)

8 years agotiny cleanups, and add a FIXME
Martin Quinson [Mon, 14 Nov 2011 15:42:43 +0000 (16:42 +0100)]
tiny cleanups, and add a FIXME

8 years agomerge structures route_t and route_extended_t.
Martin Quinson [Mon, 14 Nov 2011 15:31:41 +0000 (16:31 +0100)]
merge structures route_t and route_extended_t.

All this added complexity to save 2 pointers was a bit too much for
me. Yeah, YMMV, but I prefer it this way.

8 years agotiny function renaming
Martin Quinson [Mon, 14 Nov 2011 14:56:53 +0000 (15:56 +0100)]
tiny function renaming

8 years agofix the breakages that were hidden because some tests were disabled
Martin Quinson [Mon, 14 Nov 2011 19:20:17 +0000 (20:20 +0100)]
fix the breakages that were hidden because some tests were disabled

8 years agopcre is not optional anymore since a while -- reactivate the vivaldi tests
Martin Quinson [Mon, 14 Nov 2011 16:15:53 +0000 (17:15 +0100)]
pcre is not optional anymore since a while -- reactivate the vivaldi tests

8 years agoLua: implementing asynchronous comms (wait, test, isend, dsend, irecv)
Christophe Thiéry [Mon, 14 Nov 2011 15:48:39 +0000 (16:48 +0100)]
Lua: implementing asynchronous comms (wait, test, isend, dsend, irecv)

8 years agoLua: add a function simgrid.process.sleep()
Christophe Thiéry [Mon, 14 Nov 2011 14:28:07 +0000 (15:28 +0100)]
Lua: add a function simgrid.process.sleep()

8 years agoLua: add a function simgrid.get_clock()
Christophe Thiéry [Mon, 14 Nov 2011 14:10:41 +0000 (15:10 +0100)]
Lua: add a function simgrid.get_clock()

8 years agoLua: document the possibility to use numbers for mailboxes
Christophe Thiéry [Mon, 14 Nov 2011 13:51:33 +0000 (14:51 +0100)]
Lua: document the possibility to use numbers for mailboxes

8 years agoLua: return errors from execute/send/recv, or nil in case of success
Christophe Thiéry [Mon, 14 Nov 2011 13:38:26 +0000 (14:38 +0100)]
Lua: return errors from execute/send/recv, or nil in case of success

8 years agoLua: rename simgrid.task.name() to simgrid.task.get_name()
Christophe Thiéry [Mon, 14 Nov 2011 13:03:26 +0000 (14:03 +0100)]
Lua: rename simgrid.task.name() to simgrid.task.get_name()

8 years agoLua Chord example (not working yet, the API is still incomplete)
Christophe Thiéry [Mon, 14 Nov 2011 12:57:18 +0000 (13:57 +0100)]
Lua Chord example (not working yet, the API is still incomplete)

8 years agoMake MSG_TASK_CANCELLED deprecated, replace it by MSG_TASK_CANCELED
Christophe Thiéry [Mon, 14 Nov 2011 10:22:08 +0000 (11:22 +0100)]
Make MSG_TASK_CANCELLED deprecated, replace it by MSG_TASK_CANCELED

8 years agoRemove ruby example from simgrid.
Navarrop [Mon, 14 Nov 2011 16:13:52 +0000 (17:13 +0100)]
Remove ruby example from simgrid.

8 years agoUse xbt_XXX_is_empty() instead of testing xbt_XXX_length() against 0.
Arnaud Giersch [Mon, 14 Nov 2011 14:37:41 +0000 (15:37 +0100)]
Use xbt_XXX_is_empty() instead of testing xbt_XXX_length() against 0.

Where XXX is 'dict' or 'dynar'.

(was a request from emptty)

8 years agoRewrite xbt libs, using xbt dicts.
Arnaud Giersch [Mon, 14 Nov 2011 11:01:11 +0000 (12:01 +0100)]
Rewrite xbt libs, using xbt dicts.

And remove lots of code duplication.

Also remove unused functions.

8 years agoUse xbt_lib_length instead of xbt_lib_size.
Arnaud Giersch [Mon, 14 Nov 2011 10:23:25 +0000 (11:23 +0100)]
Use xbt_lib_length instead of xbt_lib_size.

8 years agoUse defined interface for accessing to lib properties.
Arnaud Giersch [Mon, 14 Nov 2011 10:21:06 +0000 (11:21 +0100)]
Use defined interface for accessing to lib properties.

8 years agoRemove usage of xbt_dict_size().
Arnaud Giersch [Mon, 14 Nov 2011 12:04:16 +0000 (13:04 +0100)]
Remove usage of xbt_dict_size().

xbt_dict_size() can now be safely removed.

8 years agoRemove trailing spaces in ChangeLog.
Arnaud Giersch [Mon, 14 Nov 2011 12:10:51 +0000 (13:10 +0100)]
Remove trailing spaces in ChangeLog.

8 years agoAdded the new logo to the unstable doc, so that Lucas and Fred can show a webpage...
Laurent Bobelin [Sat, 12 Nov 2011 09:02:21 +0000 (10:02 +0100)]
Added the new logo to the unstable doc, so that Lucas and Fred can show a webpage and at least one doc with the same logo at SC

8 years agokill another "method" away from the "singleton" global_routing
Martin Quinson [Fri, 11 Nov 2011 08:37:49 +0000 (09:37 +0100)]
kill another "method" away from the "singleton" global_routing

OO coding in C is something, but applying the worst possible OO design
to C is ... inventive

8 years agocosmetics and improve doc
Martin Quinson [Fri, 11 Nov 2011 02:36:28 +0000 (03:36 +0100)]
cosmetics and improve doc

8 years agokill a file that were begging for it
Martin Quinson [Fri, 11 Nov 2011 02:31:05 +0000 (03:31 +0100)]
kill a file that were begging for it

8 years agocosmetics
Martin Quinson [Fri, 11 Nov 2011 02:18:51 +0000 (03:18 +0100)]
cosmetics

8 years agomove the callbacks to the cluster creation from surfxml_parse to sg_platf
Martin Quinson [Fri, 11 Nov 2011 02:17:41 +0000 (03:17 +0100)]
move the callbacks to the cluster creation from surfxml_parse to sg_platf

8 years agoI've found the name of the next release
Martin Quinson [Fri, 11 Nov 2011 02:05:27 +0000 (03:05 +0100)]
I've found the name of the next release

8 years agomove some XML specific code from surf_routing.c to surfxml_parse.c
Martin Quinson [Fri, 11 Nov 2011 01:47:04 +0000 (02:47 +0100)]
move some XML specific code from surf_routing.c to surfxml_parse.c

8 years agoImprove a bit the documentation of hte xbt_queues, and ensure that they are displayed...
Martin Quinson [Fri, 11 Nov 2011 01:37:58 +0000 (02:37 +0100)]
Improve a bit the documentation of hte xbt_queues, and ensure that they are displayed on the web site

8 years agoRemove two more declaration of phantom functions.
Arnaud Giersch [Thu, 10 Nov 2011 22:53:50 +0000 (23:53 +0100)]
Remove two more declaration of phantom functions.

8 years agoSimply say fun_ptr(...) instead of (*fun_ptr)(...).
Arnaud Giersch [Thu, 10 Nov 2011 22:36:16 +0000 (23:36 +0100)]
Simply say fun_ptr(...) instead of (*fun_ptr)(...).

Another possible cleanup in the same spirit is to remove the
ampersand when taking the address of a function.
This is left as an exercise for the reader.

8 years agosome more cleanups for tomorrow marked as FIXME for now -- good night
Martin Quinson [Thu, 10 Nov 2011 22:07:03 +0000 (23:07 +0100)]
some more cleanups for tomorrow marked as FIXME for now -- good night

8 years agovarious psychorigid cleanups -- routing_parse_cluster() is now readable
Martin Quinson [Thu, 10 Nov 2011 22:03:25 +0000 (23:03 +0100)]
various psychorigid cleanups -- routing_parse_cluster() is now readable

8 years agothat's a quite complicated no-op :)
Martin Quinson [Thu, 10 Nov 2011 21:52:03 +0000 (22:52 +0100)]
that's a quite complicated no-op :)

8 years agoMerge branch 'parser'
Martin Quinson [Thu, 10 Nov 2011 21:40:23 +0000 (22:40 +0100)]
Merge branch 'parser'

8 years agodo not search the cluster backbones again and again, store them in the right location
Martin Quinson [Thu, 10 Nov 2011 21:38:52 +0000 (22:38 +0100)]
do not search the cluster backbones again and again, store them in the right location

On the poor tests I've done, it seems to give a non negligible
improvement on the goal example. Maybe 5-10%, but it's hard to say
right now.

8 years agoyou have to plug the memleaks from time to time
Martin Quinson [Thu, 10 Nov 2011 21:23:25 +0000 (22:23 +0100)]
you have to plug the memleaks from time to time

8 years agopopulate the routing_none_finalize to make sure that we always call these functions
Martin Quinson [Thu, 10 Nov 2011 21:03:36 +0000 (22:03 +0100)]
populate the routing_none_finalize to make sure that we always call these functions

8 years agocosmetics: variable&fields renaming
Martin Quinson [Thu, 10 Nov 2011 20:54:20 +0000 (21:54 +0100)]
cosmetics: variable&fields renaming

8 years agoUse the none routing as an ancestor to the generic one, which is ancestor to most...
Martin Quinson [Thu, 10 Nov 2011 20:39:19 +0000 (21:39 +0100)]
Use the none routing as an ancestor to the generic one, which is ancestor to most of the others. First step to further factorization

8 years agocosmetics, nothing serious
Martin Quinson [Thu, 10 Nov 2011 20:30:43 +0000 (21:30 +0100)]
cosmetics, nothing serious

8 years agoNew Lua example: Chord (work in progress)
Christophe Thiéry [Thu, 10 Nov 2011 17:46:50 +0000 (18:46 +0100)]
New Lua example: Chord (work in progress)

8 years agosanitize get_network_element_type()
Martin Quinson [Thu, 10 Nov 2011 17:42:59 +0000 (18:42 +0100)]
sanitize get_network_element_type()

It were declared as a field of global_routing, and of each and every
routing model. That's a bit much for a simple little function.

8 years agokill unused global_routing->get_latency()
Martin Quinson [Thu, 10 Nov 2011 17:07:38 +0000 (18:07 +0100)]
kill unused global_routing->get_latency()

8 years agoKill global_routing->get_route_or_null
Martin Quinson [Thu, 10 Nov 2011 17:05:39 +0000 (18:05 +0100)]
Kill global_routing->get_route_or_null

It was used at only one location, so I setup a TRY/CATCH in there
instead

8 years agoThat pointer to function was never given anything but one value
Martin Quinson [Thu, 10 Nov 2011 16:57:02 +0000 (17:57 +0100)]
That pointer to function was never given anything but one value

The global_routing value seem to be used to group functions together,
but the fields cannot be given another value.

Of course, I'm gonna kill em all.

8 years agofactorize the routing_exit functionality, and ensure that no model can forget to...
Martin Quinson [Thu, 10 Nov 2011 16:47:24 +0000 (17:47 +0100)]
factorize the routing_exit functionality, and ensure that no model can forget to call it

8 years agokill small crufts here and there
Martin Quinson [Thu, 10 Nov 2011 16:37:30 +0000 (17:37 +0100)]
kill small crufts here and there

8 years agokill further globals
Martin Quinson [Thu, 10 Nov 2011 16:33:46 +0000 (17:33 +0100)]
kill further globals

8 years agosaner pattern use in the trace files
Martin Quinson [Thu, 10 Nov 2011 16:20:36 +0000 (17:20 +0100)]
saner pattern use in the trace files

I guess that previously, the patterns were replaced for the first
host, and then reused as is for the next ones. So the traces specified
for the first host were used for any ones.

8 years agofix the constness of xbt_strbuff_new_from(), it's too dangerous with previous prototype
Martin Quinson [Thu, 10 Nov 2011 16:20:04 +0000 (17:20 +0100)]
fix the constness of xbt_strbuff_new_from(), it's too dangerous with previous prototype

8 years agovarious cleanups
Martin Quinson [Thu, 10 Nov 2011 16:07:48 +0000 (17:07 +0100)]
various cleanups

amongst other, kill yet another global

8 years agoahah. Mort de rire. :-/
Martin Quinson [Thu, 10 Nov 2011 15:56:00 +0000 (16:56 +0100)]
ahah. Mort de rire. :-/

8 years agovarious cleanups and clarifications
Martin Quinson [Thu, 10 Nov 2011 15:54:43 +0000 (16:54 +0100)]
various cleanups and clarifications

8 years agorename routing_component to as, since that's just an AS at the end of the day
Martin Quinson [Thu, 10 Nov 2011 15:51:03 +0000 (16:51 +0100)]
rename routing_component to as, since that's just an AS at the end of the day

8 years agoRemove section about java.
Navarrop [Thu, 10 Nov 2011 16:39:07 +0000 (17:39 +0100)]
Remove section about java.

8 years agoMake a sync in a different directory.
Navarrop [Thu, 10 Nov 2011 16:14:03 +0000 (17:14 +0100)]
Make a sync in a different directory.

8 years agoLua masterslave: simplify the code and improve the output
Christophe Thiéry [Thu, 10 Nov 2011 15:47:20 +0000 (16:47 +0100)]
Lua masterslave: simplify the code and improve the output

8 years agoLua: set a task metatable that allows OO-style syntax
Christophe Thiéry [Thu, 10 Nov 2011 15:45:04 +0000 (16:45 +0100)]
Lua: set a task metatable that allows OO-style syntax

You can now write my_task:send(mailbox), which is just syntaxic sugar
for simgrid.task.send(my_task, mailbox).

8 years agoLua: garbage collect the simgrid module (remove simgrid.clean())
Christophe Thiéry [Thu, 10 Nov 2011 14:54:02 +0000 (15:54 +0100)]
Lua: garbage collect the simgrid module (remove simgrid.clean())

8 years agoDon't protect access to the metatable from Lua.
Christophe Thiéry [Thu, 10 Nov 2011 13:13:31 +0000 (14:13 +0100)]
Don't protect access to the metatable from Lua.

Lua code can never change the metatable of a userdata anyway
(setmetatable is possible only for a table).
getmetatable is now allowed for tasks and hosts: it's harmless and lets
people extend them.

8 years agoClean MSG source file names
Christophe Thiéry [Thu, 10 Nov 2011 13:06:13 +0000 (14:06 +0100)]
Clean MSG source file names

8 years agoinline static functions declared only once, and that were not really improving my...
Martin Quinson [Thu, 10 Nov 2011 15:20:02 +0000 (16:20 +0100)]
inline static functions declared only once, and that were not really improving my execution flow understanding

8 years agokill unused static functions
Martin Quinson [Thu, 10 Nov 2011 15:19:26 +0000 (16:19 +0100)]
kill unused static functions

8 years agothat function is so stupid that it is never called. Let's remove it
Martin Quinson [Thu, 10 Nov 2011 15:13:07 +0000 (16:13 +0100)]
that function is so stupid that it is never called. Let's remove it

8 years agokill a type that were exactly the same than another
Martin Quinson [Thu, 10 Nov 2011 15:08:23 +0000 (16:08 +0100)]
kill a type that were exactly the same than another

8 years agosanitize type naming between surf models and routing models
Martin Quinson [Thu, 10 Nov 2011 14:45:12 +0000 (15:45 +0100)]
sanitize type naming between surf models and routing models

8 years agouse an explicit type name for pointer on fct
Martin Quinson [Thu, 10 Nov 2011 14:44:10 +0000 (15:44 +0100)]
use an explicit type name for pointer on fct

8 years agotiny partial reindent
Martin Quinson [Thu, 10 Nov 2011 14:37:23 +0000 (15:37 +0100)]
tiny partial reindent

8 years agoMove the SURF model initialization from routing_parse to sg_platf
Martin Quinson [Thu, 10 Nov 2011 14:33:54 +0000 (15:33 +0100)]
Move the SURF model initialization from routing_parse to sg_platf

It's cleaner when the router is just another bunch of callbacks, with
no central point. But it's a bit harder because the sg_platf callbacks
are also used during the parsing of deploy.xml