Hello,

A quick advice would be running in the FS mode. The SE mode may not support
thread switching between cores.

--
Fernando A. Endo, PhD student and researcher

Université de Grenoble, UJF
France



2014-03-21 5:22 GMT+01:00 Gokul Subramanian Ravi <[email protected]>:

> Hi,
>
> I am trying to run multi-threaded benchmarks using SMT on the SE mode of
> gem5.
>
>
> To start off, I used the command (this is multi-program) -
> build/X86/gem5.fast configs/example/se.py --ruby --smt -c 'tests/test-
> progs/hello/bin/x86/linux/hello;tests/test-progs/hello/bin/x86/linux/hello'
>
> This gives me errors in the x86 case -
>
> dependGraph[502]: No producer. consumer:
> dependGraph[503]: No producer. consumer:
>
> and aborts.
>
> I found this error discussed in some earlier posts as well and I don't know
> if there have been any updates (this is the latest gem5 version). So does
> this mean I cannot perform SMT in X86 mode?
>
> My main error I am trying to debug (may be related to the above too) is -
>
> I have a program that creates n number of threads based on a parameter
> passed and I have statically compiled this and linked with the M5 Threads
> etc.
>
> When I run the command, "build/X86/gem5.fast configs/example/se.py --ruby
> -n
> 3 -cpu_type=detailed -c ../programs/eg_pthread -o "2"" -
> I get the expected output. I am in need of 3 cores (number of threads + 1)
> and this works fine.
>
> Now I want to try this in the smt mode - I want to have 1 core and have 2
> (or 3?) threads to do the above process. So my command becomes -
>
> "build/X86/gem5.fast configs/example/se.py --ruby -n 1 --smt -
> cpu_type=detailed -c ../programs/eg_pthread -o "2""
>
> In this case I get the error "Called sys_clone, but no unallocated thread
> contexts found"
>
> To debug this, inside the se.py, if I print the value of numThreads, I see
> it to be 1. Should this be 2(or 3?) in my case?
>
> If I get the numThreads right I think I would still need to do something
> like "system.cpu[i].workload = [ multiprocesses[0]] * int(numThreads)"
> which
> is discussed at http://en.it-usenet.org/thread/11778/10994/ but since I'm
> having issues with the number of threads I'm not sure how to proceed.
>
> In summary, I basically want to know how do I run a single program that has
> multiple threads (say a Parsec benchmark) on a single core in SE mode using
> SMT. I am currently experimenting on X86 but I am open to using any ISA.
>
> Any help would be appreciated since I've been stuck with this issue for
> quite a while now.
>
> Thanks,
> Gokul
>
>
>
>
>
>
>
>
>
>
> _______________________________________________
> gem5-users mailing list
> [email protected]
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to