Jack J. Woehr wrote: > Not sure how relevant that this is to mainframe programming, but years ago > when I designed and executed with a team of nine a data-heavy server in > Unix optimized for multiple cores, what we found was that reroutable queuing > of data from one simplistic processing engine to the next (with reservoirs > for data accumulation) got the most performance.
I'm not sure I grok this. Are you talking about hardware or software (or a combination)? I *think* what you are describing is something akin to what happens in a Unix pipeline or message queueing systems. Can you provide a reference? It sounds interesting, and similar to other "flow-based" programming systems (Volcano, IBM's DataStage EE, Expressor Software's parallel engine, various parallel database engines, etc.). That said: in this case, the core algorithm is very small (under 100 instructions), and already parallelized across multiple threads with limited interaction across threads (data parallel style). Pipeline parallelism isn't appropriate WITHIN this core, though the core could sensibly be used as a component in a larger pipeline-parallel job. I'm really looking to make this core as fast as possible. The effect of other work in the system has been mentioned; I get that. The impact of the "hinting" instructions IBM has provided (PFD, BPP, NIAI) will obviously be affected by context switches. But IBM presumably provided them for a reason. -- Jerry ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
