Nicht gerade eine Antwort auf Ihre Frage, aber einige Informationen, die zum Verständnis der Performance der GK104 (Kepler, GTX680) gegenüber dem GF110 (Fermi, GTX580) hilfreich sein könnten:
Am Fermi , die Kerne laufen auf der doppelten Frequenz des Rests der Logik. Auf Kepler laufen sie mit der gleichen Frequenz. Das halbiert effektiv die Anzahl der Kerne auf Kepler, wenn man mehr Äpfel mit Äpfeln vergleichen will als Fermi. Damit bleibt der GK104 (Kepler) mit 1536/2 = 768 "Fermi Equivalent Cores", was nur 50% mehr ist als die 512 Kerne auf dem GF110 (Fermi).
Betrachtet man die Anzahl der Transistoren, hat der GF110 3 Milliarden Transistoren, während der GK104 3,5 Milliarden hat. Obwohl der Kepler dreimal so viele Kerne hat, hat er nur etwas mehr Transistoren. Jetzt hat der Kepler nicht nur 50% mehr "Fermi-äquivalente Kerne" als Fermi, sondern jeder dieser Kerne muss viel einfacher sein als die von Fermi.
Also, diese beiden Probleme erklären wahrscheinlich, warum viele Projekte eine Verlangsamung bei der Portierung nach Kepler sehen.
Weiterhin wurde die GK104, eine Version von Kepler für Grafikkarten, so abgestimmt, dass die Zusammenarbeit zwischen Threads langsamer ist als auf Fermi (für Grafik ist diese Zusammenarbeit nicht so wichtig). Ein potenzieller potenzieller Leistungsgewinn kann nach Berücksichtigung der oben genannten Fakten dadurch negiert werden.
Es gibt auch das Problem der Gleitkommazahl mit doppelter Genauigkeit. Die Version von GF110, die in Tesla-Karten verwendet wird, kann Gleitkommawerte mit doppelter Genauigkeit mit der halben Genauigkeit einfacher Genauigkeit ausführen. Wenn der Chip in Grafikkarten verwendet wird, ist die Leistung mit doppelter Genauigkeit künstlich auf 1/8 der Leistung mit einfacher Genauigkeit begrenzt, aber dies ist immer noch viel besser als die Leistung der doppelten Genauigkeit von GK104 mit einer Genauigkeit von 1/24.
Für maximale Leistung müssen Sie Ihren Code für verschiedene GPU-Konfigurationen optimieren. –
Aus dem, was Wikipedia mir sagt, ist das Speicher-BW des 680 nicht viel höher als das des 480. Wenn Sie also an das Gedächtnis gebunden sind, werden Sie nicht viel Beschleunigung sehen. Ich kann nicht erklären, warum Sie eine Verlangsamung sehen. –
Diese Version von CUDA Toolkit verwenden Sie? – geek