From: jpwoodruff@gmail.com
Subject: Re: A thicker binding for Lapack
Date: Mon, 31 Dec 2012 16:24:34 -0800 (PST)
Date: 2012-12-31T16:24:34-08:00 [thread overview]
Message-ID: <4a2b9c88-7d3e-4b21-90f0-a9b6054df813@googlegroups.com> (raw)
In-Reply-To: <lywqvzwcn1.fsf@pushface.org>
On Sunday, December 30, 2012 12:41:54 PM UTC-7, Simon Wright wrote:
> jpwoodruff@gmail.com writes:
>
>
>
> > On Saturday, December 29, 2012 12:59:46 PM UTC-7, Simon Wright wrote:
>
> >> jpwoodruff@gmail.com writes:
>
> >>
>
> >> > Conclusion: transpose appears necessary.
>
> >>
>
> >> For info, the compiler (well, GNAT) will automatically transpose when
>
> >> doing assignment between arrays with different conventions. And it's
>
> >> quicker (not by very much at -O2, though).
>
> >>
>
> >
>
> > I'll be darned. You are both right about pragma Convention. I am
>
> > going to unwrite some code. Even my old gnat gpl 2010 got it right.
>
> > I need to (re)learn to trust Lady Ada.
>
> >
>
> >
>
> > From Simon's context, I found System.Generic_Real_LAPACK. There is
>
> > quite a lot there. I want to spend some time reading that, then
>
> > determine if (as I suspect) the problem I stated has already been
>
> > solved by the structures there.
>
>
>
> System.Generic_Real_LAPACK looks a bit off to me - lots of unchecked
>
> conversions of address-of-array into access-to-another-array-type. But
>
> it may do what you need.
>
>
>
> NB, GNATs later than GCC 4.6 or GNAT GPL 2010 don't use LAPACK or
>
> BLAS. I wrote a bit about this on comp.lang.ada at [1].
>
>
>
> [1] http://coding.derkeiler.com/Archive/Ada/comp.lang.ada/2012-07/msg00138.html
I'm uncertain about what Ada lapack materials are in play. Please
help me get the story of the several variations straight.
about System.Generic_Real_LAPACK --
Is it true that this structure that I see in my gpl 2010 is obsolete?
Has it been removed in later gnats? Has interfaces.fortran.lapack met
the same fate?
About lapack.ads on sourceforge, attributed to NMA and SJW: --
Is this in fact the only low-level binding to the Fortran linear
algebra subroutines?
Properties of lapack.ads:
- largely auto-generated.
- covers the entire lapack library: single, double precision, real
and complex.
- defines array types with components and indices specified from
types defined by interfaces.fortran.
- uses pragma fortran for vector and matrix array types.
Evidently conversion between columnwise and row-wise storage is
handled transparently by Ada language specification of pragma.
Transparent transposition happens on assignment (but not on parameter
elaboration?). Some testing is in order here.
I considered enumerating the properties of System.Generic_Real_LAPACK
but if it's leaving, why bother?
John
next prev parent reply other threads:[~2013-01-01 0:24 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-27 18:48 A thicker binding for Lapack jpwoodruff
2012-12-27 19:18 ` Shark8
2012-12-29 18:36 ` jpwoodruff
2012-12-29 19:59 ` Simon Wright
2012-12-30 18:05 ` jpwoodruff
2012-12-30 19:41 ` Simon Wright
2013-01-01 0:24 ` jpwoodruff [this message]
2012-12-27 20:37 ` Simon Wright
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox