On 2018-06-28 12:45, Paul Winalski wrote:
On 6/28/18, Theodore Y. Ts'o
<tytso(a)mit.edu> wrote:
Parallel programming *is* hard for humans. Very few
people can cope
with it, or with the nasty bugs that crop up when you get it wrong.
I'm not sure about it. Look how many processes/threads(?) some hardware
guys program in VHDL/Verilog at a time, how many of those run in
different clocking domains, parallel and the stuff works.
I think it is just a matter to get used to thinking this way ...
The problem is
that not all people are interested in solving problems
which are amenable to embarassingly parallel algorithms.
Most interesting problems in fact are not embarrassingly parallel.
They tend to have data interdependencies.
There have been some advancements in software development tools to
make parallel programming easier. Modern compilers are getting pretty
good at loop analysis to discover opportunities for parallel execution
and vectorization in sequentially-written code.
I was actually just musing about this, but we have multi-threaded
architectures, we have languages which would support this.
Probably we are just missing the problems, we would like to solve with it?
;-)