Hello,
You should try each of timers on your system, as it depends of hardware,kernel version and kernel config too. On my ARM (Marvell Kirkwood at 1.2Ghz) with 3.2.38 PREEMPT RT kernel and "freeswitch -rt" best results, according to "timer_test 20 200", I get using mod_timerfd (+/- 1-3mks with rare spikes of 10-20mks), posix timers slightly worse. Soft timer working not very precise on my system. Sometimes it give periodic spikes of ~=150-200mks. I tried(hard enough) to tune softtimer with different switch.conf timing options, but this options is not well documented, so without success.
P.S. Sorry for my English.