tl;dr Sì, fa davvero molta differenza.
Anzitutto, in generale aggiungere altri livelli di cache, su un bus/dispositivo lento, aiuta sempre.
La cache interna e del sistema hanno ruoli diversi, non sono una in alternativa all'altra.
La cache del sistema operativo è a conoscenza della struttura dei file. Quindi sceglierà il momento migliore per "inviare" le scritture "cached" al disco, e quando "invalidare" la cache costringendoti a rileggere, sapendo quando apri o chiudi un file, e se lo apri in lettura o scrittura, etc.
Viceversa, il disco non sa come sono fatti i file, ma sa come è strutturato fisicamente il disco. Sugli SSD non è detto che dall'indice del blocco può indovinare su quale punto di quale chip si trova, perché questa corrispondenza cambierà nel tempo per rendere il disco più longevo. Quindi con queste informazioni aggiuntive, può sfruttare alcune euristiche basate sulla struttura fisica per migliorare le prestazioni. Per gli hard disk invece ti serve semplicemente perché sono dannatamente lenti e ogni aiuto fa differenza.
Inoltre, si parla di DRAM, quindi volatile. Quindi più che i blocchi usati spesso sono quelli usati di recente che si trovano nella cache del disco, perché non sopravviverebbe al riavvio. Alcuni hard disk hanno un piccolo SSD dentro che invece tiene i dati usati più spesso, e sono molto più veloci di un hdd normale. Ma su un ssd questo non ha senso perché se potessi fare una memoria non volatile più veloce faresti direttamente un ssd più veloce.