Чем сделать профилактическую дефрагментацию SSD и HDD?
Дефрагментацию HDD прекрасно делает ОС - начиная с windows 8 это делается автоматом в фоновом режиме.
SSD дефрагментировать в принципе невозможно.
Все специальные алгоритмы для дефрагментации SSD это просто  профанация, а утилиты такого рода выпускают мошенники.
Любой человек имеющий хотя бы базовое представление о работе SSD вам это скажет.
специального алгоритма дефрагментации для SSD (я не помню его название, но в вышеуказанной программе он был
Заинтересовался вот этим и даже специально посмотрел. Вот что пишет сам Auslogics: "We had a lot of users ask us whether they should defragment their SSDs. The answer is “No”.
И далее: "However, it’s still best to make sure defragmentation is disabled." (это о Windows scheduled disk defragmentation)
Дефрагментация для ССД вредна - она только увеличит его износ, а транслятор полностью обесценит её результаты на физическом уровне - записать конкретные данные в конкретную ячейку не получится.
Что для ССД нужно, так это TRIM. Если эта команда вдруг у вас не работает, то включите. 
Проверка - fsutil behavior query disabledeletenotify в командной строке. 0 - включена, 1 - отключена.
Это важно, к примеру, вот тест ССД до и после TRIM.
Для жёстких дисков раньше хвалили Raxco PerfectDisk, но со временем он, по-моему, разжирел. 
Из бесплатных должен подойти UltraDefrag, ещё есть JkDefrag и Smart Defrag.