Performanceprobleme mit Vermutungen zu lösen ist meist eine schlechte Idee.
Ein erster Weg kann wirklich sein, mit GetTickCount und CO Zeiten zu messen.
Ein Problem bleibt: auch wenn eine Funktion nur 3-4 ms für einen Lauf braucht, kann die am Ende für eine extrem lange wartezeit verantwortlich sein, wenn die entsprechend oft aufgerufen wird.
Ich verwende bei solch nicht trivialen Dingen sehr gerne
http://www.prodelphi.de/
Auch, wenn das den Sourcecode verändert - aber das ist in Zeiten
SVN, git und co meiner Meinung keine Ausrede mehr. Vor allem ist ProDel mit 60-70€ echt ein Schnäppchen...