nathan binkert <nate <at> binkert.org> writes:

> 
> M5 in SE mode doesn't support several of the system calls required for
> implementing multithreading.  To solve the problem, you need to
> implement the system calls required by OpenMP.  Also, depending on how
> you want things to work, you might have to write a thread scheduler
> for SE mode to load balance the CPUs.  If you do any of this, please
> share your patches.
> 
> Another alternative is to run M5 in Full System mode.  If you do this,
> you'll be running the linux kernel and get all of the system calls it
> supplies.
> 
>   Nate
> 
> On Mon, Jan 19, 2009 at 10:15 AM, Sitos Lin <sitos.lin <at> gmail.com> 
wrote:
> > Hi all:
> >  I am trying to run Spec OMP in the APLHA_SE mode. I used the
> > pre-compiled cross-compile to compile the code of Spec OMP. When I
> > compile the code without -fopenmp flag, the code is not parallelized,
> > and the m5 simulator can execute them normally. However, When I
> > compile the code with -fopenmp flag, the compilation has no error, but
> > the m5 simulator would say "fatal: syscall set_tid_address (#411)
> > unimplemented." I have also tested a test program such as hello world.
> > It shows the same behavior. It seems that m5 can not execute the
> > compiled openmp code. How can I solve this problem?
> > Thanks in advance
> >  sitos
> > _______________________________________________
> > m5-users mailing list
> > m5-users <at> m5sim.org
> > http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
> >
> >
> 

Hi Nate,

I was wondering if there's any patch released or if there's any solution 
available? I am receiving the same error and I am running OpenMP binaries in 
Gem5. I have found a patch for m5 not sure if it applies for gem5 as well or 
not? http://www.cs.virginia.edu/~jm6dg/fractal/smp.htm (Do you suggest this 
patch?)


./build/X86/gem5.opt ./configs/example/se.py --cpu-type=timing --num-cpus=8 
--clock=4GHz --num-dirs=1 --l2_size=4MB --l1d_size=64kB --l1i_size=64kB --
num-l2caches=1 --l2_assoc=16 -c ./benchmarks/rodinia/bin/backprop -o 64
Global frequency set at 1000000000000 ticks per second
0: system.remote_gdb.listener: listening for remote gdb #0 on port 7008
0: system.remote_gdb.listener: listening for remote gdb #1 on port 7009
0: system.remote_gdb.listener: listening for remote gdb #2 on port 7010
0: system.remote_gdb.listener: listening for remote gdb #3 on port 7011
0: system.remote_gdb.listener: listening for remote gdb #4 on port 7012
0: system.remote_gdb.listener: listening for remote gdb #5 on port 7013
0: system.remote_gdb.listener: listening for remote gdb #6 on port 7014
0: system.remote_gdb.listener: listening for remote gdb #7 on port 7015
**** REAL SIMULATION ****
info: Entering event queue @ 0.  Starting simulation...
fatal: syscall set_tid_address (#218) unimplemented.
 @ cycle 51180000
[unimplementedFunc:build/X86/sim/syscall_emul.cc, line 83]
Memory Usage: 610712 KBytes


All the bests,
Mona Jalal.




_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to