Hi, The question is: Do I build the AMD system differently?
gem5 does not need to be built differently on different host platforms. build/X86/base/loader/image_file_data.cc:54: panic: panic condition sz != 2 > occurred: Couldn't read magic bytes from object file This error usually shows up if there is something wrong with the elf of the binary that is being simulated (for example different ISA than the ISA gem5 binary expects). I wonder if you see the same error for other binaries/programs on the AMD system? -Ayaz On Sat, Jun 3, 2023 at 11:12 AM Beser, Nicholas D. via gem5-users < gem5-users@gem5.org> wrote: > I am working my way through the bootcamp 2022 tutorial, and I noticed > something odd. It suggests that if I have different types of X86 > processors, I may have issues in execution. > > > > I was working with two different systems. A slower (6 core) VM system > (genuine intel), and a AMD Ryzen 9 16 core processor. I tried to run the > hello-world-with-cache-complete.py code on both systems. The VM system > succeeded. The AMD system failed. In addition to the terminal output, I am > including the output of lscpu. The question is: Do I build the AMD system > differently? I recompiled the matrix-multiply routine thinking that it > might have a problem with the executable, but I got the same error: > > > > Here is the VM terminal dump: > > > > $ build/X86/gem5.opt > ../materials/using-gem5/02-stdlib/complete/hello-world-with-cache-complete.py > > > gem5 Simulator System. https://www.gem5.org > > gem5 is copyrighted software; use the --copyright option for details. > > > > gem5 version 22.0.0.0 > > gem5 compiled Jun 3 2023 10:44:14 > > gem5 started Jun 3 2023 13:50:32 > > gem5 executing on besernd1-vm5, pid 980747 > > command line: build/X86/gem5.opt > ../materials/using-gem5/02-stdlib/complete/hello-world-with-cache-complete.py > > > > warn: The `get_runtime_isa` function is deprecated. Please migrate away > from using this function. > > warn: The simulate package is still in a beta state. The gem5 project does > not guarantee the APIs within this package will remain consistent across > upcoming releases. > > Global frequency set at 1000000000000 ticks per second > > warn: failed to generate dot output from m5out/config.dot > > build/X86/mem/dram_interface.cc:690: warn: DRAM device capacity (8192 > Mbytes) does not match the address range assigned (1024 Mbytes) > > 0: board.remote_gdb: listening for remote gdb on port 7000 > > build/X86/sim/simulate.cc:194: info: Entering event queue @ 0. Starting > simulation... > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/syscall_emul.cc:74: warn: ignoring syscall mprotect(...) > > build/X86/sim/syscall_emul.cc:74: warn: ignoring syscall mprotect(...) > > build/X86/sim/syscall_emul.cc:74: warn: ignoring syscall mprotect(...) > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > build/X86/sim/mem_state.cc:443: info: Increasing stack size by one page. > > Populating the first and second matrix... > > Done! > > Multiplying the matrixes... > > Done! > > Calculating the sum of all elements in the matrix... > > Done > > The sum is 57238500000 > > (gem5G) besernd1@besernd1-vm5:~/gem5-bootcamp-env/gem5$ lscpu > > Architecture: x86_64 > > CPU op-mode(s): 32-bit, 64-bit > > Byte Order: Little Endian > > Address sizes: 43 bits physical, 48 bits virtual > > CPU(s): 6 > > On-line CPU(s) list: 0-5 > > Thread(s) per core: 1 > > Core(s) per socket: 1 > > Socket(s): 6 > > NUMA node(s): 1 > > Vendor ID: GenuineIntel > > CPU family: 6 > > Model: 85 > > Model name: Intel(R) Xeon(R) Gold 6226R CPU @ 2.90GHz > > Stepping: 0 > > CPU MHz: 2893.202 > > BogoMIPS: 5786.40 > > Hypervisor vendor: VMware > > Virtualization type: full > > L1d cache: 192 KiB > > L1i cache: 192 KiB > > L2 cache: 6 MiB > > L3 cache: 132 MiB > > NUMA node0 CPU(s): 0-5 > > Vulnerability Itlb multihit: KVM: Mitigation: VMX unsupported > > Vulnerability L1tf: Mitigation; PTE Inversion > > Vulnerability Mds: Mitigation; Clear CPU buffers; SMT Host > state > > unknown > > Vulnerability Meltdown: Mitigation; PTI > > Vulnerability Mmio stale data: Mitigation; Clear CPU buffers; SMT Host > state > > unknown > > Vulnerability Retbleed: Mitigation; IBRS > > Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass > disabled > > via prctl and seccomp > > Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and > __use > > r pointer sanitization > > Vulnerability Spectre v2: Mitigation; IBRS, IBPB conditional, RSB > fillin > > g, PBRSB-eIBRS Not affected > > Vulnerability Srbds: Not affected > > Vulnerability Tsx async abort: Not affected > > Flags: fpu vme de pse tsc msr pae mce cx8 apic > sep mt > > rr pge mca cmov pat pse36 clflush mmx > fxsr sse > > sse2 ss syscall nx pdpe1gb rdtscp lm > constant > > _tsc arch_perfmon nopl xtopology > tsc_reliable > > nonstop_tsc cpuid tsc_known_freq pni > pclmulqdq > > ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic > movb > > e popcnt tsc_deadline_timer aes xsave avx > f16c > > rdrand hypervisor lahf_lm abm > 3dnowprefetch i > > nvpcid_single pti ssbd ibrs ibpb stibp > fsgsbas > > e tsc_adjust bmi1 avx2 smep bmi2 invpcid > avx51 > > 2f avx512dq rdseed adx smap clflushopt > clwb av > > x512cd avx512bw avx512vl xsaveopt xsavec > xsave > > s arat pku ospke md_clear flush_l1d > arch_capab > > ilities > > > > Here is the terminal dump from the AMD X86 system: > > $ build/X86/gem5.opt > ../materials/using-gem5/02-stdlib/complete/hello-world-with-cache-complete.py > > > gem5 Simulator System. https://www.gem5.org > > gem5 is copyrighted software; use the --copyright option for details. > > > > gem5 version 22.1.0.0 > > gem5 compiled Jun 3 2023 10:44:55 > > gem5 started Jun 3 2023 13:52:26 > > gem5 executing on beserai, pid 1160110 > > command line: build/X86/gem5.opt > ../materials/using-gem5/02-stdlib/complete/hello-world-with-cache-complete.py > > > > warn: An ISA for the SimpleProcessor was not set. This will result in > usage of `runtime.get_runtime_isa` to obtain the ISA. This function is > deprecated and will be removed in future releases of gem5. Please > explicitly state the ISA via the processor constructor. > > warn: The `get_runtime_isa` function is deprecated. Please migrate away > from using this function. > > build/X86/base/loader/image_file_data.cc:54: panic: panic condition sz != > 2 occurred: Couldn't read magic bytes from object file > > Memory Usage: 131104 KBytes > > Program aborted at tick 0 > > --- BEGIN LIBC BACKTRACE --- > > build/X86/gem5.opt(+0xbc4260)[0x565521a33260] > > build/X86/gem5.opt(+0xbe9a8c)[0x565521a58a8c] > > /usr/lib/x86_64-linux-gnu/libc.so.6(+0x42520)[0x7f1e81efa520] > > /usr/lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x12c)[0x7f1e81f4ea7c] > > /usr/lib/x86_64-linux-gnu/libc.so.6(raise+0x16)[0x7f1e81efa476] > > /usr/lib/x86_64-linux-gnu/libc.so.6(abort+0xd3)[0x7f1e81ee07f3] > > build/X86/gem5.opt(+0x452c35)[0x5655212c1c35] > > build/X86/gem5.opt(+0x15e2f51)[0x565522451f51] > > build/X86/gem5.opt(+0x15e3c61)[0x565522452c61] > > build/X86/gem5.opt(+0xcd7a92)[0x565521b46a92] > > build/X86/gem5.opt(+0x44c512)[0x5655212bb512] > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x12b6d3)[0x7f1e82e646d3] > > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(_PyObject_MakeTpCall+0x8c)[0x7f1e82e1f1ac] > > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x9dcc)[0x7f1e82db4a0c] > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x1c681f)[0x7f1e82eff81f] > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0xe7618)[0x7f1e82e20618] > > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x9d78)[0x7f1e82db49b8] > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x1c681f)[0x7f1e82eff81f] > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0xe7618)[0x7f1e82e20618] > > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x9d78)[0x7f1e82db49b8] > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x1c681f)[0x7f1e82eff81f] > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0xe7618)[0x7f1e82e20618] > > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x9d78)[0x7f1e82db49b8] > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x1c681f)[0x7f1e82eff81f] > > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(PyEval_EvalCode+0xbe)[0x7f1e82efa94e] > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x1c1edd)[0x7f1e82efaedd] > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x12eb13)[0x7f1e82e67b13] > > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(_PyEval_EvalFrameDefault+0x69ee)[0x7f1e82db162e] > > /usr/lib/x86_64-linux-gnu/libpython3.10.so.1.0(+0x1c681f)[0x7f1e82eff81f] > > build/X86/gem5.opt(+0xbea8e7)[0x565521a598e7] > > build/X86/gem5.opt(+0x3f1738)[0x565521260738] > > /usr/lib/x86_64-linux-gnu/libc.so.6(+0x29d90)[0x7f1e81ee1d90] > > --- END LIBC BACKTRACE --- > > Aborted (core dumped) > > nbeser1@beserai:~/gem5-bootcamp-env/gem5$ lscpu > > Architecture: x86_64 > > CPU op-mode(s): 32-bit, 64-bit > > Address sizes: 43 bits physical, 48 bits virtual > > Byte Order: Little Endian > > CPU(s): 32 > > On-line CPU(s) list: 0-31 > > Vendor ID: AuthenticAMD > > Model name: AMD Ryzen 9 3950X 16-Core Processor > > CPU family: 23 > > Model: 113 > > Thread(s) per core: 2 > > Core(s) per socket: 16 > > Socket(s): 1 > > Stepping: 0 > > Frequency boost: enabled > > CPU max MHz: 3500.0000 > > CPU min MHz: 2200.0000 > > BogoMIPS: 6986.53 > > Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr > pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext > fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc c > > puid extd_apicid aperfmperf rapl pni pclmulqdq > monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand > lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse > > 3dnowprefetch osvw ibs skinit wdt tce topoext > perfctr_core perfctr_nb bpext perfctr_llc mwaitx cpb cat_l3 cdp_l3 > hw_pstate ssbd mba ibpb stibp vmmcall fsgsbase bmi1 avx2 smep bmi2 cqm r > > dt_a rdseed adx smap clflushopt clwb sha_ni > xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total > cqm_mbm_local clzero irperf xsaveerptr rdpru wbnoinvd arat npt lbrv svm_loc > > k nrip_save tsc_scale vmcb_clean flushbyasid > decodeassists pausefilter pfthreshold avic v_vmsave_vmload vgif v_spec_ctrl > umip rdpid overflow_recov succor smca sme sev sev_es > > Virtualization features: > > Virtualization: AMD-V > > Caches (sum of all): > > L1d: 512 KiB (16 instances) > > L1i: 512 KiB (16 instances) > > L2: 8 MiB (16 instances) > > L3: 64 MiB (4 instances) > > NUMA: > > NUMA node(s): 1 > > NUMA node0 CPU(s): 0-31 > > Vulnerabilities: > > Itlb multihit: Not affected > > L1tf: Not affected > > Mds: Not affected > > Meltdown: Not affected > > Mmio stale data: Not affected > > Retbleed: Mitigation; untrained return thunk; SMT enabled > with STIBP protection > > Spec store bypass: Mitigation; Speculative Store Bypass disabled via > prctl and seccomp > > Spectre v1: Mitigation; usercopy/swapgs barriers and __user > pointer sanitization > > Spectre v2: Mitigation; Retpolines, IBPB conditional, STIBP > always-on, RSB filling, PBRSB-eIBRS Not affected > > Srbds: Not affected > > Tsx async abort: Not affected > > > > > _______________________________________________ > gem5-users mailing list -- gem5-users@gem5.org > To unsubscribe send an email to gem5-users-le...@gem5.org >
_______________________________________________ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org