T-HEAD C910 SPEC CPU Benchmark

Table of Contents

Enviroment

Board: Lichee Module 4A (2GHz Version)

SBI: revyos/opensbi/th1520-v1.3.1
Kernel: revyos/th1520-linux-kernel/th1520-master-wip
SBI and Kernel Compiled with riscv64-linux-gnu-gcc version 13.2.0 (Debian 13.2.0-7)

Test Suite Compiler: gcc-13.2.1, Xuantie-900-gcc-V2.8.0-20231018

SPEC CPU 2006 Version: Version 119 – 16 August 2011 v1.2 RELEASE
SPEC CPU 2017 Version: Version 1.1.9 – 7 November 2022
SPEC CPU 2006 optimization flag: -O2 -fno-strict-aliasing
SPEC CPU 2017 optimization flag: -g -O3

Enable 2GHz

Simply apply this patch to kernel dts:

diff --git a/arch/riscv/boot/dts/thead/th1520-lichee-module-4a.dtsi b/arch/riscv/boot/dts/thead/th1520-lichee-module-4a.dtsi
index 67f846212cb5..ca4ce9e8d20a 100644
--- a/arch/riscv/boot/dts/thead/th1520-lichee-module-4a.dtsi
+++ b/arch/riscv/boot/dts/thead/th1520-lichee-module-4a.dtsi
@@ -100,14 +100,14 @@ c910_0: cpu@0 {
            300000  650000
            800000  700000
            1500000 800000
-           1848000 1000000
+           2000000 1000000
        >;
        light,dvddm-operating-points = <
            /* kHz   uV */
            300000  800000
            800000  800000
            1500000 800000
-           1848000 1000000
+           2000000 1000000
        >;
        dvdd-supply = <&dvdd_cpu_reg>;
        dvddm-supply = <&dvddm_cpu_reg>;
@@ -118,7 +118,7 @@ c910_1: cpu@1 {
            300000  650000
            800000  700000
            1500000 800000
-           1848000 1000000
+           2000000 1000000
        >;
        light,dvddm-operating-points = <
            /* kHz   uV */
@@ -137,14 +137,14 @@ c910_2: cpu@2 {
            300000  650000
            800000  700000
            1500000 800000
-           1848000 1000000
+           2000000 1000000
        >;
        light,dvddm-operating-points = <
            /* kHz   uV */
            300000  800000
            800000  800000
            1500000 800000
-           1848000 1000000
+           2000000 1000000
        >;
        dvdd-supply = <&dvdd_cpu_reg>;
        dvddm-supply = <&dvddm_cpu_reg>;
@@ -156,14 +156,14 @@ c910_3: cpu@3 {
            300000  650000
            800000  700000
            1500000 800000
-           1848000 1000000
+           2000000 1000000
        >;
        light,dvddm-operating-points = <
            /* kHz   uV */
            300000  800000
            800000  800000
            1500000 800000
-           1848000 1000000
+           2000000 1000000
        >;
        dvdd-supply = <&dvdd_cpu_reg>;
        dvddm-supply = <&dvddm_cpu_reg>;

SPEC INT 2006

Benchmark 1.85G – mainline GCC 2G – mainline GCC 2G – Xuantie GCC Normalized – 2G vs 1.85G Normalized – Xuantie vs mainline
400.perlbench 6.79 7.38 8.25 1.088 1.118
401.bzip2 6.42 6.81 6.36 1.062 0.933
403.gcc 7.22 7.60 7.96 1.052 1.048
429.mcf 8.00 8.18 7.87 1.023 0.962
445.gobmk 8.44 9.02 9.80 1.069 1.087
456.hmmer 6.52 6.91 8.86 1.059 1.282
458.sjeng 6.80 7.14 8.80 1.050 1.233
462.libquantum 24.05 25.45 25.70 1.058 1.010
464.h264ref 9.15 9.77 10.23 1.069 1.047
471.omnetpp 4.84 5.03 5.05 1.038 1.004
473.astar 6.25 6.61 6.55 1.057 0.991
483.xalancbmk 5.88 6.23 6.19 1.060 0.993
GEOMEAN 7.59 8.03 8.46 1.057 1.054

SPEC CPU 2017 Int Rate Copy=1

Benchmark 1.85G – mainline GCC 2G – mainline GCC 2G – Xuantie GCC Normalized – 2G vs 1.85G Normalized – Xuantie vs mainline
500.perlbench_r 0.801 0.862 0.944 1.076 1.096
502.gcc_r 0.870 0.921 0.938 1.058 1.018
505.mcf_r 0.924 0.980 0.976 1.061 0.995
520.omnetpp_r 0.658 0.688 0.701 1.046 1.019
523.xalancbmk_r 0.597 0.630 0.625 1.054 0.993
525.x264_r 1.110 1.185 0.992 1.068 0.837
531.deepsjeng_r 1.075 1.120 1.285 1.042 1.147
541.leela_r 1.160 1.255 1.355 1.082 1.080
548.exchange2_r 3.460 3.730 3.010 1.078 0.807
557.xz_r 0.813 0.863 0.923 1.062 1.068
GEOMEAN 0.998 1.061 1.061 1.063 1.000

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to Top