home .. forth .. misc mail list archive ..

Re: long rant



>> = Me
> = Jeff Fox

>There has been a trend toward superlinear cost-up and sublinear performance
>increase in parallel machines on the high end.  However on the workstation
>farm trend you see near-linear cost up, and superlinear performance increase.
>The MISC approach is designed to deliver cost-down and superlinear
>performance increase with both a large n at a low cost, and a relatively
>high performance per node.

1) If workstation farms gave superlinear speedups for more than a subset of
   problems, then parallel computing is a solved problem.  Most sites will 
   already have the farm (a workstation on each desk).  It is very easy to
   demo superlinear speedup with a parallelized code, run with a data set 
   that is too large for the cache on one processor, but easily fits in the
   cache on n processors.  This is by no means the norm.

2) A big problem with workstation farms is communication latency.  PVM clusters
   will take several milliseconds per message.  It is difficult to design 
   efficient parallel applications that can tolerate this type of latency.  
   The applications that can tolerate this have been ported, but this is by 
   no means the majority of 'parallel' codes, and this will never allow parallelism
   to be used for traditional sequential codes.  Long latencies flatten out 
   speedup curves rapidly.

>>For structured floating point intensive scientific codes, networks of
>>workstations cannot approach the performance of vector supercomputers.

>Not per node, but per $ they provide about an order of magnitude
>improvement in price performance in the typical supercompter applications
>that get written up and presented at conferences.

They do not provide an order of magnitude better performance for all applications.
Government and non-government money is still buying vector supercomputers.
For some applications, vector supercomputers still provide the best price
performance.  Of course, the formula is somewhat complicated.  The machines
must also have enouugh memory to solve the problem, and be capable of solving
the problem in a short enough period of time.  

>>Does this mean that the F21 cluster won't provide shared memory?
>>Shared memory is an important model for many parallel programmers.
>>They don't all want to write message passing code.

>Did you read the articles posted on Distributed Shared Memory?  Forth-
>Linda? Parallel Channels? F*F? F21 network topologies? Simulating
>networks of Forth chips?

DSM means that a single address space will be provided.
DSM means that some form of coherency will be provided.

The F21 does not have enough address bits for a single address space.
The F21 would have to provide coherency in software (an acceptable means for
some applications).   It has not been demonstrated that software coherence
is efficient enough to support parallel applications that communicate 
frequently.

>Does the human brain use random access shared memory available
>to all processes?

Is the F21 a human brain?

>You still seem to miss the whole idea of F21.  For the price of a
>single node on a PVM style cluster you can max out the number of
>processors in an F21 network.

Perhaps we have different points.

1) People don't have to buy PVM clusters.  A lot of them already have the nodes
   on their desktops.

2) If you are comparing the price of an F21 cluster versus the price of a 
   workstation cluster, then you must also compare the performance of both
   systems.  Where are the benchmarks?  If they do not solve similar problems,
   then why is a comparison of prices provided?

> Difference in perspcective on dealing with required complexity:

A comparison of the complexity of the design of an Alpha with the simplicity of
the design of a MISC chip is irrelevant unless the MISC chip can replace the
Alpha chip.  If such a claim is made, then it is also valid to compare 
performance.  If such a claim is not made, then the complexity of the Alpha
is moot.

>Religion has nothing to do with it.  When people want to imply that
>what they are saying is logical and that what is not but they cannot
>use logic to support this opinion they will just try to label
>your argument as a "religous" argument.

It is illogical to claim that a MISC chip is better than an Alpha or a
MISC cluster is better than an Alpha cluster and to provide no quantitative
evidence of such claims.  

It is illogical to claim that an Alpha workstation or an Alpha cluster
will only appear to perform better on a benchmark or general purpose use
because the use and the benchmark are wrong.

I am still unsure if such claims are being made.

>If by "evaluation against my current system" you mean will it run the
>same software you are using now, I think you missed something.  I have
>suggested the sort of scientific experiment to determine the best
>estimate of performance on a particular problem.  Anyone who knows
>about computers knows that that sort of experiment is meaningful and
>SPEC marks are not.  Unless of course "your current system" means
>SPEC marks.

