Hi Duc Anh, I think the stats error is related to this change, https://gem5-review.googlesource.com/c/public/gem5/+/36296.
The stats bug should be resolved when you cherry-pick that change. Hopefully we can add the SMT feature and fix the multicore DerivO3 bug by the next release. Regarding the SMT feature, I don't know whether it works correctly (we don't know how the actual hardware the apic id) for X86, but I remember that this relation chain ( https://gem5-review.googlesource.com/c/public/gem5/+/35837) does work. Regards, Hoa Nguyen On Thu, Nov 12, 2020, 2:39 AM Đức Anh <daut...@gmail.com> wrote: > Hi Hoa Nguyen, > > A bit sad when some features I want will only be supported from 20.2 > version (SMT, multicore DerivO3CPU). Do the gem5 team have any plan on when > the next version will be released? > > About the stats error, I use the same version and cmd as the first email. > I will retype it here for convenience. > Cmd: `./build/X86/gem5.opt configs/tutorial/two_core.py` > gem5 version 20.1 > gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04) > python 2.7.17 > > The error log: > gem5.opt: build/X86/base/stats/group.cc:115: void > Stats::Group::addStatGroup(const char*, Stats::Group*): Assertion > `statGroups.find(name) == statGroups.end()' failed. > Program aborted at tick 0 > --- BEGIN LIBC BACKTRACE --- > ./build/X86/gem5.opt(_Z15print_backtracev+0x2c)[0x5565d4f4958c] > ./build/X86/gem5.opt(_Z12abortHandleri+0x4a)[0x5565d4f5c0aa] > /lib/x86_64-linux-gnu/libpthread.so.0(+0x128a0)[0x7f51a53c58a0] > /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7f51a39a1f47] > /lib/x86_64-linux-gnu/libc.so.6(abort+0x141)[0x7f51a39a38b1] > /lib/x86_64-linux-gnu/libc.so.6(+0x3042a)[0x7f51a399342a] > /lib/x86_64-linux-gnu/libc.so.6(+0x304a2)[0x7f51a39934a2] > > ./build/X86/gem5.opt(_ZN5Stats5Group12addStatGroupEPKcPS0_+0x16f)[0x5565d526a44f] > ./build/X86/gem5.opt(_ZN5Stats5GroupC2EPS0_PKc+0xe8)[0x5565d526a908] > > ./build/X86/gem5.opt(_ZN11ThreadState16ThreadStateStatsC2EP7BaseCPUPS_+0x65)[0x5565d5335fc5] > > ./build/X86/gem5.opt(_ZN11ThreadStateC1EP7BaseCPUsP7Process+0x44)[0x5565d5336324] > > ./build/X86/gem5.opt(_ZN13O3ThreadStateI9O3CPUImplEC2EP9FullO3CPUIS0_EiP7Process+0x2f)[0x5565d515ed7f] > > ./build/X86/gem5.opt(_ZN9FullO3CPUI9O3CPUImplEC1EP16DerivO3CPUParams+0x1a48)[0x5565d516d0d8] > ./build/X86/gem5.opt(_ZN16DerivO3CPUParams6createEv+0x44)[0x5565d5137f94] > ./build/X86/gem5.opt(+0xda6583)[0x5565d55bc583] > ./build/X86/gem5.opt(+0x6ac8b9)[0x5565d4ec28b9] > > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyCFunction_FastCallDict+0x20a)[0x7f51a57e558a] > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x17bec8)[0x7f51a574dec8] > > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4ec3)[0x7f51a5754303] > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x17a803)[0x7f51a574c803] > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x17c2be)[0x7f51a574e2be] > > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4ec3)[0x7f51a5754303] > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x17a803)[0x7f51a574c803] > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x17c2be)[0x7f51a574e2be] > > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4ec3)[0x7f51a5754303] > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x17a803)[0x7f51a574c803] > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x17c2aa)[0x7f51a574e2aa] > > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4ec3)[0x7f51a5754303] > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x17ba0f)[0x7f51a574da0f] > > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(PyEval_EvalCodeEx+0x3e)[0x7f51a574e4ce] > > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(PyEval_EvalCode+0x1b)[0x7f51a574f24b] > /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x18855d)[0x7f51a575a55d] > --- END LIBC BACKTRACE --- > Aborted (core dumped) > > Best regards, > Duc Anh > > Vào Th 4, 11 thg 11, 2020 vào lúc 23:32 Hoa Nguyen < > hoangu...@ucdavis.edu> đã viết: > >> Hi Duc Anh, >> >> I assume you want to enable SMT for X86. SMT for X86 has yet to be >> supported, but there is progress on this recently. You can keep track >> of the development via JIRA ticket >> (https://gem5.atlassian.net/browse/GEM5-332) and via this relation >> change (https://gem5-review.googlesource.com/c/public/gem5/+/35837). >> >> Regarding the stats error, can you be a little bit more specific about >> the version of gem5 that you're using and the command that you used? >> Are they the same as the ones in the first email >> (https://www.mail-archive.com/gem5-users@gem5.org/msg18678.html)? >> >> Regards, >> Hoa Nguyen >> >> On 11/10/20, Đức Anh via gem5-users <gem5-users@gem5.org> wrote: >> > Hi Ayaz, >> > >> > Thanks for the help. I guess if we don't share anything between the >> cores >> > then it will be the multi-processor platform, right? Btw, how to enable >> > SMT? I looked through the se.py then look like you only need to use >> > DerivO3CPU and just pass an array of the process in. However, I got this >> > error >> > `gem5.opt: build/X86/base/stats/group.cc:115: void >> > Stats::Group::addStatGroup(const char*, Stats::Group*): Assertion >> > `statGroups.find(name) == statGroups.end()' failed.` >> > What is the correct way to do this? >> > >> > Best regards, >> > Duc Anh >> > >> > Vào Th 3, 10 thg 11, 2020 vào lúc 00:01 Ayaz Akram < >> yazak...@ucdavis.edu> >> > đã viết: >> > >> >> Hi Duc, >> >> >> >> By passing a list of CPUs to the system.cpu (as in the attached Python >> >> script), you are creating a multicore CPU (CPU here refers to a core). >> >> Secondly, if your CPU has SMT enabled, you should be able to pass >> >> multiple >> >> processes to the workload option. >> >> >> >> Btw, there is already a JIRA issue created for the problem you are >> >> running >> >> into: https://gem5.atlassian.net/browse/GEM5-803 >> >> >> >> -Ayaz >> >> >> >> On Mon, Nov 9, 2020 at 2:18 AM Đức Anh via gem5-users >> >> <gem5-users@gem5.org> >> >> wrote: >> >> >> >>> Hello all, >> >>> >> >>> I am trying to create a system having multiple CPUs by passing a list >> of >> >>> CPU to the system.cpu. So far it works with TimingSimpleCPU, but for >> the >> >>> DerivO3CPU it crashes. I include the crash log, the python config >> file, >> >>> and >> >>> the C workload file. I am using gem5 20.1, pulled from the stable >> >>> branch, gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04), python >> 2.7.17. >> >>> The >> >>> command line I use is: >> >>> ./build/X86/gem5.opt configs/tutorial/two_core.py >> >>> The 2 binary files for 2 workloads are almost the same, I just change >> >>> the >> >>> text in printf, and the number of loops. >> >>> >> >>> I also wonder that by passing a list of CPU to the system.cpu, am I >> >>> creating a system is 1 multicore CPU or a system with multiple >> separate >> >>> CPU? And how to pass multiple workloads on 1 CPU? I saw it accept a >> >>> list, >> >>> but it throws an error if I pass a list with more than 1 workload. >> >>> >> >>> Best regards, >> >>> Duc Anh >> >>> _______________________________________________ >> >>> 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