[Note: removed one CCer because the email address was long and complex and looked like my mail client had hacked up a hairball full of experimental Perl 6 obfuscation. My apologies if that wasn't actually a mail failure]
On Mon, May 17, 2010 at 3:13 PM, <nigelsande...@btconnect.com> wrote: > > The important thing is not the number of algorithms: it's the number >> programs and workloads. >> > > From that statement, you do not appear to understand the subject matter of > this thread: Perl 6 concurrency model. > > That seems a tad more confrontational than was required. It's also arguably incorrect. Surveying existing software implementations and code bases is not precluded, simply because we're talking about a new(ish) language. For CPU-bound processes, there is no benefit in trying to utilise more than > one thread per core--or hardware thread if your cores have hyper-threading. > Context switches are expensive, and running hundreds (let alone thousands or > millions) of threads on 2/4/8/12 core commodity hardware, means that you'll > spend more time context switching than doing actual work. With the net > result of less rather than more throughput. > I know that you know what I'm about to say, but I'm going to say it anyway just so we're standing on the same ground. When I was in college, I had access to a loosely coupled 20-processor system. That was considered radical, cutting-edge technology for the fact that you could treat it like a standard Unix workhorse, and not as some sort of black-hole of computing power with which you could commune via a front-end (ala Cray). I then worked for a company that was producing an order 1k processor system to do the same thing. These were relatively short-spaced advances in technology. When a single die shipped, containing 2 cores, I was agape. I'd never considered that it would happen as soon as it did. Today we're putting order of 10 cores on a die. I'm really not all that old, and yet the shockingly high-end supercomputing platforms of my youth are, more or less, being put on a chip. Perl pre-6 hit its stride about 5-10 years into its lifespan (mid to late 90s). Perl 6 hasn't even shipped yet, and yet your statements appear to be selecting modern hardware as its target platform, design wise. I'm not sure that's entirely (un)wise. Then again, it does simplify the world tremendously. I just wanted to get that all out there for thought. -- Aaron Sherman Email or GTalk: a...@ajs.com http://www.ajs.com/~ajs