Hello,
today I've had a rather nasty surprise to do with
at$createActionTo$message... our model wasn't scaling well and after 4
days of checking out my own model code I found the apparent culprit...
at$createActionTo$message. The larger our simulation (i.e. the more
events) the worse the behaviour of at$createActionTo$message...
particularly I think that at$createActionTo$message does not work in
constant time according to the position in the schedule that you wish to
insert. When removing the calls to at$createActionTo$message and replacing
them with my own mechanism I managed to get a 60x and upwards increase in
execution performance (obviously the more events you schedule in the
future, the better the improvement). This is staggering. I've looked at
the FAQ and not turned anything up, so the purpose of this message is to
see if anyone else has any similar experience or expects this kind of
behaviour. The documentation also doesn't mention anything about the time
complexity of using this method When I find time I'll delve deeper,
look at ways to improve this behaviour, etc. but in the meantime it seems
that a health-warning should be put on this method and presumably similar
ones. I'm using Swarm 2.2 pre-test 6 with Java 1.4.1 on Windows 2000 by
the way...
James
---
Dr James A R Marshall
Complex Systems Modelling Group (COSMIC)
Department of Earth Science and Engineering