[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Parallel computing
aiiadict@gmail.com wrote:
On Mar 7, 9:18 pm, "Michael J. Mahon" <mjma...@aol.com> wrote:
The primary driver for replacing machines these days is
a new OS release, not increased utility because of performance.
I wonder if Microsoft intentionally makes their OS **HUGE** and
**SLOW** to make consumers go buy faster chips? I don't care if I
can't find drivers for the latest, greatest addons. I want a fast
computer
with a good OS... Win98 flys on these fast machines. WinXP on a 2ghz
runs as fast as Win98 did on a 400mhz CPU.
In the late 1990's, Nathan Myhrvold, Microsoft's CTO at the time,
said quite joyfully that their job was to keep using up the capacity
created by faster processors and larger memories, so that the cycle
of PC upgrades would not decelerate (and their stock would continue
to increase exponentially ;-).
We are past the time when exponential performance improvements
are a "problem", so I hope they are adjusting their strategy
accordingly. ;-)
A decade ago, I tried fervently to call attention to the need to
invest in parallel programming if we wanted the "doubles every year
or two" lifestyle to continue. Predictably, the call was ignored,
as it has always been.
You know so much about this stuff... What would YOU do? How
would you do it?
I actually have some practical suggestions, but I'll save them
for another thread--I've already made a mess of this one. ;-(
"we need to invest in parallel programming".... what does that
include,
and can you make a tutorial for Apple II parallel programming, please?
(parallel with AppleCrate)... We can start right now :-P
I'm currently working on a file server for NadaNet/AppleCrate, so
maybe more folks will be willing to give it a try.
There's already a fair tutorial of the "how to do it" variety
on the web, but "what to do" is a longer tutorial. ;-)
My machine spends most of its time idling, waiting for me to click
or type something!
What would you have it do instead?
It has nothing else to do--that was my point.
The application folks have not come up with anything compelling
to use up those cycles. The best candidate is background grid
computing; like SETI@home, protein folding, etc.--nothing that
delivers actual value to end users.
Then, when I do, it initiates a single threaded
computation that, sometimes, takes a bothersome time to complete.
For sure! a 1Ghz machine takes about 20 minutes to "compile" Apple
II FPGA by Gary Becker... It might have been even longer than that,
because
I walked away from it.
I don't think I'm unusual.
The skunk doesn't smell itself :-) I think it depends on who you
ask..
Parallel computing: There's nothing that says a parallel CPU has to
be
in one box, in one building. There is SETI.. a few other parallel
computing
projects on the net. Your machine sits idle waiting for input...
Exactly. Grid computing is a potential dynamo--if we can ever
figure out how to do the things we want done with it.
Making something possible is a long way from making it practical.
What ever happened to fiber optic network that we were supposed to
get?
They dug up the streets everywhere, and installed the cables...
If a fast network were available, while your machine sat there idle,
it could be
compiling part of my VHDL code... Or rendering some of my video.
While my
machine sits idle, it could be compiling your new parallel OS :-)
If a fast city, state, country, or worldwide network was available, it
might be inspiration
for some to learn how to program parallel..
In the US, telecom oligopolies are being very stodgy (with too few
exceptions) at rolling out optical bandwidth to the home. They all
want to control (get a cut of) the applications of their bandwidth,
as opposed to just being the "common carriers" they should be.
Should applications be rewritten to use parallel CPU's, or should an
OS be created
to parse through a single thread application and chop it up into tasks
that can be run
in parallel?
Since we don't know nearly enough about doing parallel decomposition
ourselves, we're not in any position to write algorithms to do it
automatically. ;-)
The lone exceptions are "embarrassingly parallel" problems, which
break like a crystal into arbitrarily many identical subproblems
when struck with a blunt object ;-), and highly structured algorithms,
which can be divided along the lines of their structure without
creating a need for massive bandwidth between chunks (like partial
differential equation solvers).
DARPA funded the Grand Challenge (get autonomous vehicles across
desert)
There is a direct application of this technology to power/war/
politics. It seems
like they'd also want to fund a parallel computing project. Faster
computations =
better bombs, better radar, etc etc..
You're right--this has enormous strategic benefits to all fields
that require fast computation. But for some reason, we have been
*very* slow to perceive it as a critical issue.
This is the kind of situation in which winners become losers and
losers become winners...
-michael
NadaNet networking for Apple II computers!
Home page: http://members.aol.com/MJMahon/
"The wastebasket is our most important design
tool--and it's seriously underused."