I have asked this question many times, and I have not understood the answer.

If a MISC cluster is the answer, what is the question?
What types of computing will it do better than existing alternatives?
Why will it do better on these types of computing?
How will its performance be demonstrated?

I have heard some answers to these questions.  Various areas of computational
science have been named.  Various applications have been listed.
I require more quantitative evidence.  Substantial simulations of an
F21 cluster would model the network as well as the CPUs.  An easier
simulation would be to model simple array calculations to determine
how many Mbytes/second and MFlops/second or even Mops/second the F21
could perform.

for (i=0 --> N) A[i] = B[i]

for (i=0 --> N) A[i] = x + B[i]

for (i=0 --> N) A[i] = x * B[i]

for (i=0 --> N) A[i] = B[i] + C[i]

I have not seen such numbers for the F21.  Do they exist? 

>When people say "just look at what has been done with C, look at
>all these multimegabyte apps we have running here." I like to say,
>yes with 100 programmers you can write a fantastic 10 megabyte
>program that does amazing stuff.  Very impressive.
>But if you point out an example where 10 people wrote the equivalent
>program in Forth and ended up with a 100k program they say "yes but we
>have thousands and thousands of other examples of 10 megabyte
>programs written by large teams of people."
>
>When people tell me "By using C++ and this $3000 machine I can
>get Z performance."  Sometimes I say "I know of an example of
>someone doing it on a $50 computer and getting better than nZ."

When people tell me, "this can be done in Forth," I say, "it hasn't."
Forth can be promoted far better by distributing useful software written
in Forth (as Java has been promoted) than by criticizing other tools that
have made great contributions.

>The real problem is when you site examples where things
>are 1000 times smaller or 1000 times faster or 1000 times
>cheaper.  Then people find what you are saying very threatening.
>They interpret your saying you found a better way to having
>said they were an idiot for not having figured it out themselves.
>Try to talk about OKAD, F21, MISC etc and people hear funny stuff.

The real problem is that you cannot expect others to accept your claims without
demonstration.  

>Judged by whom?  How can you say how other people are making judgements?
>You seem to ignore the many papers I have published or posted on the
>subject, or dismiss these as not "quantitative."  Of course it is
>easier to ask the question and have me explain it again then to read
>all the information and quantitative information that has already
>been published or posted by other people.
>
>Either that or "quantitative" means SPECmarks to you.

If MISC chips are proposed as workstation CPUs, 'quantitative' means SPECmarks.
If MISC clusters are proposed as cluster CPUs, 'quantitative' means parallel
benchmarks.
If MISC chips are proposed for another use, then why are they being compared 
to 'complex,' 'inefficient,' and 'costly' RISC CPUs?

But still, 'quantitative' means how fast will program 'foo' run on this system.
I have seen no such posts with that information.
I have not seen that information on your home page.

Peak MIPS is not quantitative

>>Heck there is a product out now that translates binaries from SPARCs to
>>Alphas.  Workstation are not sold on CPU performance alone.

>What else then, style?  If it is not performance alone, and it is not
>price-performance then what is it?  Designer accesories?

Software, training, standards conformance, interoperability

>In my previous post I made the point that one of the problems with
>MISC is that people can't fit it into a catagory that they already
>understand.  They demand that you prove that is something that it is
>not before they will even consider that it could exist.  There is nothing
>you can really say to them.

Then why compare MISC to RISC on price and complexity, but not on performance?
Why compare it at all?  But expect to demonstrate its utility. I do not doubt
that MISC chips are useful.  I do doubt that some of the proposed uses of them
will be successful.

>When other people think of workstations they think "UNIX" "C" and the
>specific programs they use.  They think it shouldn't cost much either,
>you know like $25,000 or $100,000.

When I think of a workstation I think of "Linux", "GNU", and a 386 or 486 knockoff.
Much more like < $2000.  I can get a lot of useful work done on such a beast.

mark