Our programs run on TX1 is slower than TK1.I use CoreMark test tools found, TX1 is slower than TK1.I am very confused.I think TX1 should more than TK1 several times.
TX1 ‘s SDK is Jetpack3.3 ucm1 1.73GHz .
Tx1 CoreMark test log:
2K performance run parameters for coremark.
CoreMark Size : 666
Total ticks : 16638
Total time (secs): 16.638000
Iterations/Sec : 6611.371559
Iterations : 110000
Compiler version : GCC5.4.0 20160609
Compiler flags : -O2 -DPERFORMANCE_RUN=1 -lrt
Memory location : Please put data memory location here
(e.g. code in flash, data on heap etc)
seedcrc : 0xe9f5
[0]crclist : 0xe714
[0]crcmatrix : 0x1fd7
[0]crcstate : 0x8e3a
[0]crcfinal : 0x33ff
Correct operation validated. See readme.txt for run and reporting rules.
CoreMark 1.0 : 6611.371559 / GCC5.4.0 20160609 -O2 -DPERFORMANCE_RUN=1 -lrt / Heap
Tk1 CoreMark test log:
2K performance run parameters for coremark.
CoreMark Size : 666
Total ticks : 15613
Total time (secs): 15.613000
Iterations/Sec : 7045.410876
Iterations : 110000
Compiler version : GCC4.8.2
Compiler flags : -O2 -DPERFORMANCE_RUN=1 -lrt
Memory location : Please put data memory location here
(e.g. code in flash, data on heap etc)
seedcrc : 0xe9f5
[0]crclist : 0xe714
[0]crcmatrix : 0x1fd7
[0]crcstate : 0x8e3a
[0]crcfinal : 0x33ff
Correct operation validated. See readme.txt for run and reporting rules.
CoreMark 1.0 : 7045.410876 / GCC4.8.2 -O2 -DPERFORMANCE_RUN=1 -lrt / Heap
Hi 504566020,
Please try again with enable max performance:
sudo ./jetson_clocks.sh
We’ve been calling the script. The result is the same.
root@tegra-ubuntu:~# cat l4t_dfs.conf
/sys/devices/system/cpu/cpu1/online:1
/sys/devices/system/cpu/cpu2/online:1
/sys/devices/system/cpu/cpu3/online:1
/sys/module/qos/parameters/enable:N
/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq:1734000
/sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq:1734000
/sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq:1734000
/sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq:1734000
/sys/devices/57000000.gpu/devfreq/57000000.gpu/min_freq:998400000
/sys/devices/57000000.gpu/railgate_enable:0
/sys/kernel/debug/clk/override.emc/clk_state:1
NVIDIA only has it on the Jetson TX2.
I run nvpmodel tools on TX1 ,The results are as follows:
root@tegra-ubuntu~# ./nvpmodel -m 0
NVPM ERROR: Error opening /sys/devices/system/cpu/cpu4/online: 2
NVPM ERROR: failed to write PARAM CPU_ONLINE: ARG CORE_4: PATH: /sys/devices/system/cpu/cpu4/online VAL: 1
NVPM ERROR: Error opening /sys/devices/17000000.gp10b/devfreq/17000000.gp10b/available_frequencies: 2
NVPM ERROR: failed to read PARAM GPU: ARG FREQ_TABLE: PATH /sys/devices/17000000.gp10b/devfreq/17000000.gp10b/available_frequencies
NVPM ERROR: Error opening /sys/kernel/nvpmodel_emc_cap/emc_iso_cap: 2
NVPM ERROR: failed to write PARAM EMC: ARG MAX_FREQ: PATH: /sys/kernel/nvpmodel_emc_cap/emc_iso_cap VAL: 0
NVPM ERROR: failed to set power mode!
NVPM ERROR: Failed to exec option requests!
You need to use it with sudo:
sudo nvpmodel -m 0
sudo /home/nvidia/jetson_clocks.sh
sorry, i think the nvpmodel tools can’t run on tx1.Who can use the CoreMark tool on your equipment test, can come to the same conclusion?
root@tegra-ubuntu:~# sudo ./nvpmodel -m 0
NVPM ERROR: Error opening /sys/devices/17000000.gp10b/devfreq/17000000.gp10b/available_frequencies: 2
NVPM ERROR: failed to read PARAM GPU: ARG FREQ_TABLE: PATH /sys/devices/17000000.gp10b/devfreq/17000000.gp10b/available_frequencies
NVPM ERROR: Error opening /sys/kernel/nvpmodel_emc_cap/emc_iso_cap: 2
NVPM ERROR: failed to write PARAM EMC: ARG MAX_FREQ: PATH: /sys/kernel/nvpmodel_emc_cap/emc_iso_cap VAL: 0
NVPM ERROR: failed to set power mode!
NVPM ERROR: Failed to exec option requests!
root@tegra-ubuntu:~# sudo ./jetson_clocks.sh
root@tegra-ubuntu:~# ./tegrastats
RAM 736/3983MB (lfb 672x4MB) IRAM 0/252kB(lfb 252kB) CPU [0%@1734,0%@1734,0%@1734,0%@1734] EMC_FREQ 0%@1600 GR3D_FREQ 0%@998 APE 25 AO@34.5C CPU@31.5C GPU@31C PLL@29C Tdiode@35.25C PMIC@100C Tboard@35C thermal@30.75C VDD_IN 2487/2487 VDD_CPU 389/389 VDD_GPU 146/146
CoreMark result:
CoreMark 1.0 : 6626.905235 / GCC5.4.0 20160609 -O2 -DPERFORMANCE_RUN=1 -lrt / Heap
Hi 504566020,
The TK1 is ARM Cortex-A15, TX1 is ARM Cortex-A57, we set higher optimize to check performance difference.
After change port cflags to O3, the TX1 performance is better than TK1.
diff --git a/linux64/core_portme.mak b/linux64/core_portme.mak
index 5cfabee..68fdb3d 100755
--- a/linux64/core_portme.mak
+++ b/linux64/core_portme.mak
@@ -24,7 +24,7 @@ OUTFLAG= -o
CC = gcc
# Flag: CFLAGS
# Use this flag to define compiler options. Note, you can add compiler options from the command line using XCFLAGS="other flags"
-PORT_CFLAGS = -O2
+PORT_CFLAGS = -O3
FLAGS_STR = "$(PORT_CFLAGS) $(XCFLAGS) $(XLFLAGS) $(LFLAGS_END)"
CFLAGS = $(PORT_CFLAGS) -I$(PORT_DIR) -I. -DFLAGS_STR=\"$(FLAGS_STR)\"
#Flag: LFLAGS_END
[TX1/r28.2]
2K performance run parameters for coremark.
CoreMark Size : 666
Total ticks : 12479
Total time (secs): 12.479000
Iterations/Sec : 8814.808879
Iterations : 110000
Compiler version : GCC5.4.0 20160609
Compiler flags : -O3 -DPERFORMANCE_RUN=1 -lrt
Memory location : Please put data memory location here
(e.g. code in flash, data on heap etc)
seedcrc : 0xe9f5
[0]crclist : 0xe714
[0]crcmatrix : 0x1fd7
[0]crcstate : 0x8e3a
[0]crcfinal : 0x33ff
Correct operation validated. See readme.txt for run and reporting rules.
CoreMark 1.0 : 8814.808879 / GCC5.4.0 20160609 -O3 -DPERFORMANCE_RUN=1 -lrt / Heap
[TK1/r21.7]
2K performance run parameters for coremark.
CoreMark Size : 666
Total ticks : 14653
Total time (secs): 14.653000
Iterations/Sec : 7506.995155
Iterations : 110000
Compiler version : GCC4.8.2
Compiler flags : -O3 -DPERFORMANCE_RUN=1 -lrt
Memory location : Please put data memory location here
(e.g. code in flash, data on heap etc)
seedcrc : 0xe9f5
[0]crclist : 0xe714
[0]crcmatrix : 0x1fd7
[0]crcstate : 0x8e3a
[0]crcfinal : 0x33ff
Correct operation validated. See readme.txt for run and reporting rules.
CoreMark 1.0 : 7506.995155 / GCC4.8.2 -O3 -DPERFORMANCE_RUN=1 -lrt / Heap