[Rd] idea for GSoC: an R package for fitting Bayesian Hierarchical Models

hadley wickham h.wickham at gmail.com
Mon Mar 24 13:45:50 CET 2008


>  Ya. But speeds are rather different.
>  I admittely missed a comparison with Umacs in my short demo.
>  However, from some early experiments (I'm doing while I'm writing), as
>  I suspected, my approach results being many times faster than Umacs,
>  even if one doesn't specify samplers as C code. Things goes even
>  better for my demo implementation if one tries to plug in samplers
>  specified as pure C code, which would further eliminate a lot of
>  memory allocations/deallocations behind those "rnorm()".
>
>  My aim is to obtain something which achieves decent speed, compared
>  with JAGS. I mean, I can easily experiment new samplers by using an
>  interpreted language, but if at the end I obtain something which is
>  *many* times slower than JAGS (which is moreover much more robust and
>  easier to work with), the whole stuff results being of little pratical
>  interest.
>
>  More: how can one really experiment a new custom sampler if doing some
>  thousands iterations takes forever, so that checking your sampler
>  pratical behaviour is a pain (I speak about my personal experience)?
>  That's why I want to always keep attention on speed, and give the
>  possibility to the user to either use R or C code at his choice, with
>  the ability to modify model node values in place, without unneeded
>  'malloc's. Ya, I would abandon pure functional style...

There is some interesting work being done on this topic in computer
science - e.g.

@inproceedings{keller:2008,
	Author = {Keller, Gabriele and Chaffey-Millar, Hugh and Chakravarty,
Manuel M. T. and Stewart, Don and Barner-Kowollik, Christopher},
	Booktitle = {Proceedings of the Tenth International Symposium on
Practical Aspects of Declarative Languages},
	Title = {Specialising Simulator Generators for High-Performance
Monte-Carlo Methods},
        Url = {http://www.cse.unsw.edu.au/~chak/project/polysim/},
	Year = {2008}
}

which explores a way to define a simulation at a high-level and then
compile it down to fast low-level primitives.  This seems like an
interesting approach, but I suspect you would struggle to find
students with the requisite statistical and computational backgrounds.

Hadley


-- 
http://had.co.nz/



More information about the R-devel mailing list