ok some information for those using pfsense with an ssd.
The pfsense devs are using an old way to configure partitions, in short they -
dont enable trim
dont align partitions to 4k alignment
and they also enable SUJ which I think is best disabled on an ssd.
to fix the alignment follow this guide https://forum.pfsense.org/index.php?topic=86139.0
if you try to do it all manually pfsense will rewrite the partitions, but I have confirmed the above guide does lead to a 4k aligned partition.
The commands to enable trim and disable soft updates journaling are. (assuming the ssd is on ada0, which it will be if its the only sata device)
tunefs -t enable /dev/ada0s1a
tunefs -j disable /dev/ada0s1a
Less important is to have the swap on a swapfile not partition as the partition wont utilise trim, but I think its unlikely a pfsense box with at least 4 gig of ram will even use the swap.
bottom of this page is a couple of commands to make the swapfile http://www.wonkity.com/~wblock/docs/html/ssd.html
(although can be put anywhere you like)
dd if=/dev/zero of=/usr/swap/swap bs=128k count=16384
(2 gig swap)
add these 2 lines to /etc/fstab
# Device Mountpoint FStype Options Dump Pass#
md99 none swap sw,file=/usr/swap/swap,late 0 0
then after run