[petsc-dev] broken stuff in next please fix

Barry Smith bsmith at mcs.anl.gov
Sun Jan 5 13:15:50 CST 2014

On Jan 5, 2014, at 1:09 PM, Jed Brown <jedbrown at mcs.anl.gov> wrote:

> Barry Smith <bsmith at mcs.anl.gov> writes:
>>   I have switched back to using the
>>   mpich-master-v3.0.4-106-g3adb59c.tar.gz I messed up and put that
>>   change into a commit when I shouldn’t have. (I still miss the nice
>>   bk gui that showed cleanly each change you were committing).
> I never used the bk gui, but what is lacking in "git gui" or sourcetree?
>>   But it is extremely worrisome that we need to use PARTICULAR
>>   versions of MPI implementations to get clean compilers?!?!?!
>>   1) Isn’t this fundamentally wrong? 
> Like all dependencies, MPI implementations can have bugs.  This was a
> bug and was fixed before it spent much time in the wild.  

    It appears that this bug appeared in a release and hence could affect many users.  I think configure should detect it and do either A) or B) otherwise it looks to all users like a bug in PETSc, when it is not.  Yes we cannot catalog all bugs but ones that we know about and that make PETSc look bad should be handled.


> The memory bug
> is more subtle and I have no idea why mpich-3.0.5 has not been released.
>>   1.5) Do we want to be in the business of saying, “if you use
>>   compiler XX version YY then you need to use MPICH implementation
>>   version ZZ, otherwise it won’t work?
> This is just a warning, but some MPI implementations have functions that
> crash at runtime.  Others have space leaks (e.g., V1R2M0 on BG/Q).
>>   2) Shouldn’t we be portable to all the various MPI implementations that are released at various times? 
>>   3) Do we need a configure test to properly handle the “broken” MPI implementations? 
> Lots of compilers have bugs too, including wrong code.  I don't think
> it's maintainable to catalog all the bugs in all dependencies on all
> architectures.  If something is buggy on a popular system, such that it
> creates complaints, we can work around it.  Note that some packages like
> ParMETIS have major open bugs that people hit all the time, and we
> maintain patches that upstream inexplicably does not apply.
> In the case of MPI type tags, the user encounters the same warnings if
> they use MPI_2INT.
> Public shaming for known bugs that intentionally cannot be detected at
> configure time is one marginally-effective recourse.

More information about the petsc-dev mailing list