Description - phoronix/stockfish

This is a test of Stockfish, an advanced C++11 chess benchmark that can scale up to 128 CPU cores.

Metrics (Intel) - phoronix/stockfish
sh - pid 24549
	On_CPU   0.999
	On_Core  7.991
	IPC      0.970
	Retire   0.490	(49.0%)
	FrontEnd 0.294	(29.4%)
	Spec     0.158	(15.8%)
	Backend  0.058	(5.8%)
	Elapsed  153.93
	Procs    13
	Maxrss   171K
	Minflt   48508
	Majflt   0
	Inblock  0
	Oublock  624
	Msgsnd   0
	Msgrcv   0
	Nsignals 0
	Nvcsw    521	(8.5%)
	Nivcsw   5594
	Utime    1229.896062
	Stime    0.171985
	Start    516363.49
	Finish   516517.42

The benchmark stays On_CPU almost 100%. The IPC is slightly less than one with frontend stalls and bad speculation as largest issues.

Metrics (AMD) - phoronix/stockfish
sh - pid 13109
	On_CPU   0.997
	On_Core  15.948
	IPC      1.040
	FrontCyc 0.121	(12.1%)
	BackCyc  0.089	(8.9%)
	Elapsed  108.52
	Procs    21
	Maxrss   208K
	Minflt   58067
	Majflt   0
	Inblock  0
	Oublock  584
	Msgsnd   0
	Msgrcv   0
	Nsignals 0
	Nvcsw    965	(0.6%)
	Nivcsw   167629
	Utime    1730.611561
	Stime    0.087533
	Start    522357.68
	Finish   522466.20

IPC on AMD similar but slightly higher.

Process Tree - phoronix/stockfish
Process Tree
The process tree runs one copy on each core.

    24549) sh
      24550) stockfish
        24551) stockfish
        24552) stockfish
        24553) stockfish
        24554) stockfish
        24555) stockfish
        24556) stockfish
        24557) stockfish
        24558) stockfish
        24559) stockfish
        24560) stockfish
        24561) stockfish

About this graph
CPUs are all kept scheduled.


IPC is fairly consistent.

About this graph
Frontend stalls and speculative misses are largest issues.

Next steps: Better understand speculation issues and frontend stalls.