This topic came up during the CAT lecture. I thought - trivial - pah! There's more to it...
The easy option is to use a conventional domestic central heating pump e.g. a Grundfos. Easy to obtain, but the flow rate will be too high: resulting in lower performance.
If the flow rate is excessive, the solar panel will be flushed with cool water. This reduces the outlet temperature. Yes, the whole system will still rise in temperature, but if a small quantity of hot water is required immediately you wont get it just lots of water sloshing around at the same temperature.
A high flow rate causes greater mixing in the solar storage tank: Lower rate will encourage stratification (Hot at the top, Cold at the bottom.) This means a proportion of water is available hot, and the collector is being fed with colder water, increasing the amount of energy received from the sun, not being lost in panel thermal loss and feed losses.
Temperature at the panel and cylinder coil feed points can be monitored. With a slow rate, the heat gained in the panel and heat transferred by the coil can be measured. The difference in feed point temperatures will be greater, and less prone to measurement accuracy.
Perhaps we aren't too concerned with absolute accuracy with some standard but we do want to know if we are getting a fractional amount of heat (< 1C) into the cylinder.
One advantage of a high flow rate is that the panel will be more efficient: the panel will have lower ambient heat loss when running colder.
A parasitic load - a restricting gate valve - could be used to restrict flow rates but is somewhat alien to our efficiency ethos.
An interesting, but expensive, design would use a PV cell to drive the pump. Aha! and a PIC...
When do you turn on the pump? And when do you turn it off? How about a siphon based system?
(... and, yes, I'm still pondering on this!)