Hier kommt es darauf an welche Regeln die API aufstellt und wie viel Freiraum bei der konkreten Umsetzung verfügbar ist.
Wenn du ins extreme gehen willst, kannst du dich auch schon beschweren das jeder Shader anders übersetzt und ausgeführt wird.
Du kannst eine Zeile-Code egal zu was schreiben und sofort kritisieren, dass Hardware A es unter der Haube anders ausführt, als Hardware B.
Es liegt hier kein Standard vor, der vom Software-Modell bis zur Hardware-Instruktion vorschreibt wie etwas genau ausgeführt werden muss.
Wenn du die absolute Vergleichbarkeit haben willst, dann hast du auch überall die absolut gleiche Software und Hardware und die gleichen Ergebnisse.
Ein fiktives Beispiel:
Wenn du mit deinen Freunden in Italien bist, könntet ihr festlegen vom Startpunkt A nach Rom zu gehen.
Jeder von euch nimmt einen anderen Weg, am Ende landet ihr alle beim dem Endpunkt B, nämlich Rom und das Ergebnis (nach Rom zu gehen) ist korrekt.
Man kann dann testen wie schnell jeder von euch es nach Rom geschafft hat.
Du kannst dich jetzt beschweren das nicht jeder den gleichen Weg genommen hat, aber haben das die Regeln vorgeschrieben?
Beim 3DMark ist es eben die DX12 API welche die Regeln vorschreibt und damit muss man halt leben, die Rahmenbedingung ist aber immer die gleiche.
Jetzt kommt praktisch die Kritik, nein das finde ich nicht cool das jeder einen unterschiedlichen Weg nach Rom nehmen darf, dass verzerrt die Ergebnisse und ist nicht vergleichbar.
Und damit schränkst du die Testbedingungen natürlich wesentlich ein, aber wird das Ergebnis jetzt realistischer oder fairer?
Weil jetzt muss jeder den gleichen Weg nehmen, wo man einen kleinen Berg hochklettern muss.
Wer wird da versagen? Dein Freund im Rollstuhl, der zuvor einfach einen flachen Weg daneben genommen hat, er kann die Anweisung nach Rom gehen dann gar nicht unterstützen.
Du hast noch einen der ziemlich schnell auf einem Fahrrad unterwegs war, der schleppt das dann mühselig auf dem Rücken.
Macht die explizite Festlegung bezüglich der Art und Weise im Kontext der Kandidaten mehr Sinn?
Macht das bei der Hardware Sinn die Art und Weise fest vorzuschreiben, obwohl sie es auf eine andere Art viel besser erledigen könnte?
Am Ende kannst du zu dem Schluss kommen, dass keine Testbedingung 100% fair oder realistisch ist und man nichts vergleichen kann.
Okay, sie kann natürlich nicht 100% optimal sein, sie kann natürlich auch sehr sub-optimal sein.
Ist der Futuremark sehr sub-optimal? Nein, der Futurmark befolgt die Regeln der API und alle GPUs landen ungefähr dort, wo man sie meistens im Schnitt anhand von Spiele-Parkours erwartet.
Trickst Nvidia? Nein, sie befolgen die Regeln der API. Ist der Benchmark 100% Herstellerneutral? Nein. Bildet der Benchmark eine 100% genaue Referenz für Software ab? Nein.
Kann man mit dem Benchmark trotzdem Ergebnisse vergleichen? Ja, natürlich.
Die einfache Antwort lautet einfach gar nicht, jedenfalls nicht genau.
Die Zukunft ist mit der Glaskugel verbunden und kein Entwickler kann dir ein Programm schreiben, welches die Zukunftsfähigkeit oder Performance einer API testet, weil jeder Entwickler kann seine Software etwas anders umsetzen.
Außer der Entwickler ist Moses und schafft es zufällig im Schnitt von 2000 Programmen beim gleichen Durchschnittswert zu landen.
Aber vielleicht spielst du nur 10 Spiele davon, die stark vom Durchschnitt ausweichen, tja Mist aber auch.
Ich meine man muss mal etwas realistisch bleiben und die Dinge vielleicht nicht zu eng sehen.