2362N/A * Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved. 0N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 0N/A * This code is free software; you can redistribute it and/or modify it 0N/A * under the terms of the GNU General Public License version 2 only, as 0N/A * published by the Free Software Foundation. 0N/A * This code is distributed in the hope that it will be useful, but WITHOUT 0N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 0N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 0N/A * version 2 for more details (a copy is included in the LICENSE file that 0N/A * accompanied this code). 0N/A * You should have received a copy of the GNU General Public License version 0N/A * 2 along with this work; if not, write to the Free Software Foundation, 0N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 2362N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 2362N/A * or visit www.oracle.com if you need additional information or have any 0N/A * Benchmark harness. Responsible for parsing config file and running 0N/A * Create new benchmark harness with given configuration and reporter. 0N/A * Throws ConfigFormatException if there was an error parsing the config 0N/A * <b>Config file syntax:</b> 0N/A * '#' marks the beginning of a comment. Blank lines are ignored. All 0N/A * other lines should adhere to the following format: 0N/A * <weight> <name> <class> [<args>] 0N/A * <weight> is a floating point value which is multiplied times the 0N/A * benchmark's execution time to determine its weighted score. The 0N/A * total score of the benchmark suite is the sum of all weighted scores 0N/A * of its benchmarks. 0N/A * <name> is a name used to identify the benchmark on the benchmark 0N/A * report. If the name contains whitespace, the quote character '"' should 0N/A * be used as a delimiter. 0N/A * <class> is the full name (including the package) of the class 0N/A * containing the benchmark implementation. This class must implement 0N/A * [<args>] is a variable-length list of runtime arguments to pass to 0N/A * the benchmark. Arguments containing whitespace should use the quote 0N/A * character '"' as a delimiter. 0N/A * 3.5 "My benchmark" bench.serial.Test first second "third arg" 0N/A case '"':
// parse line 0N/A * Run benchmarks, writing results to the given reporter. 0N/A * Clean up method that is invoked after the completion of each benchmark. 0N/A * The default implementation calls System.gc(); subclasses may override 0N/A * this to perform additional cleanup measures.