X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fbenchmark.cpp;h=a0dab27bbbf85479254a530549fa48793fc4185a;hp=4d9e35956cf02e7a5440a5b80864bad0f42019be;hb=800410eef1c0811d046ee2332b3afda21284b876;hpb=22715259a04497743afe7e33f5cf1e3b13bb097e diff --git a/src/benchmark.cpp b/src/benchmark.cpp index 4d9e3595..a0dab27b 100644 --- a/src/benchmark.cpp +++ b/src/benchmark.cpp @@ -1,7 +1,7 @@ /* Stockfish, a UCI chess playing engine derived from Glaurung 2.1 Copyright (C) 2004-2008 Tord Romstad (Glaurung author) - Copyright (C) 2008-2012 Marco Costalba, Joona Kiiski, Tord Romstad + Copyright (C) 2008-2013 Marco Costalba, Joona Kiiski, Tord Romstad Stockfish is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -82,6 +82,9 @@ void benchmark(const Position& current, istream& is) { else if (limitType == "nodes") limits.nodes = atoi(limit.c_str()); + else if (limitType == "mate") + limits.mate = atoi(limit.c_str()); + else limits.depth = atoi(limit.c_str()); @@ -89,7 +92,7 @@ void benchmark(const Position& current, istream& is) { fens.assign(Defaults, Defaults + 16); else if (fenFile == "current") - fens.push_back(current.to_fen()); + fens.push_back(current.fen()); else { @@ -99,7 +102,7 @@ void benchmark(const Position& current, istream& is) { if (!file.is_open()) { cerr << "Unable to open file " << fenFile << endl; - exit(EXIT_FAILURE); + return; } while (getline(file, fen)) @@ -113,9 +116,9 @@ void benchmark(const Position& current, istream& is) { Search::StateStackPtr st; Time::point elapsed = Time::now(); - for (size_t i = 0; i < fens.size(); i++) + for (size_t i = 0; i < fens.size(); ++i) { - Position pos(fens[i], Options["UCI_Chess960"], Threads.main_thread()); + Position pos(fens[i], Options["UCI_Chess960"], Threads.main()); cerr << "\nPosition: " << i + 1 << '/' << fens.size() << endl; @@ -127,8 +130,8 @@ void benchmark(const Position& current, istream& is) { } else { - Threads.start_searching(pos, limits, vector(), st); - Threads.wait_for_search_finished(); + Threads.start_thinking(pos, limits, vector(), st); + Threads.wait_for_think_finished(); nodes += Search::RootPos.nodes_searched(); } }