Dietmar Klinger schrieb:
Hallo,
Die meisten UCI Engine welche unter Windows laufen haben folgende Endungen:
base.exe
bmi2.exe
popcnt.exe
modern.exe
für welche CPU's sind denn da "base.exe" und "modern.exe" gemeint?
Bei den anderen Beiden ist das mir klar. Doch "base" und "modern" besagt mir bezogen auf CPU's fachlich gar nichts.
Wer kann mir hier eine fundierte Auskunft geben?
MfG Dietmar
Hallo Dietmar,
"base" ist mir bislang noch nicht (bewusst) untergekommen. Bei welcher/welchen Engine(s) hast du das gesehen? Ich vermute (!) mal, dass diese auch für ältere CPUs wie Core2Duo bzw. Core2Quad geeignet sind.
"modern" kenne ich nur von Stockfish, "for modern computers". Das ist so viel ich weiß für alle CPU, die kein "bmi2" haben, aber doch so "modern" sind, dass sie "popcnt" bzw. "SSE4.x" können. Also z.B. auch etwas ältere i3, i5 oder AMDs.
Um beim Beispiel Stockfish zu bleiben:
In den compiles von abrok.eu (Development versions) sind folgende Dateien enthalten:
Windows x64 for Haswell CPUs (die Datei hat die Bezeichnung "....bmi2.exe")
Windows x64 for modern computers ("...modern.exe")
Windows x64 (kein weiterer Zusatz, die läuft auch auf "alten" Rechnern ohne bmi2, popcnt usw)
Windows 32 (selbsterklärend)
In den compiles von stockfishchess.org (die "offizielle" Stockfish-Seite) gibt es die "modern" nicht (mehr?!), sondern sie wird als "popcnt" bezeichnet. Die anderen sind gleich zu abrok.eu.
Die anderen beiden Endungen, die du im zweiten Posting erwähnst (pext_x64.exe, standard_x64.exe) sagen mir soweit nichts. Lediglich "standard" kenne ich von Houdini. Da gibt es immer eine "Standard" und eine "Pro". Bei Standard ist die maximale Anzahl der Cores beschränkt (auf 6 glaube ich).
Zumeist hilft auch ein Blick in die "readme". Viele Autoren führen da aus, welche .exe für welche Hardware geeignet ist.
Es gibt übrigens noch viele weitere Bezeichnungen. Z.B. bei Andscacs heißt es
andscacsb.exe
andscacsn.exe
andscacs.exe
andscacs32.exe
Allerdings führt der Autor dann genau aus, welche exe welche Anforderungen hat.
Oder bei Texel:
texel32
texel32old
texel64
texel64old
texel64amd
Da macht scheinbar jeder was er will...