Die FFT ist mit Sicherheit deutlich langsamer als die Schleife → Bringt nichts, die Schleife zu optimieren.
Ich glaube auch nicht, dass man da überhaupt viel optimieren könnte, außer vielleicht mit speziellen SSE-Befehlen in Assembler. Dann läuft die Schleife vielleicht 4x so schnell, aber das ganze Ding nur 1% schneller. Daher ist es den Aufwand, die höhere Komplexität und die schlechtere Lesbarkeit definitiv nicht wert.
Generell hat es aber wenig Sinn, basierend auf Mutmaßungen optimieren zu wollen. Lad dir mal den
SamplingProfiler (kostenlos) runter, stell unter Delphi in den Projekt-Optionen (unter „Linker“) deines Projektes ein, dass eine MAP-Datei generiert werden soll (je detaillierter desto besser) und erzeuge das Projekt neu. Anschließend lass mal den Profiler drüberlaufen, dann siehst du eher, wo die Flaschenhälse liegen...