stripe / rainier

Bayesian inference in Scala.
https://rainier.fit
Apache License 2.0
432 stars 51 forks source link

GLMM benchmark #436

Closed avibryant closed 4 years ago

avibryant commented 4 years ago

PR for awareness but this is low-risk enough I'm going to self-merge.

This adds a GLMM benchmark based on https://github.com/stan-dev/example-models/blob/master/BPA/Ch.04/GLMM_Poisson2.stan (which in turn is taken from https://www.vogelwarte.ch/de/projekte/publikationen/bpa/ ).

There are two variations, one with Fn and one without. There's a huge performance difference between the two, so it's appealing as a target for optimizing Fn.

The only API change this has is the addition of a simple paramVector to Continuous; this is not any different for now from just making a List of param, but it provides a hook for later optimizations.