Swietanowski Artur wrote:
>
>
> You didn't get the point: some F77 codes would never come into
> existence because it would take too many man-hours of labour to
> write them.
>
> You also didn't get the other point (complexity). An O(n**2)
> algorithm in all non-trivial cases will be better than O(n**3)
> or O(e**n). Achieving better complexity practically always
> requires more complex processing. And compiler optimization
> simply can't reduce the complexity, just scale down the running
> time, which corresponds to moving from O(e**n) to O(0.1*e**n).
> That's going nowhere.
>
> So with a better language you may end up:
> a) having a running program,
> b) having lower algorithm complexity and finally
> c) having after all a faster program, too.
>
> I repeat: even in the (relatively simple) area like linear
> programming many commercial and research codes now are written
> in C (CPLEX a prominent case, LOQO another good example).
> I can name many other examples from many other fields of research.
>
> > Seismic data processing consists in the application of generally
> > quite simple algorithms to a *huge* amount of data.
>
> That's a very narrow application field. Numerical optimization
> applies huge amounts of highly complex processing to relatively
> small amounts of data. And most optimization problems we'd like
> to solve are unsolvable because we need better algorithms (and
> not better compiler optimizations).
>
> > Each langage has a specific domain of
> > applications. Scientific computing needs a langage: f77 was a good
> > one for that (much better than C),
>
> Many researchers think otherwise and voted with their feet.
>
Maybe you're right, but if so, why don't you use C(++) if you
think it's more suited (and I think it is in that case), instead of
trying to modify Fortran in that way ?
>
> 1) Learn and use what you like and need. Ignore the rest. And don't
> tell others (who may need more) to use another language.
> 2) Automatic parallelization works best for so-called embarassingly
> parallel problems. In more complex cases it's again down to
> the algorithm (which often has to be totally redesigned
> or simply replaced by a completely different one).
It's not so simple: I'm concerned by new features aven if I don't use
them, just because it may affect all the language by reducing
performances because of the global complexity. Instead of focusing on
few optimization points, vendors have to implement a lot of features.
Efficiency and complexity seem to not be compatible
(up to certain point), so if all langages tend to complexity, what
is remaining for people who first want efficiency ?
> In my problems automatic parallelization (as allowed by F90 now)
> is 100% useless. I'm sorry about that because it would make my
> life easier if I could use it. But that's just a fact. And I'm
> not going to argue with a fact.
I agree, that's why fortran community should focus on the improvement
of automatic parallelization, instead of implementing lot of complex
features. Hence, Fortran would be *the* reference for parallel
computing, and every people interested by this would find advantages
to use Fortran instead of C (people won't use Fortran just because
its OO features: C++ is now the standard for that).
regards
--
-----------------------------------------------------------------------
Pierre Hugonnet, PhD Student (Geophysics) |phone: 33- 5 59 83 57 94
ELF Exploration Production, PAU (FRANCE) |fax : 33- 5 59 83 48 58
Geological and Geophysical Research Div. |mailto:[log in to unmask]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|