MTL development road

"Michael Smolsky" <[email protected]> Sat, 1 Dec 2007 15:19:44 -0500
Newsgroups gmane.comp.lib.mtl.devel
Message-ID <[email protected]>
This is a multi-part message in MIME format.

--===============0577264413==
Content-Transfer-Encoding: 7bit
Content-Type: multipart/alternative; boundary="_----------=_119654038411640"

This is a multi-part message in MIME format.

--_----------=_119654038411640
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset="iso-8859-1"

Hi,

MTL looks like a very promising development. I am considering switching
my project to MTL.

I would like to know MTL maintainers' opinion about the immediate future
of MTL. The first set of questions, that comes to mind is:

* Is there a document, that describes the roadmap for MTL?

* I noticed, that MTL currently doesn't do bound checking: my test code,
in which I deliberately assigned a value to an out-of-bound element of a
dense matrix didn't crash in any way. I find this pretty inconvenient.
Having bound checking (when compiled under -DDEBUG) can save a lot of
development time. From talking to Java folks, I noticed, that presence
such checks in Java libraries, and lack of those in STL implementations
was one of the reasons, that drove them away from C++ and towards Java.
Is there a plan to add bound checking? A place, such as
dense2D.h:rect_offset<..>::elt(..) would be my guess?

* It's great, that MTL supports some LAPACK/BLAS. With all due respect to
optimizations, that are built into MTL, some vendors optimize these
libraries to their hardware, and that perhaps can beat sophisticated
template unwrapping techniques. Hence my questions:

** Is there a plan to support sparse BLAS routines? Maybe MTL supports
those now, and I just missed it?

** It seems, that matrix/vector products are handled by MTL itself,
rather than by BLAS. Is this the case? Is there a doc, that describes
what functionalities of BLAS/LAPACK are utilized, rather than being
implemented within MTL?

AMD promises to start selling FireStream boards fairly soon
(http://ati.amd.com/products/streamprocessor/specs.html), and those might
turn out to be ideal platform for running applications, built on top of
MTL. Has anybody tried linking an MTL-based application to ACML, which is
AMD's implementation of BLAS/LAPACK?

Regarding the previous questions, it looks like MTL does not use utilize
exceptions for reporting BLAS/LAPACK error codes. Is there a plan to wrap
LAPACK's INFO variable into exceptions?

* Is there a reason, why standard matrix-algebraic operations, such as
matrix products, addition, etc are not expressed in terms of C++
operators (*, +, etc)?

Thank you for programming and supporting something, that looks like a
very useful library.

Regards,

Michael.

--=20
Over 2 Million Holiday Gift Ideas - Take a Look!
mail.com shopping at  http://mail.shopping.com/?linkin_id=3D8033174


--_----------=_119654038411640
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html; charset="iso-8859-1"

Hi,<br><br>MTL looks like a very promising development. I am considering sw=
itching my project to MTL.<br><br>I would like to know MTL maintainers' opi=
nion about the immediate future of MTL. The first set of questions, that co=
mes to mind is:<br><br>* Is there a document, that describes the roadmap fo=
r MTL? <br><br>* I noticed, that MTL currently doesn't do bound checking: m=
y test code, in which I deliberately assigned a value to an out-of-bound el=
ement of a dense matrix didn't crash in any way. I find this pretty inconve=
nient. Having bound checking (when compiled under -DDEBUG) can save a lot o=
f development time. From talking to Java folks, I noticed, that presence su=
ch checks in Java libraries, and lack of those in STL implementations was o=
ne of the reasons, that drove them away from C++ and towards Java. Is there=
 a plan to add bound checking? A place, such as dense2D.h:rect_offset&lt;..=
&gt;::elt(..) would be my guess?<br><br>* It's great, that MTL supports som=
e LAPACK/BLAS. With all due respect to optimizations, that are built into M=
TL, some vendors optimize these libraries to their hardware, and that perha=
ps can beat sophisticated template unwrapping techniques. Hence my question=
s:<br><br>** Is there a plan to support sparse BLAS routines? Maybe MTL sup=
ports those now, and I just missed it?<br><br>** It seems, that matrix/vect=
or products are handled by MTL itself, rather than by BLAS. Is this the cas=
e? Is there a doc, that describes what functionalities of BLAS/LAPACK are u=
tilized, rather than being implemented within MTL?<br><br>AMD promises to s=
tart selling FireStream boards fairly soon (http://ati.amd.com/products/str=
eamprocessor/specs.html), and those might turn out to be ideal platform for=
 running applications, built on top of MTL. Has anybody tried linking an MT=
L-based application to ACML, which is AMD's implementation of BLAS/LAPACK?<=
br><br>Regarding the previous questions, it looks like MTL does not use uti=
lize exceptions for reporting BLAS/LAPACK error codes. Is there a plan to w=
rap LAPACK's INFO variable into exceptions?<br><br>* Is there a reason, why=
 standard matrix-algebraic operations, such as matrix products, addition, e=
tc are not expressed in terms of C++ operators (*, +, etc)?<br><br>
<div>

</div>
Thank you for programming and supporting something, that looks like a very =
useful library.<br><br>Regards,<br><br>Michael.<br><BR>

--=20
<div> Over 2 Million Holiday Gift Ideas -<a href=3Dhttp://mail.shopping.com=
/?linkin_id=3D8033174 target=3D"_blank"> <b>Take a Look!</b></a><br>
mail.com Shopping</div>

--_----------=_119654038411640--


--===============0577264413==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
This list is archived at http://www.osl.iu.edu/MailArchives/mtl-devel/
--===============0577264413==--