A couple more tweaks to vSGD and I've got it working pretty reasonably, but it does depend upon its parameters: C, len of slow start, and initial time-constant.