[Rcpp-devel] Sparse matrix operations

Dirk Eddelbuettel edd at debian.org
Mon Feb 3 20:19:57 CET 2014


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