From: Andreas Leitgeb on 28 Jul 2010 04:49 Lew <noone(a)lewscanon.com> wrote: > I'd go with clean design first, which to my mind an object model is, > then play around with non-expandable, hard-to-maintain, bug-prone > parallel-array solutions if the situation truly demanded it, Not sure, whether this "if the situation truly demanded it" is actually an "if (false)" for you, but in case it isn't, then we reached agreement. We might still disagree for certain real situations, though ;-)
From: Martin Gregorie on 28 Jul 2010 06:48 On Tue, 27 Jul 2010 20:15:06 -0500, Alan Gutierrez wrote: > I wasn't really picking on IBM. > Fair point. The 'nobody got fired for buying IBM' hit my reaction button. It had rather dire connotations in the past, as in 'if you DON'T buy IBM, our senior execs will visit your senior execs and you *will* be fired and put on our black list'. I knew one or two people whose bosses had received that visit when they bought 3rd party disks. > I was addressing the fallacy of the appeal to authority. The argument > that a monolithic system contains institutionalized knowledge that is > superior to any other solution offered to a problem that the monolithic > system could conceivably address. > Sure: a myth that's perpetrated by said monoliths and bought into by their adherents: it saves the adherents from having to think. -- martin@ | Martin Gregorie gregorie. | Essex, UK org |
From: Tom McGlynn on 28 Jul 2010 07:23 On Jul 27, 9:25 pm, Lew <no...(a)lewscanon.com> wrote: > Alan Gutierrez wrote: id you read this thread? Like, say, yesterday, when Tom McGlynn wrote: > > >>> E.g., suppose I were running a simulation of galaxy mergers > >>> of two 100-million-star galaxies. Stars differ only in position, > >>> velocity and mass. Rather than creating 200 million Star objects > >>> I might create a combination flyweight/singleton Star where each > >>> method call includes an index that is used to find the mutable > >>> state in a few external arrays. > Alan Gutierrez wrote: > > described. I'm imagining that, if the records consist entirely of > > numeric values, that you can treat them as fixed length records. > I'm a little intrigued by the discussion of the appropriate choices for the architecture for an n-body calculation by a group which likely has little experience if any in the field. Note that this has been an area of continuous study for substantially longer than the concept of relational databases has existed: the first N-body calculations by digital computers were made in the 1950's. My own experience here is woefully out of date, but below are a couple of reasons why I might consider an architecture similar to what I gave as an illustration earlier. The motivation for that example was to illustrate the othogonality of my understanding of singleton and flyweight, but there could be reasons to go this route. E.g., Direct n-body calculations need to compute the distance between pairs of objects. The distances between nearby objects need to be calculated orders of magnitude more frequently than between distant objects. If the data can be organized such that nearby in [simulated] space stars tend to be nearby in memory, then cache misses may be substantially reduced. This can improve performance by an order of magnitude or more. In Java the only structure you have available that allows for managing this (since nearby pairs change with time) is a primitive array. Java gives no way, as far as I know, to manage the memory locations of distinct objects. Since the actual n-body calculation will often have been highly optimized in some other language, the role of Java code in an n-body system may be to provide initial conditions to, show the status of, or analyze the results of the calculation. Communication with the core calculation might use JNI, shared memory, or other I/O techniques. In each of these the fact that one dimensional primitive arrays share a common model between languages makes them an attractive way of passing the data. Note that I'm not saying that this approach must or even should be used: just that it can make sense in realistic circumstances. However personally -- and given the GOFs endorsement there is some support more broadly -- I don't see the use of this kind of simple flyweight as a particularly odious approach. Regards, Tom McGlynn
From: Lew on 28 Jul 2010 08:58 On 07/28/2010 06:48 AM, Martin Gregorie wrote: > On Tue, 27 Jul 2010 20:15:06 -0500, Alan Gutierrez wrote: > >> I wasn't really picking on IBM. >> > Fair point. The 'nobody got fired for buying IBM' hit my reaction button. > It had rather dire connotations in the past, as in 'if you DON'T buy IBM, > our senior execs will visit your senior execs and you *will* be fired and > put on our black list'. I knew one or two people whose bosses had > received that visit when they bought 3rd party disks. > >> I was addressing the fallacy of the appeal to authority. The argument >> that a monolithic system contains institutionalized knowledge that is >> superior to any other solution offered to a problem that the monolithic >> system could conceivably address. >> > Sure: a myth that's perpetrated by said monoliths and bought into by > their adherents: it saves the adherents from having to think. Yeah, because people with multi-million dollar/euro/yuan budgets never, ever think about how they spend their money, and there's just no chance that IBM got where it is by not delivering what they promise for mission-critical systems. I thought this was supposed to be a group of intelligent, educated, technical people. -- Lew
From: Martin Gregorie on 28 Jul 2010 09:41
On Wed, 28 Jul 2010 08:58:41 -0400, Lew wrote: > On 07/28/2010 06:48 AM, Martin Gregorie wrote: >> On Tue, 27 Jul 2010 20:15:06 -0500, Alan Gutierrez wrote: >> >>> I wasn't really picking on IBM. >>> >> Fair point. The 'nobody got fired for buying IBM' hit my reaction >> button. It had rather dire connotations in the past, as in 'if you >> DON'T buy IBM, our senior execs will visit your senior execs and you >> *will* be fired and put on our black list'. I knew one or two people >> whose bosses had received that visit when they bought 3rd party disks. >> >>> I was addressing the fallacy of the appeal to authority. The argument >>> that a monolithic system contains institutionalized knowledge that is >>> superior to any other solution offered to a problem that the >>> monolithic system could conceivably address. >>> >> Sure: a myth that's perpetrated by said monoliths and bought into by >> their adherents: it saves the adherents from having to think. > > Yeah, because people with multi-million dollar/euro/yuan budgets never, > ever think about how they spend their money, and there's just no chance > that IBM got where it is by not delivering what they promise for > mission-critical systems. > I wasn't even thinking about the big shots (and remember the 360/195 that never was?) - more when back in the day the Big Blue SEs were considered to be the gods of system design and implementation. -- martin@ | Martin Gregorie gregorie. | Essex, UK org | |