SOMU is a command line utility operated by the arrow keys. It contains several PGN and EPD tools. PGN files are found (stored) in the PGN folder, likewise EPD files in the EPD folder. It's functions:
The PGN part
From a PGN create and (automatically) view a HTML file, example-1 is created from gambit.pgn (provided in the download) taken from the YAT gambit tournament. Example-2 is created from a CCRL pgn testing Komodo 12.
Check the PGN of an engine-engine PLY-Match, games should be indentical else perhaps something is wrong. Different moves are marked and stored in OUTPUT.PGN Background: it's extremely important (especially for starters) that a PLY-MATCH (say PLY=10) produces the exact same reverse game, so game-1 and game-2 in the PGN should be 100% equal, game-3 = game-4 and so on.
This function will create a cross table from a (large) PGN file. Maximum number of players (human and/or engine) is 100. Example taken from the gambit.pgn mentioned earlier. Another example, the final FCP rating list by Frank Quisinsky.
Strip played moves by engines from a PGN. What is left and stored in OUTPUT.PGN are the book moves. Handy for opening book tuning with Polyglot.
Split large PGN files into smaller parts.
Remove Double Openings (games)
From a PGN collection display the match score, then remove the double openings and calculate the new match score without the double openings. This util is handy in 3 ways:
. checking an eng-eng match for opening doubles, see screenshot (file bf.pgn)
. pre-checking your predefined opening sets for eng-eng matches.
. In case a PGN doesn't contain comments it will check for duplicated games.
The EPD part
Remove doubles from an EPD collection.
EPD legal check
Remove invalid positions from an EPD collection.
EPD to PGN
Converts EPD to PGN, bm and ce tags included when present. Try this with the included 150 positions example.epd file.
Split large EPD files into smaller parts.
Create an EPD collection from PGN games for the use of Analyze EPD, Analyze EPD++ or Analyze EPD+++. With the option "Ply from" - "Ply till" you can hack the analysis job into pieces. Doubles are removed.
Analyze an EPD collection with Stockfish 8, 9 and higher. Example before and after.
Analyze EPD ++
Analyze an EPD collection with Stockfish 8, 9 and higher splitting the analyzing over a user defined number of threads for speed reasons. Example before and after.
The advantage of Analyze EPD and Analyze EPD ++ is that it will work with every new version provided the Stockfish team doesn't change the bench function. Just copy a newer Stockfish version in the SOMU folder.
Current default version is SF10x a beta version considerable stronger than SF9, see results.
Analyze EPD +++
As Analyze EPD++ but with Multi-PV 2, 3 or 4. Example before and after.
SOMU Function Keys
Overview Function Keys
Delete bad or too good EPD positions controlled by a flexible score margin.
From each PGN game create an EPD of the last move.
Quickly count the number of games in a PGN.
Quickly count EPD positions.
Reverse (mirror) an EPD collection.
Remove illegal 'bm' moves from an EPD collection, long notation only.
Create a statistic from an EPD collection. It also will create 10 separate EPD files:
. Queen | Rook | Bishop and Knight promotions
. Possitive Mate in X moves | Negative Mate in -X moves