Petsc on Blue Gene

Matthew Knepley knepley at gmail.com
Wed Jul 11 19:47:53 CDT 2007


1) This is for petsc-maint at mcs.anl.gov

2) I do not understand these source locations. Obviously, nothing is
    going on on these lines. Can't we get an exception right at the
    access point for the double?

    Matt

On 7/11/07, Brian Biskeborn <bbiskebo at us.ibm.com> wrote:
> > How do you know the location of these exceptions? Can you narrow down
> further
> > to the correct function name/source line?
>
> I found the locations of the exceptions by forcing an abort at various
> places in the code and counting the exceptions.
>
> Line 62 (counting from 1) of ex2.c generates 10 errors:
> ierr = MatView(mat,PETSC_VIEWER_STDOUT_WORLD);CHKERRQ(ierr);
>
> Line 71 generates 12 errors:
> ierr = MatTranspose(mat,&tmat);CHKERRQ(ierr);;
>
> Line 82 generates 10 errors:
> ierr = MatView(tmat,PETSC_VIEWER_STDOUT_WORLD);CHKERRQ(ierr);
>
> Line 91 generates 10 errors:
> ierr = MatView(tmat,PETSC_VIEWER_STDOUT_WORLD);CHKERRQ(ierr);
>
> So the exceptions are occurring in MatView and MatTranspose here.
>
> > Also do you use --with-debugging=0 for this build? Do you get the smae
> > errors wih '--with-debugging=1' build?
>
> I've been running with debugging=0, but the same errors occur with
> debugging=1.
>
> I have also improved my understanding of Blue Gene's alignment
> requirements: experimentally, it looks like double values must be 4-byte
> aligned, but they cannot cross a 16-byte boundary. That is, the address of
> a double must be 0, 4, or 8 modulo 16. So if everything is indeed 8-byte
> aligned, there should be no problem.
>
> Lisandro:
> The compiler guarantees proper alignment of stack-allocated and
> statically-allocated data. Also, I think the Blue Gene implementation of
> malloc always returns 16-byte aligned addresses. That means the only way to
> get floating point exceptions is to use malloc'ed memory in such a way that
> alignment is disrupted.
>
> Brian
>
>


-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which
their experiments lead.
-- Norbert Wiener




More information about the petsc-users mailing list