Hi all!
I want to run the Barnes benchmark in Opal + Ruby.
Now I can run it well on 4 processors and 8 processors. But when on 16 and 32
processors, I got the Segmentation fault.
16 processors:
Segmentation fault (SIGSEGV) in main
thread
The simulation state has been corrupted.
Simulation cannot continue.
Please restart Simics.
Starting command line. (May have skipped commands
in script files.)
[cpu13] v:0x000000000104878c p:0x00002c4878c jmpl [%l0 + %g0], %o7
Setting new inspection cpu:
cpu13
Traceback (most recent call
last):
File "/root/gems/gen-scripts/mfacet.py", line 308,
in console_branch_internal
wait_for_string(get_console(), __prompt)
File
"/root/gems/simics-3.0.30/x86-linux/lib/python/text_console_common.py", line 10,
in wait_for_string
wait_for_obj_hap("Xterm_Break_String", obj,
break_id)
File
"/root/gems/simics-3.0.30/x86-linux/lib/python/cli_impl.py", line 3374, in
wait_for_obj_hap
return
wait_for_hap_common([hap_name, name, idx0])
File
"/root/gems/simics-3.0.30/x86-linux/lib/python/cli_impl.py", line 3352, in
wait_for_hap_common raise SimExc_Break, "Script branch
interrupted"
sim_core.SimExc_Break: Script branch
interrupted
Exception in python branch
32 processors:
Segmentation fault (SIGSEGV) in main
thread
The simulation state has been corrupted.
Simulation cannot continue.
Please restart Simics.
Starting command line. (May have skipped commands
in script files.)
[cpu32] v:0x00000000000145f4 p:0x0001bc885f4 magic (sethi 0x1, %g0)
Setting new inspection cpu:
cpu32
Traceback (most recent call
last):
File "/root/gems/gen-scripts/mfacet.py", line 308,
in console_branch_internal
wait_for_string(get_console(), __prompt)
File
"/root/gems/simics-3.0.30/x86-linux/lib/python/text_console_common.py", line 10,
in wait_for_string
wait_for_obj_hap("Xterm_Break_String", obj,
break_id)
File
"/root/gems/simics-3.0.30/x86-linux/lib/python/cli_impl.py", line 3374, in
wait_for_obj_hap
return
wait_for_hap_common([hap_name, name, idx0])
File
"/root/gems/simics-3.0.30/x86-linux/lib/python/cli_impl.py", line 3352, in
wait_for_hap_common raise SimExc_Break, "Script branch
interrupted"
sim_core.SimExc_Break: Script branch
interrupted
Exception in python branch
The scripts is the following:
4 processors
@mfacet.run_sim_command('instruction-fetch-mode
instruction-fetch-trace')
@mfacet.run_sim_command('istc-disable')
@mfacet.run_sim_command('dstc-disable')
@mfacet.run_sim_command('load-module
ruby')
@mfacet.run_sim_command('load-module
opal')
@mfacet.run_sim_command('ruby0.setparam
g_NUM_PROCESSORS 2')
@mfacet.run_sim_command('ruby0.setparam
g_NUM_SMT_THREADS 2')
@mfacet.run_sim_command('ruby0.setparam
L2_CACHE_ASSOC 4')
@mfacet.run_sim_command('ruby0.setparam
L2_CACHE_NUM_SETS_BITS 11')
@mfacet.run_sim_command('ruby0.setparam
g_DATA_BLOCK_BYTES 64')
@mfacet.run_sim_command('ruby0.setparam
NETWORK_LINK_LATENCY 4')
@mfacet.run_sim_command('ruby0.setparam
g_FLIT_SIZE 4')
@mfacet.run_sim_command('ruby0.setparam_str
g_NETWORK_TOPOLOGY TORUS_2D')
@mfacet.run_sim_command('ruby0.setparam
g_endpoint_bandwidth 100')
@mfacet.run_sim_command('opal0.setparam
CONFIG_LOGICAL_PER_PHY_PROC 2')
@mfacet.run_sim_command('opal0.setparam
CONFIG_IREG_PHYSICAL 384')
@mfacet.run_sim_command('opal0.setparam
CONFIG_FPREG_PHYSICAL 256')
@mfacet.run_sim_command('opal0.setparam
CONFIG_CCREG_PHYSICAL 74')
@mfacet.run_sim_command('ruby0.init')
@mfacet.run_sim_command('opal0.init')
@mfacet.run_sim_command('opal0.sim-start
result-8p.opal')
@mfacet.run_sim_command('opal0.sim-step
1000')
@mfacet.run_sim_command('ruby0.dump-stats
%s.stats' % filename_prefix)
quit
8 processors
@mfacet.run_sim_command('instruction-fetch-mode
instruction-fetch-trace')
@mfacet.run_sim_command('istc-disable')
@mfacet.run_sim_command('dstc-disable')
@mfacet.run_sim_command('load-module
ruby')
@mfacet.run_sim_command('load-module
opal')
@mfacet.run_sim_command('ruby0.setparam
g_NUM_PROCESSORS 4')
@mfacet.run_sim_command('ruby0.setparam
g_NUM_SMT_THREADS 2')
@mfacet.run_sim_command('ruby0.setparam
L2_CACHE_ASSOC 4')
@mfacet.run_sim_command('ruby0.setparam
L2_CACHE_NUM_SETS_BITS 11')
@mfacet.run_sim_command('ruby0.setparam
g_DATA_BLOCK_BYTES 64')
@mfacet.run_sim_command('ruby0.setparam
NETWORK_LINK_LATENCY 4')
@mfacet.run_sim_command('ruby0.setparam
g_FLIT_SIZE 4')
@mfacet.run_sim_command('ruby0.setparam_str
g_NETWORK_TOPOLOGY TORUS_2D')
@mfacet.run_sim_command('ruby0.setparam
g_endpoint_bandwidth 100')
@mfacet.run_sim_command('opal0.setparam
CONFIG_LOGICAL_PER_PHY_PROC 2')
@mfacet.run_sim_command('opal0.setparam
CONFIG_IREG_PHYSICAL 384')
@mfacet.run_sim_command('opal0.setparam
CONFIG_FPREG_PHYSICAL 256')
@mfacet.run_sim_command('opal0.setparam
CONFIG_CCREG_PHYSICAL 74')
@mfacet.run_sim_command('ruby0.init')
@mfacet.run_sim_command('opal0.init')
@mfacet.run_sim_command('opal0.sim-start
result-8p.opal')
@mfacet.run_sim_command('opal0.sim-step
1000')
@mfacet.run_sim_command('ruby0.dump-stats
%s.stats' % filename_prefix)
quit
16 processors
@mfacet.run_sim_command('instruction-fetch-mode
instruction-fetch-trace')
@mfacet.run_sim_command('istc-disable')
@mfacet.run_sim_command('dstc-disable')
@mfacet.run_sim_command('load-module
ruby')
@mfacet.run_sim_command('load-module
opal')
@mfacet.run_sim_command('ruby0.setparam
g_NUM_PROCESSORS 8')
#@mfacet.run_sim_command('ruby0.setparam
g_NUM_SMT_THREADS 2')
@mfacet.run_sim_command('ruby0.setparam
L2_CACHE_ASSOC 4')
@mfacet.run_sim_command('ruby0.setparam
L2_CACHE_NUM_SETS_BITS 11')
@mfacet.run_sim_command('ruby0.setparam
g_DATA_BLOCK_BYTES 64')
@mfacet.run_sim_command('ruby0.setparam
NETWORK_LINK_LATENCY 4')
@mfacet.run_sim_command('ruby0.setparam
g_FLIT_SIZE 4')
@mfacet.run_sim_command('ruby0.setparam_str
g_NETWORK_TOPOLOGY TORUS_2D')
@mfacet.run_sim_command('ruby0.setparam
g_endpoint_bandwidth 100')
@mfacet.run_sim_command('opal0.setparam
CONFIG_LOGICAL_PER_PHY_PROC 2')
@mfacet.run_sim_command('opal0.setparam
CONFIG_IREG_PHYSICAL 384')
@mfacet.run_sim_command('opal0.setparam
CONFIG_FPREG_PHYSICAL 256')
@mfacet.run_sim_command('opal0.setparam
CONFIG_CCREG_PHYSICAL 74')
@mfacet.run_sim_command('ruby0.init')
@mfacet.run_sim_command('opal0.init')
@mfacet.run_sim_command('opal0.sim-start
result-16p.opal')
@mfacet.run_sim_command('opal0.sim-step
1000')
@mfacet.run_sim_command('ruby0.dump-stats
%s.stats' % filename_prefix)
quit
32 processors
@mfacet.run_sim_command('instruction-fetch-mode
instruction-fetch-trace')
@mfacet.run_sim_command('istc-disable')
@mfacet.run_sim_command('dstc-disable')
@mfacet.run_sim_command('load-module
ruby')
@mfacet.run_sim_command('load-module
opal')
@mfacet.run_sim_command('ruby0.setparam
g_NUM_PROCESSORS 16')
#@mfacet.run_sim_command('ruby0.setparam
g_NUM_SMT_THREADS 2')
@mfacet.run_sim_command('ruby0.setparam
L2_CACHE_ASSOC 4')
@mfacet.run_sim_command('ruby0.setparam
L2_CACHE_NUM_SETS_BITS 11')
@mfacet.run_sim_command('ruby0.setparam
g_DATA_BLOCK_BYTES 64')
@mfacet.run_sim_command('ruby0.setparam
NETWORK_LINK_LATENCY 4')
@mfacet.run_sim_command('ruby0.setparam
g_FLIT_SIZE 4')
@mfacet.run_sim_command('ruby0.setparam_str
g_NETWORK_TOPOLOGY TORUS_2D')
@mfacet.run_sim_command('ruby0.setparam
g_endpoint_bandwidth 100')
@mfacet.run_sim_command('opal0.setparam
CONFIG_LOGICAL_PER_PHY_PROC 2')
@mfacet.run_sim_command('opal0.setparam
CONFIG_IREG_PHYSICAL 384')
@mfacet.run_sim_command('opal0.setparam
CONFIG_FPREG_PHYSICAL 256')
@mfacet.run_sim_command('opal0.setparam
CONFIG_CCREG_PHYSICAL 74')
@mfacet.run_sim_command('ruby0.init')
@mfacet.run_sim_command('opal0.init')
@mfacet.run_sim_command('opal0.sim-start
result-16p.opal')
@mfacet.run_sim_command('opal0.sim-step
1000')
@mfacet.run_sim_command('ruby0.dump-stats
%s.stats' % filename_prefix)
quit
Thank you very
much!