| 232 | } |
| 233 | |
| 234 | void print(const String & description, size_t concurrent) const |
| 235 | { |
| 236 | double seconds = work_time / concurrent; |
| 237 | |
| 238 | if (!description.empty()) |
| 239 | std::cerr << description << ", "; |
| 240 | |
| 241 | std::cerr |
| 242 | << "queries " << queries << ", " |
| 243 | << "seconds " << seconds << ", "; |
| 244 | |
| 245 | if (errors) |
| 246 | std::cerr << "errors " << errors << ", "; |
| 247 | |
| 248 | std::cerr |
| 249 | << "QPS: " << (queries / seconds) << ", " |
| 250 | << "RPS: " << (read_rows / seconds) << ", " |
| 251 | << "MiB/s: " << (read_bytes / seconds / 1048576) << ", " |
| 252 | << "result RPS: " << (result_rows / seconds) << ", " |
| 253 | << "result MiB/s: " << (result_bytes / seconds / 1048576) << "." |
| 254 | << "\n"; |
| 255 | } |
| 256 | |
| 257 | void clear() |
| 258 | { |