I used Iobit Smart Defrag for about six months. At first the optimize feature worked pretty good, but gradually it quit doing its job and eventually stopped optimizing altogether.
I don't know about the future of Defraggler, but from what I can tell, it optimizes as part of its standard defrag. I could be mistaken, but it looks that way to me. Defraggler also lets you move large files to the end of the drive, which Smart Defrag can't do (at least I couldn't figure out how to). I think my overall performance has been better with Defraggler too.