[Rcpp-devel] Sparse matrix operations
Søren Højsgaard
sorenh at math.aau.dk
Tue Feb 4 10:30:13 CET 2014
Just to clarify this (for myself):
In a broader perspective, isn't it so now that there is very limited need for as< >(some_SEXP)?
When calling from R we can declare input to be NumericMatrices, NumericVectors ets, but we can also declare it to be arma-matrices, arma-vectors etc AND also Eigen-matrices etc?
Where one definitely needs as< >() is when inputting some SEXP which one wants to coerce to some STL container?
Are there other cases where one definitely needs the coercion via as<>()??
Cheers
Søren
-----Original Message-----
From: Dirk Eddelbuettel [mailto:edd at debian.org]
Sent: 3. februar 2014 20:20
To: Douglas Bates
Cc: Dirk Eddelbuettel; French, Joshua; Søren Højsgaard; rcpp-devel at lists.r-forge.r-project.org
Subject: Re: [Rcpp-devel] Sparse matrix operations
On 3 February 2014 at 12:59, Douglas Bates wrote:
| On Mon, Feb 3, 2014 at 11:48 AM, Dirk Eddelbuettel <edd at debian.org> wrote:
|
|
| On 3 February 2014 at 10:23, French, Joshua wrote:
| | Soren and Doug,
| |
| | Thanks for the info about the sparse matrices. I'll give it a go and
| seen what
| | happens. If it works out, then perhaps I'll be able to provide a nice
| | RcppGallery example.
|
| Yes -- there isn't much yet in RcppArmadillo but this is expected to
| grow. And CRAN now has rARPACK so we get cheaply to the object code too.
|
| One last comment I should have made earlier: "dense" data from R comes over
| cheaply as a SEXP; "sparse" will always require a copy. Keep that in
| mind,
| and on the margin don't believe anything any of us say but keep profiling
| and
| measuring :)
|
|
| Not really. RcppEigen offers conversion of SEXPs to
| Eigen::SparseMatrix and Eigen::MappedSparseMatrix types. The second
| uses the storage from R without copying and hence should generally be declared with the const modifier.
Oooops. My bad.
I guess I generalized from my less performing converters contributed to RcppArmadillo. Time permitting, maybe I should have another look at RcppEigen and see if I can do better for RcppArmadillo.
| I think that wonderful vignetter by Bates and Eddelbuettel describes
| this :-)
:-)
Dirk
--
Dirk Eddelbuettel | edd at debian.org | http://dirk.eddelbuettel.com
More information about the Rcpp-devel
mailing list