|
SPEC CPU® v8 Benchmark Search ProgramContents SPEC CPU v8 Benchmark Search Program The SPEC CPU v8 Benchmark Search Program Official Rules Participation Constitutes Agreement to Official Rules Step 1 Complete the legal paperwork Step 2 Initial porting and workload ($1500 upon successful completion) 2a Work within SPEC's environment 2b Compute for at least one minute 2c Define valid answers 2d Generate valid answers on both Windows® and Unix® operating systems 2e Include documentation 2f Verify and fully describe the licensing 2g Step 2 Award 2h Movement to the next step Step 3 Provide workloads and demonstrate profile ($1500 or $2500 upon successful completion) 3a Test workload 3b Train workload 3c SPECrate® reference workload (Integer or Floating Point) 3d SPECspeed® Floating Point reference workload 3e SPECspeed® Integer reference workload 3f Profile 3g Step 3 awards 3h Movement to the next step Step 4 Complete Code Testing ($1500 or $2000 upon successful completion) 4a Respond to a wide variety of testing 4b Improve standards compliance 4c Complete remaining documentation 4d Adjust if required 4e Step 4 awards 4f Movement to the next step Step 5 Recommendation to the Open System Group (no monetary award) Step 6 Acceptance into the SPEC CPU Suite ($3000 if accepted) IntroductionSPEC® holds to the principle that better benchmarks can be developed from actual applications. With this in mind, SPEC is once again seeking to encourage those outside of SPEC to assist us in locating applications that could be used in the next CPU-intensive benchmark suite, currently under development within SPEC and currently designated as the SPEC CPU® v8 benchmark. The SPEC CPU v8 Benchmark Search Program is sponsored by the Standard Performance Evaluation Corporation (SPEC, a non-profit consortium; identified as "Sponsor" in this document). The program is designed to encourage and recognize achievements of members of the academic and industrial community who provide and develop application code and datasets that can be used as components of the next revision of the SPEC CPU benchmark suite. For each step of the process that a submission passes, SPEC will compensate the Program Submitter (in recognition of the Submitter's effort and skill). A submission that passes all of the steps and is included in the next SPEC CPU benchmark suite will receive up to $9000 overall and a license for the new benchmark suite when released. What is SPEC looking for?Overall, the SPEC CPU benchmarks have provided performance metrics for comparing systems on a known compute-intensive workload, with emphasis on the system's processor(s), memory hierarchy, and compiler(s). SPEC is expecting the next SPEC CPU benchmark suite to continue this trend. A good benchmark candidate is:
SPEC's approach for the SPEC CPU 2017 suite may be found at https://www.spec.org/cpu2017/Docs/overview.html#AboutBenchmarks Sample application areasSPEC has held to the principle that better benchmarks are based on real applications, and these applications can come from any area of work. For example, the current SPEC CPU 2017 suite includes applications from the following areas:
SPEC is not limiting consideration to just these areas. A proposed application may come from any area or field of work. It is also acceptable for parallel/threaded codes or applications to be submitted. Languages
The SPEC CPU v8 Benchmark Search Program Official Rules
Who May Submit Benchmarks?
Participation Constitutes Agreement to Official RulesParticipation in the Search Program constitutes Submitter's full and unconditional agreement to and acceptance of these Official Rules. Timing
How To EnterStep 1: Complete the legal paperworkSubmit a Search Program Proposal to SPEC through the entry form found at: https://www.spec.org/cpu/cpuv8/entry_form.html including:
Upon receipt of the proposal, SPEC will acknowledge its receipt within seven (7) working days. Within four (4) weeks, SPEC will notify the Submitter as to whether or not SPEC wishes to further evaluate the entry. If SPEC wishes to further evaluate the entry, the Submitter must provide a signed "Permission to Use" form for the submitted code, data sets, and any other material provided to SPEC. Additionally, any documents provided by the SPEC office for tax purposes need to be completed and returned to SPEC. Once the Permission To Use form has been received, and signed by both the Submitter and SPEC, technical work may begin. Step 2: Initial porting and workload ($1500 upon successful completion)If accepted for entry into Step 2, SPEC will provide the Submitter with:
With the assistance of the Primary Contact, the Submitter must cause the application to: 2a. Work within SPEC's environment
2b. Compute for at least one minute
2c. Define valid answers
2d. Generate valid answers on both Windows® and Unix® operating systemsWhen compiled with basic optimization (for example: gcc -O), generate outputs that meet the above validation criteria using:
2e. Include documentationProvide a completed SPEC Benchmark Description file -- similar to those available for the current SPEC CPU 2017 suite at https://www.spec.org/cpu2017/Docs/#benchmarks -- covering topics such as:
2f. Verify and fully describe the licensing
2g. Step 2 AwardIf, in SPEC's sole judgment, the submission does not meet these criteria, the Submitter will be notified as to what expectations were not met. If the submission meets these criteria, the Submitter is awarded $1500. 2h. Movement to the next stepAfter the submitter has completed the requirements for this step, SPEC will then decide whether to move the benchmark into the next step. Note that SPEC, in its sole judgment, may decide at any time to discontinue work on a submission. It is possible that a submission may receive a monetary award for completing a step and nevertheless not proceed to the next step. Step 3: Provide workloads and demonstrate profile ($1500 or $2500 upon successful completion)During Step 3, the Submitter must provide 3 workloads, or, optionally, 4 workloads:
Each workload must include:
When compiled with moderately advanced optimization (such as gcc -O2 -fnoinline -fno-builtin), the benchmark must produce valid answers for each workload on at least one Unix system and at least one Windows system. 3a. Test workloadA short test (perhaps 10 or 20 seconds) that confirms that the compiled application is functional. 3b. Train workload
3c. SPECrate® reference workload (Integer or Floating Point)A proposed SPECrate reference workload must:
3d. SPECspeed® Floating Point reference workloadA proposed SPECspeed Floating Point reference workload must:
3e. SPECspeed® Integer reference workloadA proposed SPECspeed Integer reference workload must:
Note: it is encouraged, but not required, to use multiple hardware threads for parallel processing with a SPECspeed Integer reference workload via one of the same methods as described just above for SPECspeed Floating Point reference workloads. 3f. ProfileSPEC will profile the benchmark with the supplied reference workload(s), and expects that:
3g. Step 3 awardsOn completion of this step:
3h. Movement to the next stepAfter the submitter has completed the requirements for this step, SPEC will then decide whether to move the benchmark into the next step. Note that SPEC, in its sole judgment, may decide at any time to discontinue work on a submission. It is possible that a submission may receive a monetary award for completing a step and nevertheless not proceed to the next step. Step 4: Complete Code Testing ($1500 or $2000 upon successful completion)During Step 4, the submitter must complete code testing, adjusting the benchmark as needed. 4a. Respond to a wide variety of testing
4b. Improve standards compliance
4c. Complete remaining documentation
4d. Adjust if required
4e. Step 4 awardsOn completion of the above requirements:
4f. Movement to the next stepAfter the submitter has completed the requirements for this step, SPEC will then decide whether to move the benchmark into the next step. Note that SPEC, in its sole judgment, may decide at any time to discontinue work on a submission. It is possible that a submission may receive a monetary award for completing a step and nevertheless not proceed to the next step. Step 5: Recommendation to the Open System Group (no monetary award)If the application is accepted by the SPEC CPU Subcommittee and meets all criteria, including those stated in Steps 1 to 4, the CPU Subcommittee will consider whether to recommend the benchmark to the SPEC Open Systems Group for inclusion in the new suite. If the CPU subcommittee recommends the application for inclusion in the new suite, the submission moves to Step 6. (No monetary award is associated with this step.) Otherwise, the SPEC CPU Subcommittee will notify the Submitter that the submission was removed from consideration. Step 6: Acceptance into the SPEC CPU Suite ($3000 if accepted)If the application is recommended to and is accepted by the Open Systems Group, in its sole discretion, then the application is included in the suite and the Submitter will receive $3000 and a license for the suite when it is released. Number of Entries and Return of EntriesSubmitters may enter as many times as they wish. However, each entry must be accompanied by a separate registration. Sponsor will not return any entries to the Submitters. Personal DataSponsor will use its best effort to use personal data about Submitter only for the administration of the award program, in accordance with these Official Rules and for internal marketing purposes. Submitter agrees to such use of the personal data. Note that the benchmark documentation described above does expect that the submitter will provide an email address that can be published. Important TermsSponsor is not responsible for lost, late, incomplete, illegible or misdirected mail or e-mail, for failed, partial or garbled computer transmissions, or for technical failures of any kind. Sponsor reserves the right to cancel or modify the awards if fraud, technical failures or other events or circumstances impair the integrity of the award program as determined by Sponsor in its sole discretion. Submitter agrees that Sponsor's only obligations are to submit entries from eligible submissions to the SPEC CPU Subcommittee, according to the procedures and criteria set forth in these Official Rules, and to award the compensation set forth herein, to Submitters as criteria in SPEC's sole judgment are met, subject to the terms and conditions herein. Submitter will be held harmless from any liability incurred from the intended or unintended use of the application as a benchmark or application. Submitter agrees that Sponsor's obligations are solely to fairly and adequately consider any entry submitted, and that Submitter is not entitled to and shall not seek any further compensation. Submitter hereby grants Sponsor a perpetual, non-exclusive license to copy, modify, display, distribute, and sub-license the entry without geographical limitations or further compensation to Submitter of any kind, provided that Sponsor's sole use of the entry will be for the purposes of inclusion of the entry in Sponsor's CPU benchmark suite. Submitter agrees that e-mail shall satisfy any writing requirement, which may apply to intellectual property licenses. Upon request of Sponsor, Submitter agrees to obtain written consent from the owner of the copyright in the application, if that person is not Submitter, and to execute any documents required to effectuate the terms of these Official Rules. Submitter warrants that it has the right to submit this application and information to SPEC and to grant the license rights granted herein, and that to Submitter's knowledge use of the application will not infringe or violate any intellectual property rights (including but not limited to patent, trademark, trade secret, and copyright) or license rights of any third party. Submitter agrees to notify SPEC of any claim of such infringement or violation within fifteen (15) days of its receipt of the claim. Submitter shall defend, indemnify and hold harmless SPEC, its successors, assigns and licensees for all costs (including attorneys' fees) arising out of any breach of these warranties and representations. All issues and questions concerning the construction, validity, interpretation and enforceability of these Official Rules, or the rights and obligations of Submitter and Sponsor in connection with the Award Program, shall be governed by, and construed in accordance with, the laws of the Commonwealth of Virginia, U.S.A., without giving effect to any choice of law or conflict of law rules or provisions (whether of the Commonwealth of Virginia, U.S.A., or any other jurisdiction), which would cause the application of the laws of any jurisdiction other than the Commonwealth of Virginia, U.S.A. Taxes, customs duties, fees, freight charges and other related charges, on prizes are the sole responsibility of the winners. Winners may waive the right to receive compensation. Sponsor will reimburse winners up to U.S. $1,000 for payments made for customs duties, fees, freight charges (but not taxes, including taxes on income, goods and services, and value added taxes), upon presentation by submittal of original and official receipts for such payments. Submittal NotificationSubmitters will be notified by electronic means of each successful completion of each step and may be required to complete an affidavit of eligibility and publicity release (except where prohibited by law), which must be returned within 20 days of receipt by Submitter. Failure to sign and return the affidavit or release or to comply with any term or condition in these Official Rules may result in disqualification and forfeiture of compensation. This Program is subject to all applicable laws. Void where prohibited. All questions about the search program can be directed to SPEC at info@spec.org. Updates to this documentSep-2022: Extend the due date for program entries. Sep-2021: This document was updated to reference the C18 (aka C17) standard instead of C11, on the grounds that C18 provides only minor technical corrections to C11. Feb-2022: Extend the due date for program entries. Update the sections on workload timing (SPECrate, SPECspeed floating point, SPECspeed integer), including a better explanation of SPEC's test methods. Clarify the recommendations for use of OpenMP features. Jun-2022: Fix example in step 4b to use one of the required language versions. |