[CP2K:2335] Re: CP2K build with Intel Compiler and MKL

Ondrej Marsalek ondrej.... at gmail.com
Sun Oct 4 15:14:32 UTC 2009


Dear Axel,

thanks for the comments, I really appreciate this.

On Sun, Oct 4, 2009 at 15:31, Axel Kohlmeyer <akoh... at gmail.com> wrote:
>
> ondrej,
>
> i am feeling with you and if you look back in the group's archive you
> will find several, in part very provocative, posts by myself on that
> subject.

Indeed. For example this thread:

http://groups.google.com/group/cp2k/browse_thread/thread/56ccd8e279be048d

is an interesting read, looking at the issues discussed, especially
considering that it is some two and a half years old.

> i just wanted to point out two issues to you: 1) at least you
> _do_ have some detailed means to verify your compile

This is certainly a good thing and I am glad that it does exist.

> 2) it is too easy
> to _always_ blame the compiler, as it happens in my opinion too often.

I do not want to blame the compiler autmatically. However, I am led to
this by the developers claiming that they code Fortran 95 and the fact
that with some compilers, there seem to be significantly less trouble,
although often at an efficiency cost. I can't verify this claim
independently, as I am not a Fortran expert and I have not read the
standard, so I will not comment on how much these problems can be
avoided by coding more carefully.

> i've tried several times to make a point that to me personally it
> borders
> on masochism to make fortran do object oriented programming (sorry
> juerg,
> i know you won't change your opinion).

And I would be among the first to agree with you here.

> you _can_ do it and cp2k itself
> is
> proof that it _can_ work, but as a consequence you have overly
> verbose,
> confusing, and error prone programming, that on top of that demands
> the
> maximum from all currently existing compilers.

Although this sounds pretty harsh, I guess it would be very hard to
argue otherwise.

> it is not that other languages are free of problems, just look at
> the
> metaprogramming madness in c++ (take boost for c++ as an example:
> great
> in principle, convernient to use, but a nightmare to maintain once
> your
> code got "infected" with it), but there are languages that can help to
> make code transparend when used well, and here lies a missed
> opportunity.

I find c++ templates useful, although they can become pretty tricky to
debug, I admit. Waiting for a compiler to cruch for example boost.python
source can be quite a project.

> since it is the expressed opinion of the majority of the code
> contributing
> cp2k developers, that they won't change their style of programming,
> there
> is little hope that the situation will change fundamentally.

And I certainly do not want to ask them to do this.

> but this is their freedom as developers and that is something one has
> to respect, if one wants to use their software. you _do_ get it for
> free and are by no means forced to use it.

Sure. On the other hand, as you asked more than two years ago, if they
want people to use it, perhaps there are some areas that need more
attention. I think that ultimately this is a simple matter of
priorities. In the case of CP2K, things like documentation, (relatively)
stable releases, portability/"compilability" and usability are simply
much lower in priority than new features and efficiency. This is fine by
me if the users are aware of it, but it is in contrast with a lot of
other projects, even those of comparable complexity.

Best,
Ondrej

> cheers,
>   axel.
> >
>



More information about the CP2K-user mailing list