So ein Tool gibt es nicht und es ist auch situationsabhängig, wo ein Bottleneck sitzt, daher kann man so ein Tool auch nicht wirklich entwickeln.
Abgesehen von CPU, GPU und RAM-Menge wird sich da aber auch nicht viel ergeben.
Die Geschwindigkeit deiner Festplatte hat praktisch keinen Einfluss darauf, wieviel FPS du im Spiel erreichst, wohl aber auf mögliche Ladezeiten, aber nichtmal dort garantiert.
Auch müsste man schon sehr spezielle Berechnungen machen, das einer CPU die Arbeit ausgeht, weil sie auf Daten vom RAM warten müsste. Was dann bedeuten würde, das der RAM zwar ausreichend viel, aber zu langsam wäre.
Ebenso ist es schwierig auszumachen, ob eine Grafikkarte ggf. von der PCIe-Geschwindikgeit ausgebremst wird, was aber unwahrscheinlich ist, wenn sie 100% ausgelastet wird.
Wenn man z.B. zigtausend Dateien mit jeweils nur 1kb kopiert, ist das bekanntermaßen sehr langsam. Man reizt dabei weder die Festplatte aus, noch den Bus (SATA, PCIe, ...), die CPU ist nicht augelastet, auch nicht Singlecore, der RAM ist nicht voll.... tja, wo liegt da jetzt der Bottleneck eigentlich? Afaik ist es der Protokolloverhead für tausende einzelne Dateizugriffe, statt einem sequentiellen Zugriff über einen zusammenhängenden Datenblock. Hat also nichtmal direkt was mit Hardware zu tun, sondern mit dem OS, Treiber bis runter zum Dateisystem auf der Platte.
Man kann sich Vergleiche angucken, wo Leute tatsächlich mal in ansonsten identischen Systemen RAM mit 3200Mhz und 4000Mhz verglichen haben. Oder mal Quad-Channel-taugliche Systeme mit Dual-Channel laufen liesen um rauszufinden, ob Quadchannel überhaupt noch was bringt (für Spiele). Das lässt aber für Aufrüstpläne auch keine Rückschlüsse zu wenn du nicht auch exakt die gleichen Komponenten hast.
Also auf was sollte so eine Software eigentlich testen? Oder andersrum: Mit dem richtigen Anwendungsfall kannst du praktisch jede Komponente in einem PC zum Bottleneck machen.