NB: For the following tips, it's always a good idea to test settings in a staging environment and see how it affects performance.
Cassandra on SSD
Cassandra works very well with SSD drives. However because of how the storage engine works, usage of the drives needs to be tuned for high read and write concurrency.
Test your read/write concurrency settings
A simple way to test your settings is to create a long running write to the SSD partition (e.g. using dd). Then as it's running, start a long read. If things aren't set up correctly, either the reads or writes will suffer.
You can also look at your 'nodetool tpstats'. If you see high pending or blocked on flush writer coinciding with relatively idle disk usage, that is also a symptom.
Device queue settings
The following device queue settings have been very beneficial for some customers:
echo deadline > /sys/block/sda/queue/scheduler
blockdev --setra 8 /dev/sda
echo 0 > /sys/block/sda/queue/rotational
Note: Replace the "sda" with the correct block device. This is a run time change. To make it permanent you need to put it in a rc.local script
An fstab setting that may be beneficial:
/dev/sda /var/commitlog ext4 noatime,nodiratime,discard,errors=remount-ro 1 2