the answer was to not reboot and login to the terminal. Then you can find if some sort of process was hung or just chewing up extra cpu, now that you have already rebooted its harder. But you can check all the logs to see if anything stands out.
Well looking at the logs tonight I can't see anything untoward*, I suppose http://192.168.0.1/status.php#Processes
would have come in very useful this morning.
I have notice (some time ago) my swap file has disappeared, I realise this is unrelated.
*I can see hundreds of these errors bad name in /var/dhcpd/var/db/dhcpd.leases
which I think relates to one of my devices which has a host name with () in it, I've no way to change the host name, so not sure how to get aground that - I have posted on a thread on the pfSense forums so I'll see what they suggest.