Von Programmierung hast Du aber keine Ahnung, wie der Kommentar deutlich zeigt. Immer wenn das Ergebnis einer Berechnung von der vorherigen abhängt, kann man ein Problem nicht per SW parallelisieren. So kann man keine MD5 Hash parallel berechnen, weil es immer eine Kettenrechnung ist und es gibt zwar Tools die MD5 parallel berechnen um Hashes zu knacken, meisten zum Finden von Passwörtern wo man den Hash kennt und das Passwort sucht welches den Hash erzeugt hat, aber da rechnet jeder Thread ein anderen mögliches Passwort durch.Alphanerd schrieb:AMD ist dabei die Limits zu sprengen/hat sie bereits gesprengt und wir können unsere Programme anpassen. Die sind nicht im Stein gemeißelt, wie das Programm "Kind austragen".
Selbst wenn etwas parallel berechenbar ist, wie a*b + c*d, wo man a*b und c*d parallel ausführen kann, so lohnt es sich nicht dafür einen Thead zu starten, weil dies und dann die Synchronisierung der Threads wenn beide Ergebnisse da sind, viel zu viel Overhead erzeugt und daher am Ende viel langsamer wäre.
Es gibt also auch in der SW Entwicklung genug in Stein gemeißelte Algorithmen die wie "Kind austragen" nicht parallel machbar sind und daran wird kein Hersteller etwas ändern können, allenfalls kann er auf der Ebene der Architektur mehr Parallelität schaffen indem eben bei einem Algorithmus wie z.B. MD5 mehr Bytes parallel berechnet werden, ohne per SW Thread öffnen zu müssen, denn dies würde sich für einzelne Operationen einfach niemals lohnen und genau dies machen Befehlserweiterungen wie AVX.