On Tue, Apr 3, 2012 at 10:47 AM, Miles Fidelman <mfidel...@meetinghouse.net>wrote:
> Hah. You've obviously never been involved in building a CGF simulator > (Computer Generated Forces) - absolute spaghetti code when you have to have > 4 main loops, touch 2000 objects (say 2000 tanks) every simulation frame. > Comparatively trivial if each tank is modeled as a process or actor and > you run asynchronously. > I haven't used CGF. It does sound like a mess, the way you describe it. But there are good architectures that won't become spaghetti code in these circumstances. If you pipelined 2000 tank data objects through four processes each instant, for example (i.e. so tanks 1-100 are in the last process of four while 301-400 are in the first) there would be some clear constraints on communication, and state could be updated only at transition from one instant to another. You claim managing 2000 asynchronous processes is trivial. I think you'll just find different things to complain about after you have, say, 2000 actors processing 160000 asynchronous messages per second (4 messages per actor * 20 Hz, minimal for your example) plus managing consistent views and safe updates of a shared map or environment, or consistent snapshots for persistence. Regards, Dave -- bringing s-words to a pen fight
_______________________________________________ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc