SPECjvm2008_1_01 openjdk8 error Name.java:54: Unable to access java.lang.CharSequence card startup.compiler.sunflow

test command

root@yeqiang-greatwall:/opt/SPECjvm2008# ./run-specjvm.sh -ikv

Fault (cannot access java.lang.CharSequence)

/tmp/SPECjvm2008/compiler.compiler/compiler/src/share/classes/javax/lang/model/element/Name.java:54: cannot access
class file for java.lang.CharSequence error: spec.benchmarks.compiler.SpecFileManager $CachedFileObject@63eea6e
Bad constant pool tag: 18 at 10
Please delete the file or make sure it is in the correct classpath subdirectory.
public interface Name extends CharSequence {                               ^ ERROR: compiler exit code: 1


 

reason

Check openjdk and found that only jre is installed, jdk is not installed

yeqiang@yeqiang-greatwall:~/桌面$ dpkg -l | grep openjdk
ii  openjdk-8-jre:arm64                                   8u292-b10-0kylin1~20.04            arm64        OpenJDK Java runtime, using Hotspot JIT
ii  openjdk-8-jre-headless:arm64                          8u292-b10-0kylin1~20.04            arm64        OpenJDK Java runtime, using Hotspot JIT (headless)

solve

sudo apt install openjdk-8-jdk

retest

root@yeqiang-greatwall:/opt/SPECjvm2008# export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-arm64
root@yeqiang-greatwall:/opt/SPECjvm2008# ./run-specjvm.sh -ikv

Fault (Stuck at startup.compiler.sunflow)

Phenomenon, the program does not move when it runs here

--- --- --- --- --- --- --- --- ---

  Benchmark:   startup.compiler.sunflow
  Run mode:    static run
  Test type:   single
  Threads:     1
  Iterations:  1
  Run length:  1 operation

Iteration 1 (1 operation) begins: Fri Jul 21 14:42:17 CST 2023

solve

Reference: The problem of startup.compiler.sunflow stuck during the SPECjvm2008 test has been blocked and the solution-Cloud Community-HUAWEI CLOUD

stuck-sunflow.patch

*** src/spec/benchmarks/compiler/sunflow/Main.java.bak	2023-07-21 14:52:50.990321495 +0800
--- src/spec/benchmarks/compiler/sunflow/Main.java	2023-07-21 14:51:56.525694184 +0800
*************** public class Main extends spec.benchmark
*** 25,30 ****
--- 25,31 ----
          super(bmResult, threadId, 2);        
          String[] args = new String[] {
          		"-proc:none",               
+ 			"-nowarn",
                  "@" + srcsFile.getPath()};
          compiler = new Compiler(args);
      }

patch-and-build.sh

#!/bin/bash
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-arm64

echo "copy stuck-sunflow.patch /opt/SPECjvm2008/"

patch -p0 < stuck-sunflow.patch

# 重新编译
unzip build-tools.zip
bash build-specjvm.sh
ls build/release/SPECjvm2008/

execute compile

root@yeqiang-greatwall:/opt/SPECjvm2008# bash patch-and-build.sh

compile successfully

release:
     [copy] Copying 131 files to /opt/SPECjvm2008/build/release/SPECjvm2008/src
     [copy] Copied 37 empty directories to 1 empty directory under /opt/SPECjvm2008/build/release/SPECjvm2008/src
     [copy] Copying 12 files to /opt/SPECjvm2008/build/release/SPECjvm2008/lib
     [copy] Copying 448 files to /opt/SPECjvm2008/build/release/SPECjvm2008/docs
     [copy] Copying 1 file to /opt/SPECjvm2008/build/release/SPECjvm2008/docs/javadoc
     [copy] Copying 2 files to /opt/SPECjvm2008/build/release/SPECjvm2008/props
     [copy] Copying 145 files to /opt/SPECjvm2008/build/release/SPECjvm2008/resources
     [copy] Copied 37 empty directories to 1 empty directory under /opt/SPECjvm2008/build/release/SPECjvm2008/resources
     [copy] Copying 3 files to /opt/SPECjvm2008/build/release/SPECjvm2008/license
     [copy] Copying 1 file to /opt/SPECjvm2008/build/release/SPECjvm2008
     [copy] Copying 1 file to /opt/SPECjvm2008/build/release/SPECjvm2008
     [copy] Copying 1 file to /opt/SPECjvm2008/build/release/SPECjvm2008
     [copy] Copying 1 file to /opt/SPECjvm2008/build/release/SPECjvm2008
     [copy] Copying 1 file to /opt/SPECjvm2008/build/release/SPECjvm2008
      [zip] Building zip: /opt/SPECjvm2008/build/release/SPECjvm2008/build-tools.zip

BUILD SUCCESSFUL
Total time: 9 seconds
build-tools.zip  props			  report.sh	   SPECjvm2008.jar
docs		 README.txt		  resources	   src
lib		 redistributable_sources  run-specjvm.cmd  version.txt
license		 report.cmd		  run-specjvm.sh

retest

run-specjvm-local-build.sh

#!/bin/bash
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-arm64

(
        cd ./build/release/SPECjvm2008/
        time java -jar SPECjvm2008.jar -ikv
)

Halfway CPU state, basically fully loaded

 psensor

One of the use case logs

 Benchmark:   mpegaudio
  Run mode:    timed run
  Test type:   multi
  Threads:     8
  Warmup:      120s
  Iterations:  1
  Run length:  240s

Warmup (120s) begins: Fri Jul 21 16:03:32 CST 2023
Warmup (120s) ends:   Fri Jul 21 16:05:36 CST 2023
Warmup (120s) result: 174.93 ops/m

Iteration 1 (240s) begins: Fri Jul 21 16:05:36 CST 2023
Iteration 1 (240s) ends:   Fri Jul 21 16:09:40 CST 2023
Iteration 1 (240s) result: 176.98 ops/m

Valid run!
Score on mpegaudio: 176.98 ops/m


--- --- --- --- --- --- --- --- ---
An average use case takes 6 minutes: Warmup ( 120s ) + Iteration 1 ( 240s )

Total number of cases (bash run-specjvm.sh --help )

Benchmarks: startup.helloworld startup.compiler.compiler startup.compiler.sunflow startup.compress startup.crypto.aes startup.crypto.rsa startup.crypto.signverify startup.mpegaudio startup.scimark.fft startup.scimark.lu startup.scimark.monte_carlo startup.scimark.sor startup.scimark.sparse startup.serial startup.sunflow startup.xml.transform startup.xml.validation compiler.compiler compiler.sunflow compress crypto.aes crypto.rsa crypto.signverify derby mpegaudio scimark.fft.large scimark.lu.large scimark.sor.large scimark.sparse.large scimark.fft.small scimark.lu.small scimark.sor.small scimark.sparse.small scimark.monte_carlo serial sunflow xml.transform xml.validation

Run time is long. . .

Guess you like

Origin blog.csdn.net/hknaruto/article/details/131851617