That sounds great. In the meantime I will work a bit more on the SE mode.
Also do you have any inputs on the following ?

m5threads: If there are 9 CPU, and the host CPU launches 9 threads, then
are 8 threads launched on the remaining 8 CPUs and the 9th thread has to
wait for a
thread to complete to begin execution. If not then where does it run as all
the 9 CPUs are currently running a thread (1 host + 8 threads).

Thank you,
John Smith

On Fri, Apr 16, 2021 at 12:58 PM Jason Lowe-Power <ja...@lowepower.com>
wrote:

> Soon! https://gem5.atlassian.net/browse/GEM5-195
>
> We're hopeful that in the next month or so all of this code will be public.
>
> Cheers,
> Jason
>
> On Fri, Apr 16, 2021 at 9:55 AM John Smith <jjsmith2...@gmail.com> wrote:
>
>> Will I also be able to run the GPU model in the FS mode ?
>>
>> On Fri, Apr 16, 2021 at 11:39 AM Jason Lowe-Power <ja...@lowepower.com>
>> wrote:
>>
>>> Hi John,
>>>
>>> I suggest using full system mode instead of SE mode if you're running a
>>> multithreaded workload. In FS mode, there's a full OS so it can handle
>>> thread switching, etc. For Parsec on x86 we've created a set of resources
>>> for you to get started. See
>>> https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stable/src/parsec/
>>> for details.
>>>
>>> Cheers,
>>> Jason
>>>
>>> On Fri, Apr 16, 2021 at 8:07 AM John Smith via gem5-users <
>>> gem5-users@gem5.org> wrote:
>>>
>>>> Hi All,
>>>>
>>>> I am sorry for the confusion.
>>>>
>>>> I am looking to run a multithreaded application on a mesh of 3x3 CPUs,
>>>> where the benchmark spawns 9 threads and each thread runs on
>>>> a single CPU (1:1). I went through the past discussions on this mailing
>>>> list and saw that m5threads was needed to do this. I have some questions.
>>>>
>>>> (1) If there are 9 CPU, and the host CPU launches 9 threads, then are 8
>>>> threads launched on the remaining 8 CPUs and the 9th thread has to wait for
>>>> a
>>>> thread to complete to begin execution. If not then where does it run as
>>>> all the 9 CPUs are currently running a thread (1 host + 8 threads).
>>>>
>>>> (2) Anthony Gutierrez said that m5threads is no longer needed. Is that
>>>> correct for gem5-21 ?
>>>>      (Subject: Simulating multiprogrammed & multithreaded workloads in
>>>> SE mode?)
>>>>
>>>> (3) Right now I am trying to build PARSEC 3.0 benchmarks with
>>>> m5threads, but I am receiving some errors as follows and I am not sure why:
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> *base_dir/local/gcc/bin/gcc -O3 -g -funroll-loops
>>>> -fprefetch-loop-arrays  base_dir/gem5dev/parsec-3.0/pkgs/pthread.o
>>>> -static-libgcc -Wl,--hash-style=both -Wl,--as-needed
>>>> -DPARSEC_VERSION=3.0-beta-20150206 -o siman_tsp siman_tsp.o  -L
>>>> base_dir/local/gcc/lib64 -L base_dir/local/gcc/lib ./.libs/libgslsiman.a
>>>> ../rng/.libs/libgslrng.a ../ieee-utils/.libs/libgslieeeutils.a
>>>> ../err/.libs/libgslerr.a ../sys/.libs/libgslsys.a ../utils/.libs/libutils.a
>>>> -lpthread -lmbase_dir/gem5dev/parsec-3.0/pkgs/pthread.o: In function
>>>> `__pthread_initialize_minimal':pthread.c:(.text+0x97): undefined reference
>>>> to `_dl_phdr'pthread.c:(.text+0xd9): undefined reference to `_dl_phnum'*
>>>>
>>>> Generally how should I go about integrating the m5thread with any
>>>> benchmark?
>>>>
>>>> (4) Also, what other CPU benchmarks are recommended which are
>>>> multithreaded and can be run in a manner where I can
>>>> launch a thread on each CPU ?
>>>>
>>>> Thank You,
>>>> John Smith
>>>>
>>>> <https://www.mail-archive.com/search?l=gem5-users@gem5.org&q=from:%22Gutierrez%2C+Anthony%22>
>>>>
>>>> On Fri, Apr 16, 2021 at 1:50 AM Gabe Black via gem5-users <
>>>> gem5-users@gem5.org> wrote:
>>>>
>>>>> That's essentially right, although gem5 does have some plumbing to run
>>>>> multiple event queues within the same simulation which can coordinate with
>>>>> each other within a small window (quantum) of time. gem5 has support for
>>>>> fibers/threads/coroutines, but these are not typically used to model
>>>>> events. Events are processed inline when they happen using a simple
>>>>> function call.
>>>>>
>>>>> Gabe
>>>>>
>>>>> On Thu, Apr 15, 2021 at 2:46 AM gabriel.busnot--- via gem5-users <
>>>>> gem5-users@gem5.org> wrote:
>>>>>
>>>>>> Hi John,
>>>>>>
>>>>>> Short answer : no, you can only run several simulations in parallel,
>>>>>> but not a single simulation using one thread per CPU.
>>>>>>
>>>>>> Gem5 relies on Discrete Event Simulation (DES) to simulate the
>>>>>> concurrent behavior of HW.
>>>>>> DES is intrinsically sequential in its execution as it relies on
>>>>>> coroutines (also called user user threads, greed threads, fibers, etc.).
>>>>>> Parallelizing such application is a very hard task that often
>>>>>> requires a lot of subtle code transformations to efficiently protect 
>>>>>> shared
>>>>>> resources.
>>>>>> If done correctly, then parallel DES does not have all the good
>>>>>> properties of classic DES, especially determinism... Unless you add extra
>>>>>> care to preserve it, which is hard, too. Trust me ;).
>>>>>>
>>>>>> This question has been discussed back in the days but seems stalled
>>>>>> now: http://www.m5sim.org/Parallel_M5
>>>>>>
>>>>>> Cheers,
>>>>>> Gabriel
>>>>>> _______________________________________________
>>>>>> gem5-users mailing list -- gem5-users@gem5.org
>>>>>> To unsubscribe send an email to gem5-users-le...@gem5.org
>>>>>> %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
>>>>>>
>>>>> _______________________________________________
>>>>> gem5-users mailing list -- gem5-users@gem5.org
>>>>> To unsubscribe send an email to gem5-users-le...@gem5.org
>>>>> %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
>>>>
>>>> _______________________________________________
>>>> gem5-users mailing list -- gem5-users@gem5.org
>>>> To unsubscribe send an email to gem5-users-le...@gem5.org
>>>> %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
>>>
>>>
_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to