[gem5-users] Re: Version of gem5

2024-03-17 Thread Hoa Nguyen via gem5-users
Hi all,

It seems to be a bug in gem5.

You can run the gem5 binary without any arguments. The gem5 version is
within the first few lines of the output.

Regards,
Hoa Nguyen

On Sun, Mar 17, 2024, 14:31 yb_zhang--- via gem5-users 
wrote:

> I tried it in my environment and got the same error as you, which makes me
> wonder maybe it's a bug. but you can still check the version of gem5 by
> running the command build/X86/gem5.opt -v.
>
> More options for command line arguments can be found under
> src/python/m5/main.py, you can take a look at that file.
>
> Best wishes!
>
> Yibo Zhang
> School of Computer Science and Technology,USTC
>
> -原始邮件-
> *发件人:*"Beser, Nicholas D. via gem5-users" 
> *发送时间:*2024-03-17 23:58:44 (星期日)
> *收件人:* "The gem5 Users mailing list" 
> *抄送:* "Beser, Nicholas D." 
> *主题:* [gem5-users] Version of gem5
>
> I wanted to confirm the version number of the gem5 that I was running, so
> I thought I could just try:
>
>
>
> Build/X86/gem5.opt -B
>
>
>
> Or
>
>
>
> Build/X86/gem5.opt –version
>
>
>
> Neither command sequence worked.  –version produced the error message no
> such option, and -B produced
>
>
>
> AttributeError: module ‘m5-defines’ has not attribute ‘gem5Version’
>
>
>
> Is there an easy way to confirm the version number?
>
>
>
> Nick
>
>
>
>
> ___
> 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


[gem5-users] Re: [EXT] Re: Build gem5 on non x86 system

2024-03-15 Thread Hoa Nguyen via gem5-users
Hi Nick,

You can use the argument like this,

scons build/RISCV/gem5.opt –limit-ld-memory-usage -j`nproc`

I was able to compile gem5 with docker with 6GiB of RAM, and was not able
to do that with 4GiB of RAM.

I think you already hint at a better solution, which is to use build the
docker image on a different machine, and bundle the gem5 binary to the
docker image. Then you can distribute the image to the Jetson.

Regards,
Hoa Nguyen

On Fri, Mar 15, 2024, 06:27 Beser, Nicholas D. 
wrote:

> Hoa,
>
>
>
> Thank you for your suggestion. The Jetson Orin Nano normally comes with
> 4Gbyte Ram, so I can see that it could be a problem. Where do you apply the
> –limit-ld-memory-usage command? Did you attempt to build it with the docker
> command? I am using the Jetson Orin Nano for GPU and openmpi work, so the
> docker approach would help isolate the system. I am going to work through
> the installation procedure and see where it ends up.
>
>
>
> Nick
>
>
>
> *From:* Hoa Nguyen 
> *Sent:* Thursday, March 14, 2024 11:58 PM
> *To:* The gem5 Users mailing list 
> *Cc:* Beser, Nicholas D. 
> *Subject:* [EXT] Re: [gem5-users] Build gem5 on non x86 system
>
>
>
> *APL external email warning: *Verify sender hoangu...@ucdavis.edu before
> clicking links or attachments
>
>
>
> Hi Nick,
>
>
>
> I don't think there would be any problem with compiling gem5 on arm (or
> riscv) architecture on Ubuntu. I've been compiling/using gem5 on an arm
> system and it works for me.
>
>
>
> However, please make sure that the system has enough memory to compile
> gem5. Typically compiling gem5 takes a lot of memory, and you can pass
> "--limit-ld-memory-usage" to reduce the memory consumption.
>
>
>
> Regards,
>
> Hoa Nguyen
>
>
>
> On Thu, Mar 14, 2024, 17:44 Beser, Nicholas D. via gem5-users <
> gem5-users@gem5.org> wrote:
>
> I have been using gem5 on a number of linux systems  such as WSL under
> windows 10/11, and  Oracle VM and native Ubuntu 22.04 on a X86 system. All
> of the system were X86 based. I have a jetson orin nano which runs Ubuntu
> 20.04 and is based on the ARM processor. Has anyone ever compiled gem5 on a
> non-x86 based system? I have access to gcc compilers for x86, arm and mips
> that run on ARM, but I am not sure what needs to be done to compile gem5 on
> ARM.
>
>
>
> Nick Beser
>
> ___
> 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


[gem5-users] Re: Build gem5 on non x86 system

2024-03-14 Thread Hoa Nguyen via gem5-users
Hi Nick,

I don't think there would be any problem with compiling gem5 on arm (or
riscv) architecture on Ubuntu. I've been compiling/using gem5 on an arm
system and it works for me.

However, please make sure that the system has enough memory to compile
gem5. Typically compiling gem5 takes a lot of memory, and you can pass
"--limit-ld-memory-usage" to reduce the memory consumption.

Regards,
Hoa Nguyen

On Thu, Mar 14, 2024, 17:44 Beser, Nicholas D. via gem5-users <
gem5-users@gem5.org> wrote:

> I have been using gem5 on a number of linux systems  such as WSL under
> windows 10/11, and  Oracle VM and native Ubuntu 22.04 on a X86 system. All
> of the system were X86 based. I have a jetson orin nano which runs Ubuntu
> 20.04 and is based on the ARM processor. Has anyone ever compiled gem5 on a
> non-x86 based system? I have access to gcc compilers for x86, arm and mips
> that run on ARM, but I am not sure what needs to be done to compile gem5 on
> ARM.
>
>
>
> Nick Beser
> ___
> 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


[gem5-users] Re: How to Get Old Version GEM5

2024-02-24 Thread Hoa Nguyen via gem5-users
Hi,

You can find the precise tag name of every gem5 version here,

https://github.com/gem5/gem5/tags


Regards,
Hoa Nguyen

On Sat, Feb 24, 2024, 18:51 hu miao via gem5-users 
wrote:

> HI:
>  I need to use old version gem5 because I need to use
> configs/example/fs.py. However,after git clone https://github/gem5/gem5, I
> used the "git branch" command to check the version information and it
> showed "stable". I tried "git checkout v.21.2" but it failed. I want to
> know how I can get an old version of gem5. Can you help me? I would really
> appreciate it.
> humiao
> ___
> 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


[gem5-users] Re: X86 full system simulation---about m5term

2024-01-12 Thread Hoa Nguyen via gem5-users
Hi,

The problem seems to be that the gem5 simulation and the m5term call are
run on different virtual machines.

If you're using docker then please make sure that you're calling m5term on
the same docker container as the one running gem5 simulation.

If that doesn't work then you can check the guest output from
m5out/board.platform.termnial file (or a file with the name similar to
that) .

Regards,
Hoa Nguyen

On Thu, Jan 11, 2024, 23:35 hu miao via gem5-users 
wrote:

> Hello everyone,
>
> I am new to gem5 and I have been trying to use gem5 for X86 dual-core full
> system simulation, following the steps in this tutorial:
> https://www.gem5.org/documentation/gem5-stdlib/x86-full-system-tutorial.
> However, I encountered some issues during the process. I am unable to use
> m5term as described in the tutorial. I executed ./build/X86/gem5.opt
> configs/humiao/double.py as instructed but when I open a new terminal and
> run ./m5term localhost 3456, nothing happens. I would greatly appreciate
> it if someone could help me with this.
>
> Thank you very much.
>
> I use docker images to build and run my gem5(version 20.04). My ubuntu is
> 22.04. Here is the logs.
>
> Terminal 1===
>
> root@f7f0fce50861:/# gem5/gem5/build/X86/gem5.opt
> gem5/gem5/configs/humiao2/double.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 Jan 8 2024 08:58:24 gem5 started Jan 12 2024
> 00:53:21 gem5 executing on f7f0fce50861, pid 16 command line:
> gem5/gem5/build/X86/gem5.opt gem5/gem5/configs/humiao2/double.py warn: An
> ISA for the SimpleSwitchableProcessor 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. warn: The `get_runtime_isa` function is deprecated. Please
> migrate away from using this function. warn: The `get_runtime_isa` function
> is deprecated. Please migrate away from using this function. 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 1
> ticks per second build/X86/mem/dram_interface.cc:690: warn: DRAM device
> capacity (8192 Mbytes) does not match the address range assigned (2048
> Mbytes) build/X86/sim/kernel_workload.cc:46: info: kernel located at:
> /root/.cache/gem5/x86-linux-kernel-5.4.49 build/X86/base/statistics.hh:280:
> warn: One of the stats is a legacy stat. Legacy stat is a stat that does
> not belong to any statistics::Group. Legacy stat is deprecated. 0:
> board.pc.south_bridge.cmos.rtc: Real-time clock set to Sun Jan 1 00:00:00
> 2012 board.pc.com_1.device: Listening for connections on port 3456
> build/X86/dev/intel_8254_timer.cc:128: warn: Reading current count from
> inactive timer. 0: board.remote_gdb: listening for remote gdb on port 7000
> build/X86/sim/simulate.cc:192: info: Entering event queue @ 0. Starting
> simulation... build/X86/mem/ruby/system/Sequencer.cc:613: warn: Replacement
> policy updates recently became the responsibility of SLICC state machines.
> Make sure to setMRU() near callbacks in .sm files!
> build/X86/arch/x86/cpuid.cc:180: warn: x86 cpuid family 0x:
> unimplemented function 6 build/X86/arch/x86/cpuid.cc:180: warn: x86 cpuid
> family 0x: unimplemented function 6 build/X86/arch/x86/cpuid.cc:180:
> warn: x86 cpuid family 0x: unimplemented function 6
> build/X86/arch/x86/generated/exec-ns.cc.inc:27: warn: instruction 'fninit'
> unimplemented build/X86/dev/x86/pc.cc:117: warn: Don't know what interrupt
> to clear for console.
>
> Terminal 2==
>
> root@070f5b3cf62e:/# cd gem5/gem5/util/term 
> root@070f5b3cf62e:/gem5/gem5/util/term#
> ./m5term localhost 3456 root@070f5b3cf62e:/gem5/gem5/util/term# ./m5term
> localhost 3456
>
> ___
> 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


[gem5-users] Re: Help with extending RISCV vector ISA

2024-01-01 Thread Hoa Nguyen via gem5-users
Hi,

These are a few pointers on how to start modifying the RVV implementation.

- The previous gem5 bootcamp has details on how to implement instructions
in gem5, and examples of implementing RISCV P extension,
https://youtube.com/watch?v=Z5B02jkNpck=PL_hVbFs_loVSaSDPr1RJXP5RRFWjBMqq3=11=iAQB
.

- The .isa files you're looking at contain the templates for generating the
actual instruction. The instruction will be compiled to a couple of .cc and
.hh files before being compiled and linked to the gem5.opt executable. In
the case of riscv, you can find those generated files in
build/RISCV/arch/riscv/generated/.

- Typically, implementing an instruction will require implementing the
decoder method, and execute method; and for memory instructions, you'll
need to implement initiateAcc and completeAcc methods.

- There are a few RVV memory instructions that are more complicated than
other instructions (e.g. those scatter store/ gather load instructions).
Those instructions act as a macro instructions spawning more micro
instructions to perform loads/stores, which is necessary as the elements
can be in different cache blocks. If you'd like to start with a simple
implementation, I think you can start from by mimicking the implementation
of simpler instructions in gem5's rvv implementation, like vadd_vv.

Regards,
Hoa Nguyen

On Sat, Dec 23, 2023, 10:05 zahra butool via gem5-users 
wrote:

> Hi everyone,
>
>
> For my project, I need to add a custom instruction to RISCV in Gem5 that
> loads 2 sets of 128 elements (32-bit float) from the memory, computes the
> dot product, and stores them back to the memory. A starting point is using
> the RISCV vector instructions, but I want to reduce the instruction count
> and have only one instruction doing all these operations. So I was checking
> the vector .isa (decoder, memory, arith) files to get an idea of how to
> merge vle32, vadd_vv, vredsum.vs, and vse32 into a single instruction, but
> it looks a bit complicated to me and still couldn't figure out how I should
> modify it.
>
> I would appreciate it if anyone could give me some pointers on starting
> this or which files I need to check and modify.
>
> Thank you!
> ___
> 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


[gem5-users] Re: Login fails once the system boots -- full system simulation (arm)

2023-12-23 Thread Hoa Nguyen via gem5-users
Hi Saras,

This is the methodology we used for most gem5-resources disk images
regarding automating the login process right after booting Ubuntu.

We have a systemd service file that will log you in as a root user.
https://github.com/gem5/gem5-resources/blob/stable/src/arm-ubuntu/disk-image/shared/serial-getty%40.service

You'll need to copy this file to `/lib/systemd/system/` folder. After that,
you can run the gem5 simulation again. The expectation is that the guest
system will automatically login as a root user after booting.

More details on generating arm disk images can be found here,
https://github.com/gem5/gem5-resources/tree/stable/src/arm-ubuntu.

Regards,
Hoa Nguyen

On Sat, Dec 23, 2023, 17:55 saras nanda via gem5-users 
wrote:

> i am doing a full system simulation for arm arch , Fs.py and I am unable
> to login once the system boots ,I don't know what Is the problem .
>
> These are the steps I followed while creating the image on qemu
>
> Install the dependecies
>
> sudo apt install qemu-system-arm qemu-system-mips qemu-efi-aarch64
> qemu-kvm qemu-efi cloud-image-utils
>
>
> Prepare the EFI partition
>
> dd if=/dev/zero of=flash0.img bs=1M count=64
>
> dd if=/usr/share/qemu-efi/QEMU_EFI.fd of=flash0.img conv=notrunc
>
> dd if=/dev/zero of=flash1.img bs=1M count=64
>
> credentials for the user
>
> cat >user-data <
> #cloud-config
>
> password: thepassword
>
> chpasswd: { expire: False }
>
> ssh_pwauth: True
>
> EOF
>
> cloud-localds user-data.img user-data
>
> then i booted this image on gem5
> the below is the log from m5 terminal
> please let me know if i can rectify this login methodology  so that i can
> check point the system
>  m5 terminal: Terminal 0 
> [0.00] Booting Linux on physical CPU 0x00 [0x410fd070]
> [0.00] Linux version 4.18.0+ (arm-employee@arm-computer) (gcc
> version 7.4.0 (Ubuntu/Linaro 7.4.0-1ubuntu1~18.04.1)) #1 SMP PREEMPT Wed
> Nov 6 14:10:00 GMT 2019
> [0.00] Machine model: V2P-CA15
> [0.00] Memory limited to 512MB
> [0.00] cma: Reserved 16 MiB at 0x9f00
> [0.00] On node 0 totalpages: 131072
> [0.00]   DMA32 zone: 2048 pages used for memmap
> [0.00]   DMA32 zone: 0 pages reserved
> [0.00]   DMA32 zone: 131072 pages, LIFO batch:31
> [0.00] random: get_random_bytes called from
> start_kernel+0xa8/0x3e8 with crng_init=0
> [0.00] percpu: Embedded 23 pages/cpu @(ptrval) s53976
> r8192 d32040 u94208
> [0.00] pcpu-alloc: s53976 r8192 d32040 u94208 alloc=23*4096
> [0.00] pcpu-alloc: [0] 0
> [0.00] Detected PIPT I-cache on CPU0
> [0.00] CPU features: enabling workaround for ARM erratum 832075
> [0.00] CPU features: enabling workaround for ARM erratum 834220
> [0.00] CPU features: enabling workaround for EL2 vector hardening
> [0.00] CPU features: detected: Kernel page table isolation (KPTI)
> [0.00] Built 1 zonelists, mobility grouping on.  Total pages:
> 129024
> [0.00] Kernel command line: earlyprintk=pl011,0x1c09
> console=ttyAMA0 lpj=19988480 norandmaps rw loglevel=8 mem=512MB
> root=/dev/sda1
> [0.00] Dentry cache hash table entries: 65536 (order: 7, 524288
> bytes)
> [0.00] Inode-cache hash table entries: 32768 (order: 6, 262144
> bytes)
> [0.00] Memory: 480148K/524288K available (6910K kernel code, 452K
> rwdata, 2312K rodata, 448K init, 217K bss, 27756K reserved, 16384K
> cma-reserved)
> [0.00] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
> [0.00] Preemptible hierarchical RCU implementation.
> [0.00] RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=1.
> [0.00] Tasks RCU enabled.
> [0.00] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
> [0.00] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
> [0.00] GIC: GICv2 detected, but range too small and
> irqchip.gicv2_force_probe not set
> [0.00] clk_gem5_energy_ctrl: No cpu-map in DT! Falling back to old
> detection method!
> [0.00] clk_gem5_energy_ctrl: No clusters in DT! Falling back to
> using CPU topology!
> [0.01] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every
> 89478484971ns
> [0.82] arch_timer: Unable to find a suitable frame in timer @
> 0x2a81
> [0.85] Failed to initialize '/timer@2a81': -22
> [0.000136] Console: colour dummy device 80x25
> [0.000140] Calibrating delay loop (skipped) preset value.. 9994.24
> BogoMIPS (lpj=19988480)
> [0.000145] pid_max: default: 32768 minimum: 301
> [0.000179] Mount-cache hash table entries: 1024 (order: 1, 8192 bytes)
> [0.000183] Mountpoint-cache hash table entries: 1024 (order: 1, 8192
> bytes)
> [0.024069] ASID allocator initialised with 128 entries
> [0.032070] Hierarchical SRCU implementation.
> [0.048080] smp: Bringing up secondary CPUs ...
> [0.048084] smp: Brought up 1 

[gem5-users] Re: How to use Gem5?

2023-12-21 Thread Hoa Nguyen via gem5-users
Hi Anamika,

Hey there. The se.py script has been depreciated in favor of the new gem5
standard library. You can find examples of using the standard library,
https://github.com/gem5/gem5/tree/stable/configs/example/gem5_library.

The internal of the standard library (how components are constructed and
connected) are here,
https://github.com/gem5/gem5/tree/stable/src/python/gem5.

Regarding developing a simulation component (or a SimObject), which is a
media decoder accelerator in your case, you can start from learning gem5
here,
https://www.gem5.org/documentation/learning_gem5/part2/helloobject/, or the
tutorial from 2022 gem5 bootcamp, https://youtube.com/watch?v=OcXA1D4b1RA.

At a high level, every SimObject has a Python class that is binded to a C++
class. The Python interface provides a way for you to input the parameters
to your component and to connect SimObjects. You'd need to implement the
C++ part, which performs the functionalities of the SimObject, like
decoding a stream of bits.

Regards,
Hoa Nguyen

On Thu, Dec 21, 2023, 09:36 Anamika via gem5-users 
wrote:

> Gem5 is primarily a computer architecture simulator. Can I use it to
> simulate it for specific application wiz. encode a 4k video file (HEVC) as
> input data to a LDPC encoder, followed by MQAM modulation for energy
> consumption estimation? If Yes, where to start? How to create the
> SimObjects?
>
> # Set up video encoding components class HEVCEncoder(SimObject):
> pass
> class LDPC(SimObject):
> pass
> class MQAMModulator(SimObject):
> pass
>
>   Thank You, Regards
> Anamika
> ___
> 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


[gem5-users] Re: Fwd: Unable to run more than 8 core RISCV FS simulation

2023-11-17 Thread Hoa Nguyen via gem5-users
Ah, also, if modifying MAX_HARTS doesn't work then you can follow the
following PRs to use a newer bootloader, which works with 16 cores.
- Building the bootloader https://github.com/gem5/gem5-resources/pull/13
- Changing gem5 to use the new bootloader
https://github.com/gem5/gem5/pull/390#issuecomment-1750191706.

Regards,
Hoa Nguyen

On Fri, Nov 17, 2023 at 11:22 PM Hoa Nguyen  wrote:

> Hi Nitish,
>
> The number of CPUs might also be limited by the bootloader as well. You
> might want to recompile the bootloader using the following documentation
> https://github.com/gem5/gem5-resources/tree/stable/src/riscv-fs#bootloader-bbl
> .
>
> You might want to modify this parameter in the proxy kernel source code,
> https://github.com/riscv-software-src/riscv-pk/blob/710c23a5bbeecf171ac86d6e39d275af8f176354/machine/mtrap.h#L9,
> which limits the number of hardware threads.
> Note that MAX_HARTS must follow this constraint,
> https://github.com/riscv-software-src/riscv-pk/blob/710c23a5bbeecf171ac86d6e39d275af8f176354/machine/mtrap.c#L104
> .
>
> Regards,
> Hoa Nguyen
>
> On Fri, Nov 17, 2023, 04:24 Nitish Arya via gem5-users <
> gem5-users@gem5.org> wrote:
>
>>
>> Hello,
>>
>> I am trying to run a 16 core RISCV full system simulation with the
>> following command:
>>
>> /build/RISCV/gem5.opt configs/example/riscv/fs_linux.py --kernel
>> riscv-bootloader-vmlinux-5.10 --disk-image riscv_disk.img --caches
>> --mem-size=256MB --mem-type=DDR4_2400_8x8 --cpu-type=AtomicSimpleCPU -n 16
>>
>> The kernel and the bootloader are from the gem5-resources for Ubuntu
>> riscv.
>>
>> However the simulation hangs after the line Starting simulation...
>>
>> In another setup, I chose to build the kernel with NR_CPUS=64 and use
>> that. It successfully boots and finishes the script but with the below
>> error -
>>
>> In the system.platform.terminal I can see the kernel fails to bring up
>> more than 8 CPUs:
>>
>> [0.001142] smp: Bringing up secondary CPUs ...
>> [1.024519] CPU8: failed to come online
>> [2.049026] CPU9: failed to come online
>> [3.073533] CPU10: failed to come online
>> [4.098040] CPU11: failed to come online
>> [5.122547] CPU12: failed to come online
>> [6.147054] CPU13: failed to come online
>> [7.171561] CPU14: failed to come online
>> [8.196068] CPU15: failed to come online
>> [8.196086] smp: Brought up 1 node, 8 CPUs
>>
>>
>> I believe the issue is with the PLIC implementation of RISCV.
>>
>> Please let me know your thoughts on this.
>>
>> Thanks
>>
>> Nitish
>>
>> ___
>> 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


[gem5-users] Re: Fwd: Unable to run more than 8 core RISCV FS simulation

2023-11-17 Thread Hoa Nguyen via gem5-users
Hi Nitish,

The number of CPUs might also be limited by the bootloader as well. You
might want to recompile the bootloader using the following documentation
https://github.com/gem5/gem5-resources/tree/stable/src/riscv-fs#bootloader-bbl
.

You might want to modify this parameter in the proxy kernel source code,
https://github.com/riscv-software-src/riscv-pk/blob/710c23a5bbeecf171ac86d6e39d275af8f176354/machine/mtrap.h#L9,
which limits the number of hardware threads.
Note that MAX_HARTS must follow this constraint,
https://github.com/riscv-software-src/riscv-pk/blob/710c23a5bbeecf171ac86d6e39d275af8f176354/machine/mtrap.c#L104
.

Regards,
Hoa Nguyen

On Fri, Nov 17, 2023, 04:24 Nitish Arya via gem5-users 
wrote:

>
> Hello,
>
> I am trying to run a 16 core RISCV full system simulation with the
> following command:
>
> /build/RISCV/gem5.opt configs/example/riscv/fs_linux.py --kernel
> riscv-bootloader-vmlinux-5.10 --disk-image riscv_disk.img --caches
> --mem-size=256MB --mem-type=DDR4_2400_8x8 --cpu-type=AtomicSimpleCPU -n 16
>
> The kernel and the bootloader are from the gem5-resources for Ubuntu riscv.
>
> However the simulation hangs after the line Starting simulation...
>
> In another setup, I chose to build the kernel with NR_CPUS=64 and use
> that. It successfully boots and finishes the script but with the below
> error -
>
> In the system.platform.terminal I can see the kernel fails to bring up
> more than 8 CPUs:
>
> [0.001142] smp: Bringing up secondary CPUs ...
> [1.024519] CPU8: failed to come online
> [2.049026] CPU9: failed to come online
> [3.073533] CPU10: failed to come online
> [4.098040] CPU11: failed to come online
> [5.122547] CPU12: failed to come online
> [6.147054] CPU13: failed to come online
> [7.171561] CPU14: failed to come online
> [8.196068] CPU15: failed to come online
> [8.196086] smp: Brought up 1 node, 8 CPUs
>
>
> I believe the issue is with the PLIC implementation of RISCV.
>
> Please let me know your thoughts on this.
>
> Thanks
>
> Nitish
>
> ___
> 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


[gem5-users] Re: Build Error 134

2023-08-06 Thread Hoa Nguyen via gem5-users
Hi Kevin,

The error is quite odd, and it does look like it was hardware resource
related.

Can you try building gem5 from the official docker images here? The images
have newer versions of gcc and scons I believe. If the problem persists
then it's probably a bug in gem5.

https://www.gem5.org/documentation/general_docs/building

Regards,
Hoa Nguyen

On Sun, Aug 6, 2023, 03:26 Eliot Moss via gem5-users 
wrote:

> On 8/6/2023 1:50 AM, Kaiwen Xue via gem5-users wrote:
> > On Sat, Aug 5, 2023 at 5:13 AM Eliot Moss via gem5-users
> >  wrote:
> >>
> >> On 8/5/2023 2:16 AM, Kaiwen Xue via gem5-users wrote:
> >>> Hi,
> >>>
> >>> I'm new to gem5 and trying to follow the official tutorial [1] to
> >>> build an x86 opt target from commit hash 48b4788.
> >>>
> >>> The compilation failed with Error 134. Outputs didn't seem to be
> >>> meaningful - they are just normal building messages and ended with
> >>> Error 134. I shall attach a detailed build output at the end of this
> >>> email.
> >>>
> >>> The build command I used was `python3 `which scons`
> >>> build/X86/gem5.opt`. My python3 version is 3.8.10. My scons version is
> >>> 3.1.2. I've checked all the other dependencies and they seem to be
> >>> fine. My machine is a physical server with ubuntu 20.04 running Linux
> >>> 5.15.
> >>>
> >>> In addition, every time I remove the built directory and rebuilt, the
> >>> file names before the Error 134 message are different. e.g., the
> >>> attached output has "scons: *** [build/X86/cpu/o3/O3Checker.py.cc]
> >>> Error 134", but the file name would different across different builds.
> >>>
> >>> Is there a way to narrow down this issue?
> >>>
> >>> Thanks!
> >>> Kevin
> >>
> >> My guess is that you ran out of memory - some of the compilations need
> quite a
> >> lot!  Since scons typically builds in parallel, you get some variation
> in
> >> which jobs are running when.  You *might* try compiling just one thing
> at a
> >> time (-j1).  No need to rm everything - you can continue where it
> aborted.
> >> But still, if even one job demands too much memory, you will fail again.
> >
> > Hi Eliot,
> >
> > Thanks for the response! However, I have more than abundant resources
> > on my server. It's not a virtual machine. It has more than 200GB of
> > free disk space and 100GB of free memory. I can't continue where it
> > aborted as well, because the error seemed to start repeating every
> > time and more compilation wouldn't make more progress.
> >
> > I'm suspecting that might be a compiler bug though. The parser
> > reported shift/reduce conflict:
> > Generating LALR tables
> > WARNING: 4 shift/reduce conflicts
> > WARNING: 1 reduce/reduce conflict
> > WARNING: reduce/reduce conflict in state 98 resolved using rule
> > (params -> empty)
> > WARNING: rejected rule (types -> empty) in state 98
> >
> > which might lead to the following return type warnings in the cache
> > coherence .sm file:
> > MESI_Two_Level-L1cache.sm:246: Warning: Non-void return ignored,
> > return type is 'bool'
> > MESI_Two_Level-L1cache.sm:248: Warning: Non-void return ignored,
> > return type is 'bool'
> > MESI_Two_Level-L1cache.sm:887: Warning: Non-void return ignored,
> > return type is 'Tick'
> > MESI_Two_Level-L1cache.sm:999: Warning: Non-void return ignored,
> > return type is 'Tick'
> > MESI_Two_Level-L1cache.sm:740: Warning: Unused action:
> > e_sendAckToRequestor, send invalidate ack to requestor (could be L2 or
> > L1)
> > MESI_Two_Level-L2cache.sm:235: Warning: Non-void return ignored,
> > return type is 'bool'
> > MESI_Two_Level-L2cache.sm:237: Warning: Non-void return ignored,
> > return type is 'bool'
> > MESI_Two_Level-L2cache.sm:594: Warning: Unused action:
> > fw_sendFwdInvToSharers, invalidate sharers for request
> > MESI_Two_Level-L2cache.sm:764: Warning: Unused action:
> > kk_removeRequestSharer, Remove L1 Request sharer from list
> > MESI_Two_Level-L2cache.sm:780: Warning: Unused action:
> > mm_markExclusive, set the exclusive owner
> > MESI_Two_Level-dir.sm:160: Warning: Non-void return ignored, return
> > type is 'bool'
> > MESI_Two_Level-dir.sm:294: Warning: Non-void return ignored, return
> > type is 'Tick'
> > MESI_Two_Level-dir.sm:298: Warning: Non-void return ignored, return
> > type is 'Tick'
> > MESI_Two_Level-dir.sm:302: Warning: Non-void return ignored, return
> > type is 'Tick'
> > MESI_Two_Level-dir.sm:348: Warning: Non-void return ignored, return
> > type is 'Tick'
> > MESI_Two_Level-dir.sm:351: Warning: Unused action:
> > p_popIncomingDMARequestQueue, Pop incoming DMA queue
> > MESI_Two_Level-dma.sm:189: Warning: Non-void return ignored, return
> > type is 'Tick'
> > MESI_Two_Level-dma.sm:193: Warning: Non-void return ignored, return
> > type is 'Tick'
> >
> > Any idea why those happened? Any response or hints are appreciated!
>
> That looks to me like something coming from ruby, and that parser may be
> quite distinct from the one in g++.  But I don't use ruby so I don't
> really know ...  Sorry - EM
> 

[gem5-users] Re: Unable to boot Linux in FS mode

2023-07-29 Thread Hoa Nguyen via gem5-users
Hi all,

As mentioned above, the problem is likely due to using KVM then switch to
another gem5 core, which doesn't support all ISA extensions that the host
supports.

I wanted to add that, if updating the gem5 version doesn't solve the
problem, you can use AtomicSimpleCPU for fast-forwarding instead of KVM.


Regards,
Hoa Nguyen

On Sat, Jul 29, 2023, 05:21 Vincent Abraham via gem5-users <
gem5-users@gem5.org> wrote:

> Hi Zhenwen,
> If you're trying to boot an x86 or risc-v image, you can find scripts for
> it in gem5-resources:
> https://gem5.googlesource.com/public/gem5-resources/+/refs/tags/v22.1.0.0/src/(x86-ubuntu,
> riscv-ubuntu). I was also facing similar issues and this helped me.
>
>
> On Fri, Jul 28, 2023 at 6:57 PM Jason Lowe-Power via gem5-users <
> gem5-users@gem5.org> wrote:
>
>> Hi Zhenwen,
>>
>> The actual error is one line higher in the kernel output:
>> `/lib/x86_64-linux-gnu/libc.so.6: CPU ISA level is lower than required`
>>
>> I believe we fixed the incompatibility of gem5-x86 with newer kernels in
>> gem5-v22.1, but it is definitely fixed in gem5-v23.0. I suggest either
>> updating gem5 or downgrading your kernel and Ubuntu image to something
>> older.
>>
>> See https://gem5-review.googlesource.com/c/public/gem5/+/64831 and
>> https://gem5-review.googlesource.com/c/public/gem5/+/65492
>>
>> Cheers,
>> Jason
>>
>> On Thu, Jul 27, 2023 at 9:40 PM Zhewen Hu via gem5-users <
>> gem5-users@gem5.org> wrote:
>>
>>> Hello,
>>>
>>> My OS is Ubuntu 22 and I am using gem5 v22.0.0.1, when I boot a Ubuntu
>>> 22 image I got error:
>>> *Kernel panic - not syncing: Attempted to kill init! exitcode=0x7f00*
>>>
>>> Attached are the logs, could anyone help to find the problem?
>>>
>>> Thanks in advance.
>>>
>>> Best regards,
>>> Zhenwen Hu
>>> ___
>>> 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
>>
> ___
> 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


[gem5-users] Re: Meltdown simulation & analysis in FS mode using fs.py

2023-07-20 Thread Hoa Nguyen via gem5-users
Hi all,

It appears that you're using an older version of gem5 that does not have
the palignr instructions implemented. The current stable branch has those
instructions implemented.

I'm not sure if this is a problem in your setup or related to this problem,
but I wanted to add that I was not able to boot Ubuntu server 22.04 with
the previous version of gem5 (v22 I think). I'm able to boot the OS using
gem5 v23.

Regards,
Hoa Nguyen

On Thu, Jul 20, 2023, 09:33 Jason Lowe-Power via gem5-users <
gem5-users@gem5.org> wrote:

> Hi Robin,
>
> This may be helpful:
> http://www.lowepower.com/jason/visualizing-spectre-with-gem5.html
>
> For `warn: instruction 'palignr_Vdq_Wdq_Ib' unimplemented`, this is an AVX
> (or SSE) instruction that gem5 doesn't implement.
>
> Overall, I'm not sure if gem5 is vulnerable to meltdown. I think that the
> instruction is squashed when the TLB detects a page table fault and it does
> not proceed to memory. You can check the O3 code to be sure, though.
>
> Cheers,
> Jason
>
> On Thu, Jul 20, 2023 at 2:52 AM reverent.green--- via gem5-users <
> gem5-users@gem5.org> wrote:
>
>> Hello everyone,
>>
>> I am currently working on a meltdown simulation & analysis using the
>> fs.py script. Using se.py is not possible, because there is no kernel space
>> mapping.
>> As for the meltdown test code, I'm using this repo:
>> https://github.com/IAIK/meltdown
>>
>> After playing a bit with the multiple parameter options, my current
>> command line call is:
>> "./build/X86/gem5.opt configs/example/fs.py --cpu-type=X86O3CPU
>> --bp-type=LTAGE --caches --l2cache -n 8 --kernel=fs_stuff/vmlinux-5.4.49
>> --disk-image=fs_stuff/x86-ubuntu.img --script=fs_stuff/test"
>>
>> As you can see here, I am using the X86O3CPU and the branch predictor
>> LTAGE (mainly because spectre only works using LTAGE). In theory, this
>> should work and the test binary is executed in the simulation, but
>> unfortunately the simulation either stops right before the leak or during
>> the leakage (not at an exact point everytime, sometimes 1 char, sometimes 4
>> chars). The simulation does not abort by itself but looks like it's stuck
>> somewhere. I waited for over one hour, but there was no extra char leaked.
>> First I thought something is missing to even leak anything here, but
>> after some tries do in fact leak some parts of the secret before stopping,
>> there should be another problem.
>>
>> When the meltdown code is executed, the console log is spammed with "warn:
>> instruction 'palignr_Vdq_Wdq_Ib' unimplemented"". At first I thought
>> this could be the missing piece, but even with these warnings, some parts
>> of the secret were leaked in some tries.
>> My first goal is to get the complete leak in the result including a
>> normal exit of the gem5 simulation.
>>
>> Does anyone here have an idea or experience at this topic? It would be
>> very helpful to discuss possible problems and solutions.
>>
>> Thank you very much in advance.
>>
>> Kind regards
>> Robin
>> ___
>> 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
>
___
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org


[gem5-users] Re: Arm-ubuntu-run script

2023-05-06 Thread Hoa Nguyen via gem5-users
Hi,

This patch might help.

https://gem5-review.googlesource.com/c/public/gem5/+/70017

Regards,
Hoa Nguyen

On Sat, May 6, 2023, 00:19 zhangcongwu via gem5-users 
wrote:

> Dear gem5 community,
>
> I am running `configs/example/gem5_library/arm-ubuntu-run.py` to simulate
> a multi-core architecture. I could successfully boot up the system, however
> only one CPU was brought up. Does anyone know what the problem is? Are
> there some parameters to configure this?
>
> By the way, the config.dot.pdf shows 2 cores in the simulated system.
>
> Here are some related outputs from the terminal:
>
>
>
>
> Best regards,
> Congwu___
> 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


[gem5-users] Re: gem5 SVE vectoe length

2023-04-20 Thread Hoa Nguyen via gem5-users
Hi Zhang,

I wanted to add that you can check the Linux kernel booting log to see
whether the kernel recognized the maximum vector length of SVE correctly.
Note that even if the SVE vlen is correctly recognized by the kernel, it
doesn't mean the whole vlen is available to userspace. Though, I think it's
worth checking.
During the boot process, the kernel will output something like this,

[0.000384] CPU features: detected: Privileged Access Never
[0.000385] CPU features: detected: LSE atomic instructions
[0.000387] CPU features: detected: User Access Override
[0.000389] CPU features: detected: 32-bit EL0 Support
[0.000390] CPU features: detected: Scalable Vector Extension
[0.000392] CPU features: detected: Data cache clean to the PoU not
required for I/D coherence
[0.000394] CPU features: detected: Generic authentication (architected
algorithm)
[0.000396] CPU features: detected: 32-bit EL1 Support
[0.001579] SVE: maximum available vector length 16 bytes per vector
[0.001580] SVE: default vector length 16 bytes per vector
[0.002819] CPU: All CPU(s) started at EL2

The SVE vector length in this case is 16 bytes, or 512 bits.

> On figuring out the content of ZCR_EL during the guest binary runtime.

I think Giacomo's suggestion is a proper way to do it. However, if it's not
working for you, then there are a few things that you can do in the
meantime,
1. You can run gem5 and make a breakpoint somewhere when the guest binary
is called.
2. You also can run gem5 up until the binary is called in the guest, then
take a checkpoint and inspect the checkpoint file. The checkpoint file
should contain the value of the registers, including ZCR_EL1, ZCR_EL2, and
ZCR_EL3. The ZCR_EL3 should contain the SVE vlen at all exception levels.

> The prctl system call, I read the manual about the function. And I use
the system call in my test code. I use the -march=armv8-a+sve option, and I
also try -msve-vector-bits=1024 to compile the program. I can get a binary.
But when I run it in the gem5, it will produce a output like:
/lib/aarch64-linux-gnu/glibc.so.6:version 'GLIBC_2.34' not found (required
by ./sve).  The sve is the binary I compiled . Then I check the glibc
version in my simulator and host, it's 2.27. I try to install it by the
source code in the image, but I can not operate it correctly.

I assume that you are doing cross-compilation and transferring the compiled
binary from the host to the guest. You can add the "-static" flag to the
compilation command so that all necessary libraries are statically linked
to the output binary.
I think flag `-march=armv8-a+sve` alone should be sufficient for the
compiler to generate SVE instructions.

Regards,
Hoa Nguyen

On Thu, Apr 20, 2023 at 9:22 AM 等价无穷小 via gem5-users 
wrote:

> Hi Giacomo,
> Thanks for your birlliant reply, giving me some insights!  But there are
> some problems.
>
>
>1. For the ZCR_EL register, I try to read or write the value from the
>register. I try to use the inline assembly, I use msr instruction. Then use
>the g++ -march=armv8-a+sve option to compile the test program, the result
>is there is no register named ZCR_EL. Maybe I do some wrong operation, but
>I'm not sure.
>2. The /proc/sys/abi/sve_default_vector_length file. I cannot find
>this file in the image  I use. And I try to get some advice by google. It
>seemed I did not get the proper answer.
>3. The prctl system call, I read the manual about the function. And I
>use the system call in my test code. I use the -march=armv8-a+sve option,
>and I also try -msve-vector-bits=1024 to compile the program. I can get a
>binary. But when I run it in the gem5, it will produce a output like: 
> */lib/aarch64-linux-gnu/glibc.so.6:version
>'GLIBC_2.34' not found (required by ./sve).*  The sve is the binary I
>compiled . Then I check the glibc version in my simulator and host, it's
>2.27. I try to install it by the source code in the image, but I can not
>operate it correctly.
>
>
> I think the methods you provide are useful and insightful. Maybe I do not
> operate correctly.  Is there some your suggestions?
>
>
> Best regards,
> Zhang Meng
> --
>
> 等价无穷小
> zhang...@foxmail.com
>
> 
>
>
>
>
> Original Email
>
> Sender:"Giacomo Travaglini via gem5-users"< gem5-users@gem5.org >;
>
> Sent Time:2023/4/20 17:30
>
> To:"The gem5 Users mailing list"< gem5-users@gem5.org >;
>
> Cc recipient:"等价无穷小"< zhang...@foxmail.com >;"Giacomo Travaglini"<
> giacomo.travagl...@arm.com >;
>
> Subject:[gem5-users] Re: gem5 SVE vectoe length
>
> Hi Zhang,
>
>
> That parameter 

[gem5-users] Re: garnet - garnet synthetic traffic - Mesh_XY routing algorithm

2023-03-09 Thread Hoa Nguyen via gem5-users
Hi Karim,

I'm not very familiar with the Mesh_XY topology, but here is my attempt to
explain this.

I think the layout of the topology looks like this,

2 (0,1) <-> 3 (1,1)
^   ^
|   |
v   v
0 (0,0) <-> 1 (1,0)

It's straightforward to send a packet from one node to its adjacent node,
such as sending a package from 2 to 3 consists of having the node 2 sending
a local packet to its West side.

When the source and the destination are more than 1 hop away, it involves
sending a packet to immediate node. It showed in your example's line 5,
there's a packet that is sent from 1 (1,0) to 2 (0,1).
It can't be done in one hop. So, at first, the packet was sent from the
local of node 1 to its West side. In the next step, node 0 receives the
packet from its East side, and routes that packet to its North side. That
explains the example's line 9.

Hope this helps!

Regards,
Hoa Nguyen

On Wed, Mar 8, 2023 at 11:25 PM Karim Soliman via gem5-users <
gem5-users@gem5.org> wrote:

> Hi, for my research I'm trying to implement a custom routing algorithm in
> gem5/garnet.
> Someone from the mailing list recommended that I should go for the Mexh_XY
> routing algorithm to understand how it's working.
>
> The mesh topology i'm using contains only 4 cpus and 4 dirs and number of
> mesh rows is 2, and the routing-algorithm option is set to 1
>
> here is the full simulation command i'm using
>
> *sudo build/NULL/gem5.debug --debug-flags=RubyNetwork
> configs/example/garnet_synth_traffic.py --num-cpus=4 --num-dirs=4
> --mesh-rows=2 --network=garnet --routing-algorithm=1 --topology=Mesh_XY
> --synthetic=uniform_random --injectionrate=0.1*
>
> In the file mem/ruby/garnet/RoutingUnit.cc --> the function
> outportComputeXY
>
>  int RoutingUnit::outportComputeXY(RouteInfo route, int inport,
> PortDirection inport_dirn)
>
> I'm trying to get some output during the simulation to understand the
> routing table at each router and how the lookup table works.
>
> The following is my code. I'm using a file to get the data during the
> simulation
> So, the file will print the following:
>
> [RouterId] [DestinationRouter] [hops_x] [hops_y] [InportDirn] -->
> [outport_dirn] [router_x, router_y] [des_x, dest_y].
> and output the lookup table attached to the router.
>
> std::ofstream myfile;
> // open the file in appending mode
> myfile.open ("routing_output.txt", std::ios_base::app);
> myfile << m_router->get_id() << "\t" <<  route.dest_router << " |
> hops_x: " << x_hops << " | hops_y: " << y_hops << "\t";
> myfile << inport_dirn << " --> " << outport_dirn << "\t" <<
> m_outports_dirn2idx[outport_dirn] << "\t" << my_x << ", " << my_y;
> myfile << " --> "<< dest_x << ", " << dest_y << std::endl;
> // iterate over the outports table map and write the data to the file.
> std::map, int>::iterator it;
> for(it = m_outports_dirn2idx.begin(); it != m_outports_dirn2idx.end();
> it++)
> {
> myfile << it->first << "\t" << it->second << std::endl;
> }
> myfile.close();
>
> Here are some samples of my output file and also the full txt file is
> attached.
>
> [image: image.png]
>
> I don't really know how the packets are routed and also how the lookup
> table works. also i can't imagine the connections between the nodes i tried
> to draw a flow chart for each router
> but some of the output data doesn't match the drawing -- like a packet
> from router #2 will go east !!
> [image: image.png]
> Can anyone explain to me? or if there is any documentation I can check to
> understand this.
>
> Best Regards,
> *Eng. Karim Soliman*
> Teaching Assistant
> Computer Engineering Department
> Pharos University in Alexandria (P.U.A)
> ___
> 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


[gem5-users] Re: Compiling for gem5

2023-03-07 Thread Hoa Nguyen via gem5-users
Hi Alex,

There used to be a beginner friendly gem5 + ARM SVE tutorial from HiPEAC
2021 that could be easily found on the internet. I wasn't able to find that
this time, however.

You can start with the resources here
https://github.com/arm-university/arm-gem5-rsk

Without modifying anything, the system would have the VL of 128 bits.
To alternate the VL, you'll need to change the sve_vl parameter of an
ArmSystem object or an object inherited from the ArmSystem object, or the
sveVL parameter of the ARM ISA object. If you set the sve_vl param or sveVL
to N, then the vector length is N * 128 bits.

arm provides example configurations here,
https://gem5.googlesource.com/public/gem5/+/refs/heads/stable/configs/example/arm/
.
You can add system.sve_vl = N here
https://gem5.googlesource.com/public/gem5/+/refs/heads/stable/configs/example/arm/starter_fs.py#106.
Note that this is a full-system simulation so setting this up might be a
bit complicated. I don't really know how to modify sve_vl in the simpler
simulation mode (SE mode).

Regards,
Hoa Nguyen

On Tue, Mar 7, 2023 at 5:59 PM Procelewski, Alex <
a.procelew...@student.rug.nl> wrote:

> Hi Hoa,
>
> Thank you for your email. I will be focusing on arm SVE as with the
> current information it shows much more promising results. If you (or anyone
> else ;)) know any promising beginning I would be very grateful. Otherwise
> (probably in either case), I will work myself through the tutorial.
>
> Cheers,
> Alex
>
>
>
>
> On Wed, Mar 8, 2023 at 2:33 AM Hoa Nguyen  wrote:
>
>> Hi Alex,
>>
>> The answer to your question depends on quite a few factors.
>>
>> One of them is what are the ISAs do you plan to investigate. As far as I
>> know, x86 in gem5 does not support a lot of SIMD extensions. I believe arm
>> NEON is pretty well supported in gem5.
>>
>> In terms of vector length agnostic instructions support, arm SVE is
>> pretty well supported too. RISC-V Vector Extension (RVV) 1.0 support is
>> still under reviewed. Though there is a RVV 0.7 implementation that is not
>> in mainline gem5, and a small RVV 1.0 implementation that supports a small
>> number of instructions but supports out-of-order execution.
>>
>>
>> Regards,
>> Hoa Nguyen
>>
>> On Tue, Mar 7, 2023, 17:15 Procelewski, Alex via gem5-users <
>> gem5-users@gem5.org> wrote:
>>
>>> Hi all,
>>> I'm an undergraduate student at the University of Groningen and I will
>>> be writing my Bachelor Thesis on automatic vectorization. I have a question
>>> about whether I can compile specific apps for gem5?
>>>
>>> In particular, I want to test how a specific compiled app performs under
>>> different circumstances (clock speed, vector sizes...), but for that I
>>> would need to be able to run a compiled application. As I'm currently
>>> writing my proposal I only had limited time to look through the
>>> documentation. I couldn't find any information on this however.
>>>
>>> I would appreciate it a lot if you could guide me in a direction or give
>>> a feasibility on whether this is possible with gem5
>>>
>>> Kind regards
>>> Alex Procelewski
>>>
>>>
>>> ___
>>> 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


[gem5-users] Re: Compiling for gem5

2023-03-07 Thread Hoa Nguyen via gem5-users
Hi Alex,

The answer to your question depends on quite a few factors.

One of them is what are the ISAs do you plan to investigate. As far as I
know, x86 in gem5 does not support a lot of SIMD extensions. I believe arm
NEON is pretty well supported in gem5.

In terms of vector length agnostic instructions support, arm SVE is pretty
well supported too. RISC-V Vector Extension (RVV) 1.0 support is still
under reviewed. Though there is a RVV 0.7 implementation that is not in
mainline gem5, and a small RVV 1.0 implementation that supports a small
number of instructions but supports out-of-order execution.


Regards,
Hoa Nguyen

On Tue, Mar 7, 2023, 17:15 Procelewski, Alex via gem5-users <
gem5-users@gem5.org> wrote:

> Hi all,
> I'm an undergraduate student at the University of Groningen and I will be
> writing my Bachelor Thesis on automatic vectorization. I have a question
> about whether I can compile specific apps for gem5?
>
> In particular, I want to test how a specific compiled app performs under
> different circumstances (clock speed, vector sizes...), but for that I
> would need to be able to run a compiled application. As I'm currently
> writing my proposal I only had limited time to look through the
> documentation. I couldn't find any information on this however.
>
> I would appreciate it a lot if you could guide me in a direction or give a
> feasibility on whether this is possible with gem5
>
> Kind regards
> Alex Procelewski
>
>
> ___
> 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


[gem5-users] Re: DerivO3CPU panic: initiateAcc not defined

2023-01-03 Thread Hoa Nguyen via gem5-users
Hi,

I believe you can compile build/X86/gem5.debug to have all the symbols
available for debugging.

I'm not sure about the error, but generally, when debugging an instruction,
I would try to find the internal name of the instruction in gem5, and look
at gem5/build/X86/arch/x86/arch/generated/ to find the implementation of
the instruction.

Regarding the unimplemented initiateAcc error, there are a few places to
look at,
- You can take a breakpoint when that instruction is decoded and find
gem5's internal name for that instruction (e.g., MOV_M_R or MOV_R_M).
- You can find how that instruction is decoded in
gem5/build/X86/arch/x86/generated/decode-method.cc.inc. It's probably
decoded into micro-op(s).
- gem5/src/arch/x86/isa/insts/general_purpose/data_transfer/move.py seems
to have the micro codes for move instructions.
- You can use that name to find the ::execute() function, as well as
::initiateAcc() function of the micro-ops in
gem5/build/X86/arch/x86/generated/exec-ns.cc.inc.

Regards,
Hoa Nguyen

On Tue, Jan 3, 2023 at 7:07 PM Eliot Moss via gem5-users <
gem5-users@gem5.org> wrote:

> Dear gem5-ers -- Does this issue sound familiar?  Could it be a bug
> that's been fixed and that I get because I'm running with an older
> version of gem5?  (Apparently 21.0.0.0.)
>
> The failing instruction seems to be (x86 64):
>
> mov 0x283a8a(rip),rax
>
> which occurs in function _dl_catch_error in glibc 6.
>
> The bytes of that instruction are (in hex): 48 8b 05 8a 3a 28 00
> Exec debug flag printing of the instruction shows it decoded properly.
> So how could its initiateAcc function be zapped?
>
> Btw, when diving into this sort of thing with gdb (debugging gem5,
> not the program being simulated), I have not been able to find a way
> to get at DynInstPtr referents when in gdb.  Is there a trick to
> printing / accessing fields of DynInst and StaticInst instances via
> their respective Ptr types?  The * and -> operator seem to be
> unknown to gdb on those Ptr types.
>
> Regards - Eliot Moss
> ___
> 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


[gem5-users] Re: args passing to binary workload in FS

2022-12-14 Thread Hoa Nguyen via gem5-users
Hi,

It seems that it's down to how se.py parses the arguments. Specifically,
the string passed to "-o" will always be splitted with the space character
as the delimiter as shown here,
https://gem5.googlesource.com/public/gem5/+/refs/heads/stable/configs/example/se.py#98

You can change the parsing logic there to avoid parsing the space
characters inside a pair of quotes.

Also note that se.py is not for simulation in FS mode.

Regards,
Hoa Nguyen

On Wed, Dec 14, 2022 at 12:19 AM Ginger Luo 罗江 via gem5-users <
gem5-users@gem5.org> wrote:

> Hello,
>
>
>
> I’m trying to pass a string containing blank char to binary workload, but
> seems the quotes will also be passed:
>
>
>
> *   command line: ./build/RISCV/gem5.opt configs/example/se.py
> --caches -c /home/vmware/repos/fibo/md5 -o '  1 "bull foo bar" '*
>
>
>
> The commandline of the binary will receive “hello foo bar” with the
> quotes, if I remove the inner quote pair, only bull will be received, how
> can I just get the 3 words without quotes? Thanks a lot!
>
>
>
> *Thanks, G*
>
>
> ___
> 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


[gem5-users] Re: "qemu: Error launching VM: Qenu failed to start" when using Packer to create a disk image and running Gem5 FS Sim

2022-11-12 Thread Hoa Nguyen via gem5-users
Hi,

I wanted to add that, if nested virtualization is not an option, you can
remove the "accelerator": "kvm" line in the json file. Without kvm, the
process might take a few hours.

https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stable/src/x86-ubuntu/disk-image/x86-ubuntu/x86-ubuntu.json#9

Regards,
Hoa Nguyen

On Sat, Nov 12, 2022, 19:00 Hoa Nguyen  wrote:

> Hi,
>
> You probably are looking for enabling nested virtualization.
>
>
> https://docs.oracle.com/en/virtualization/virtualbox/6.0/relnotes/nested-virt-support.html
>
> Regards,
> Hoa Nguyen
>
> On Sat, Nov 12, 2022, 18:54 minhui via gem5-users 
> wrote:
>
>> Dear advisor:
>>
>>
>> Unfortunately, I have both qemu-kvm and qemu installed before running the
>> script.
>>
>>
>> so , something else is not right?
>>
>>
>> thanks
>>
>>
>> Minhui
>>
>>
>>
>> ___
>> 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


[gem5-users] Re: HPCG on RISCV

2022-11-03 Thread Hoa Nguyen via gem5-users
Hi Nikos,

The problem you ran into with the FS mode seems to be the same problem
described here [1] [2].
Can you try downloading the changes and let me know if it fixes the problem?

[1] https://gem5-review.googlesource.com/c/public/gem5/+/65272
[2] https://gem5-review.googlesource.com/c/public/gem5/+/65273

Regards,
Hoa Nguyen

On Tue, Nov 1, 2022 at 2:15 PM Hoa Nguyen  wrote:

> Hi all,
>
> I also ran into the same problem using another benchmark. I want to note
> that this problem also appears when using the AtomicCPU.
>
> Regards,
> Hoa Nguyen
>
> On Tue, Nov 1, 2022 at 3:02 AM Νικόλαος Ταμπουρατζής via gem5-users <
> gem5-users@gem5.org> wrote:
>
>> Dear Boddy,
>>
>> Thank you for the update! Please let me know when the accuracy issue
>> will be resolved because I cannot execute any benchmark in RISCV FS
>> mode (I am wondering if any other user faces the same problem).
>>
>> Best regards,
>> Nikos
>>
>>
>> Quoting Bobby Bruce via gem5-users :
>>
>> > You mean this bug? Unfortunately not, I've been very busy with the
>> upcoming
>> > gem5 release and haven't had time to investigate this further.
>> >
>> > --
>> > Dr. Bobby R. Bruce
>> > Room 3050,
>> > Kemper Hall, UC Davis
>> > Davis,
>> > CA, 95616
>> >
>> > web: https://www.bobbybruce.net
>> >
>> >
>> > On Mon, Oct 31, 2022 at 1:45 AM Νικόλαος Ταμπουρατζής via gem5-users <
>> > gem5-users@gem5.org> wrote:
>> >
>> >> Dear Bobby, Jason, all,
>> >>
>> >> Is there any update about the accuracy of RISC-V FS?
>> >>
>> >> Best regards,
>> >> Nikos
>> >>
>> >>
>> >> Quoting Bobby Bruce :
>> >>
>> >> > Jason and I had a theory that this may be due to the "Rounding Mode"
>> for
>> >> > floating pointing being set incorrectly in FS mode. That's set via a
>> >> macro
>> >> > here:
>> >> >
>> >>
>> https://gem5.googlesource.com/public/gem5/+/refs/tags/v22.0.0.2/src/arch/riscv/fp_inst.hh#36
>> >> >
>> >> > I manually expanded the macro here:
>> >> >
>> >>
>> https://gem5.googlesource.com/public/gem5/+/refs/tags/v22.0.0.2/src/arch/riscv/isa/decoder.isa#1495
>> >> ,
>> >> > inside the "fsqrt_d" definition then compiled "build/ALL/gem5.debug".
>> >> Then
>> >> > used gdb to add a breakpoint in the "Fsqrt_d::execute" function (in
>> the
>> >> > generated "build/ALL/arch/riscv/generated/exec-ns.cc.inc" file).
>> >> >
>> >> > ```
>> >> > gdb build/ALL/gem5.opt
>> >> > break Fsqrt_d::execute
>> >> > run bug-recreation/se-mode-run.py # or `run
>> >> bug-recreation/fs-mode-run.py`
>> >> > ```
>> >> >
>> >> > Stepping through with gdb I the rounding mode is `0` for SE mode and
>> `0`
>> >> > for FS mode as well. So, no luck with that theory.
>> >> >
>> >> > My new theory is that this bug has something to do with thread
>> context
>> >> > switching being implemented incorrectly in RISC-V somehow. I find it
>> >> > strange that the sqrt(1) works fine for a while (i.e. returns `1`)
>> then
>> >> > suddenly starts returning zero after a certain point in the
>> execution. In
>> >> > addition, it's odd that the loop is not returning the same value each
>> >> time
>> >> > despite executing the same code. It'd make sense to me that the
>> thread is
>> >> > being stored and then resumed with some corruption of the floating
>> point
>> >> > data. This would also explain why this bug only occurs in FS mode.
>> >> >
>> >> > I'll try to find time to figure out a good test for this. If anyone
>> has
>> >> any
>> >> > other theories or ideas then let me know.
>> >> >
>> >> > --
>> >> > Dr. Bobby R. Bruce
>> >> > Room 3050,
>> >> > Kemper Hall, UC Davis
>> >> > Davis,
>> >> > CA, 95616
>> >> >
>> >> > web: https://www.bobbybruce.net
>> >> >
>> >> >
>> >> > On Fri, Oct 7, 2022 at 12:50 PM Νικόλαος Ταμπουρατζής <
>> >> > ntampourat...@ece.auth.gr> wrote:
>> >> >>
>> >> >> Dear Jason & Boddy,
>> >> >>
>> >> >> Unfortunately, I have tried my simple example without the sqrt
>> >> >> function and the problem remains. Specifically, I have the following
>> >> >> simple code:
>> >> >>
>> >> >>
>> >> >> #include 
>> >> >> #include 
>> >> >>
>> >> >> int main(){
>> >> >>
>> >> >>  int dim = 1024;
>> >> >>
>> >> >>  double result;
>> >> >>
>> >> >>  for (int iter = 0; iter < 2; iter++){
>> >> >>  result = 0;
>> >> >>  for (int i = 0; i < dim; i++){
>> >> >>  for (int j = 0; j < dim; j++){
>> >> >>  result += i * j;
>> >> >>  }
>> >> >>  }
>> >> >>  printf("Final Result: %lf\n", result);
>> >> >>  }
>> >> >> }
>> >> >>
>> >> >>
>> >> >> In the above code, the correct result is 274341298176.00 (from
>> >> >> RISCV-SE mode and x86), while in FS mode I get sometimes the correct
>> >> >> result and other times a different number.
>> >> >>
>> >> >> Best regards,
>> >> >> Nikos
>> >> >>
>> >> >>
>> >> >> Quoting Jason Lowe-Power :
>> >> >>
>> >> >> > I have an idea...
>> >> >> >
>> >> >> > Have you put a breakpoint in the implementation of the fsqrt_d
>> >> > function? I
>> >> >> > would like to know if when 

[gem5-users] Re: HPCG on RISCV

2022-11-01 Thread Hoa Nguyen via gem5-users
Hi all,

I also ran into the same problem using another benchmark. I want to note
that this problem also appears when using the AtomicCPU.

Regards,
Hoa Nguyen

On Tue, Nov 1, 2022 at 3:02 AM Νικόλαος Ταμπουρατζής via gem5-users <
gem5-users@gem5.org> wrote:

> Dear Boddy,
>
> Thank you for the update! Please let me know when the accuracy issue
> will be resolved because I cannot execute any benchmark in RISCV FS
> mode (I am wondering if any other user faces the same problem).
>
> Best regards,
> Nikos
>
>
> Quoting Bobby Bruce via gem5-users :
>
> > You mean this bug? Unfortunately not, I've been very busy with the
> upcoming
> > gem5 release and haven't had time to investigate this further.
> >
> > --
> > Dr. Bobby R. Bruce
> > Room 3050,
> > Kemper Hall, UC Davis
> > Davis,
> > CA, 95616
> >
> > web: https://www.bobbybruce.net
> >
> >
> > On Mon, Oct 31, 2022 at 1:45 AM Νικόλαος Ταμπουρατζής via gem5-users <
> > gem5-users@gem5.org> wrote:
> >
> >> Dear Bobby, Jason, all,
> >>
> >> Is there any update about the accuracy of RISC-V FS?
> >>
> >> Best regards,
> >> Nikos
> >>
> >>
> >> Quoting Bobby Bruce :
> >>
> >> > Jason and I had a theory that this may be due to the "Rounding Mode"
> for
> >> > floating pointing being set incorrectly in FS mode. That's set via a
> >> macro
> >> > here:
> >> >
> >>
> https://gem5.googlesource.com/public/gem5/+/refs/tags/v22.0.0.2/src/arch/riscv/fp_inst.hh#36
> >> >
> >> > I manually expanded the macro here:
> >> >
> >>
> https://gem5.googlesource.com/public/gem5/+/refs/tags/v22.0.0.2/src/arch/riscv/isa/decoder.isa#1495
> >> ,
> >> > inside the "fsqrt_d" definition then compiled "build/ALL/gem5.debug".
> >> Then
> >> > used gdb to add a breakpoint in the "Fsqrt_d::execute" function (in
> the
> >> > generated "build/ALL/arch/riscv/generated/exec-ns.cc.inc" file).
> >> >
> >> > ```
> >> > gdb build/ALL/gem5.opt
> >> > break Fsqrt_d::execute
> >> > run bug-recreation/se-mode-run.py # or `run
> >> bug-recreation/fs-mode-run.py`
> >> > ```
> >> >
> >> > Stepping through with gdb I the rounding mode is `0` for SE mode and
> `0`
> >> > for FS mode as well. So, no luck with that theory.
> >> >
> >> > My new theory is that this bug has something to do with thread context
> >> > switching being implemented incorrectly in RISC-V somehow. I find it
> >> > strange that the sqrt(1) works fine for a while (i.e. returns `1`)
> then
> >> > suddenly starts returning zero after a certain point in the
> execution. In
> >> > addition, it's odd that the loop is not returning the same value each
> >> time
> >> > despite executing the same code. It'd make sense to me that the
> thread is
> >> > being stored and then resumed with some corruption of the floating
> point
> >> > data. This would also explain why this bug only occurs in FS mode.
> >> >
> >> > I'll try to find time to figure out a good test for this. If anyone
> has
> >> any
> >> > other theories or ideas then let me know.
> >> >
> >> > --
> >> > Dr. Bobby R. Bruce
> >> > Room 3050,
> >> > Kemper Hall, UC Davis
> >> > Davis,
> >> > CA, 95616
> >> >
> >> > web: https://www.bobbybruce.net
> >> >
> >> >
> >> > On Fri, Oct 7, 2022 at 12:50 PM Νικόλαος Ταμπουρατζής <
> >> > ntampourat...@ece.auth.gr> wrote:
> >> >>
> >> >> Dear Jason & Boddy,
> >> >>
> >> >> Unfortunately, I have tried my simple example without the sqrt
> >> >> function and the problem remains. Specifically, I have the following
> >> >> simple code:
> >> >>
> >> >>
> >> >> #include 
> >> >> #include 
> >> >>
> >> >> int main(){
> >> >>
> >> >>  int dim = 1024;
> >> >>
> >> >>  double result;
> >> >>
> >> >>  for (int iter = 0; iter < 2; iter++){
> >> >>  result = 0;
> >> >>  for (int i = 0; i < dim; i++){
> >> >>  for (int j = 0; j < dim; j++){
> >> >>  result += i * j;
> >> >>  }
> >> >>  }
> >> >>  printf("Final Result: %lf\n", result);
> >> >>  }
> >> >> }
> >> >>
> >> >>
> >> >> In the above code, the correct result is 274341298176.00 (from
> >> >> RISCV-SE mode and x86), while in FS mode I get sometimes the correct
> >> >> result and other times a different number.
> >> >>
> >> >> Best regards,
> >> >> Nikos
> >> >>
> >> >>
> >> >> Quoting Jason Lowe-Power :
> >> >>
> >> >> > I have an idea...
> >> >> >
> >> >> > Have you put a breakpoint in the implementation of the fsqrt_d
> >> > function? I
> >> >> > would like to know if when running in SE mode and running in FS
> mode
> >> we
> >> > are
> >> >> > using the same rounding mode. My hypothesis is that in FS mode the
> >> > rounding
> >> >> > mode is set differently.
> >> >> >
> >> >> > Cheers,
> >> >> > Jason
> >> >> >
> >> >> > On Fri, Oct 7, 2022 at 12:15 AM Νικόλαος Ταμπουρατζής <
> >> >> > ntampourat...@ece.auth.gr> wrote:
> >> >> >
> >> >> >> Dear Boddy,
> >> >> >>
> >> >> >> Thanks a lot for the effort! I looked in detail and I observe that
> >> the
> >> >> >> problem is created only using float and double variables 

[gem5-users] Re: Running SPEChpc 2021 benchmarks with gem5

2022-03-19 Thread Hoa Nguyen via gem5-users
Hi Chrysanthos,

As indicated by this line,
> ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on
unknown-block(3,0) ]---
the problem seems to be that the root partition was identified incorrectly.

You can run the `fdisk` command to find the location of the root partition.
For example,
/scr/hn/riscv-ubuntu-disk-images/> fdisk -l ubuntu.img
Disk ubuntu.img: 7.51 GiB, 8053063680 bytes, 15728640 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: E2DAF0DA-8641-4639-AEF7-3E832D145D82

DeviceStart  End  Sectors  Size Type
ubuntu.img1  235554 15728606 15493053  7.4G Linux filesystem
ubuntu.img12 227362   235553 81924M Linux filesystem
ubuntu.img13 34 2081 20481M HiFive Unleashed FSBL
ubuntu.img14   208210273 81924M HiFive Unleashed BBL
ubuntu.img15  10274   227361   217088  106M EFI System

Partition table entries are not in disk order.

The largest partition is ubuntu.img1, so the mount point of / should be at
/dev/vda1 (or /dev/vda, I don't remember this :D).

I assume that you are using the gem5 library. If that is the case, you can
follow this example to set the mount point of / to another partition.
https://gem5.googlesource.com/public/gem5/+/refs/heads/stable/configs/example/gem5_library/x86-spec-cpu2017-benchmarks.py#240

It should look like,

board.set_kernel_disk_workload(
# The x86 linux kernel will be automatically downloaded to the
# `~/.cache/gem5` directory if not already present.
kernel=Resource(
"x86-linux-kernel-4.19.83",
),
# The location of the x86 SPEC CPU 2017 image
# Assume that it should be /dev/vda1
disk_image=CustomDiskImageResource(
"/path/to/the/disk/image",
disk_root_partition="1",
),
readfile_contents=command,
)

Regards,
Hoa Nguyen

On Sat, Mar 19, 2022 at 12:33 PM cpepi001--- via gem5-users <
gem5-users@gem5.org> wrote:

> Hello All,
>
> I would like to ask if it's possible to run SPEChpc 2021 benchmarks using
> gem5.
> I tried to run it with the x86-spec-cpu2017-benchmarks.py but I got the
> following error in the system.pc.com_1.device file:
>
> Kernel panic - not syncing: VFS: Unable to mount root fs on
> unknown-block(3,0)
> CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.19.83 #1
> Hardware name:  , BIOS  06/08/2008
> Call Trace:
>  dump_stack+0x5d/0x79
>  panic+0xe2/0x236
>  mount_block_root+0x2b0/0x2e4
>  ? set_debug_rodata+0xc/0xc
>  prepare_namespace+0x15b/0x191
>  kernel_init_freeable+0x23c/0x24c
>  ? rest_init+0xa0/0xa0
>  kernel_init+0x5/0xf0
>  ret_from_fork+0x35/0x40
> Kernel Offset: disabled
> ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on
> unknown-block(3,0) ]---
>
> Does anyone knows how to properly configure it? if it's possible to run
> those benchmarks with gem5.
>
> version: 21.2.1.0
> command: build/X86/gem5.opt
> configs/example/gem5_library/x86-spec-hpc2021-benchmarks.py --image
> ../hpc2021-1.0.3.iso --benchmark 505.lbm_t --size test
> (x86-spec-hpc2021-benchmarks.py is the same as
> x86-spec-cpu2017-benchmarks.py with different benchmarks)
>
> Best,
> Chrysanthos
> ___
> 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] Re: riscv-ubuntu 20.04 FS mode

2022-03-14 Thread Hoa Nguyen via gem5-users
t;> >>>> |_|
> >>> >> >>>>
> >>> >> >>>> Platform Name : riscv-virtio,qemu
> >>> >> >>>> Platform Features : timer,mfdeleg
> >>> >> >>>> Platform HART Count   : 8
> >>> >> >>>> Firmware Base : 0x8000
> >>> >> >>>> Firmware Size : 156 KB
> >>> >> >>>> Runtime SBI Version   : 0.2
> >>> >> >>>>
> >>> >> >>>> Domain0 Name  : root
> >>> >> >>>> Domain0 Boot HART : 5
> >>> >> >>>> Domain0 HARTs : 0*,1*,2*,3*,4*,5*,6*,7*
> >>> >> >>>> Domain0 Region00  :
> 0x8000-0x8003
> >>> ()
> >>> >> >>>> Domain0 Region01  :
> 0x-0x
> >>> > (R,W,X)
> >>> >> >>>> Domain0 Next Address  : 0x8020
> >>> >> >>>> Domain0 Next Arg1 : 0x8220
> >>> >> >>>> Domain0 Next Mode : S-mode
> >>> >> >>>> Domain0 SysReset  : yes
> >>> >> >>>>
> >>> >> >>>> Boot HART ID  : 5
> >>> >> >>>> Boot HART Domain  : root
> >>> >> >>>> Boot HART ISA : rv64imafdcsu
> >>> >> >>>> Boot HART Features: scounteren,mcounteren,time
> >>> >> >>>> Boot HART PMP Count   : 16
> >>> >> >>>> Boot HART PMP Granularity : 4
> >>> >> >>>> Boot HART PMP Address Bits: 54
> >>> >> >>>> Boot HART MHPM Count  : 0
> >>> >> >>>> Boot HART MHPM Count  : 0
> >>> >> >>>> Boot HART MIDELEG : 0x0222
> >>> >> >>>> Boot HART MEDELEG : 0xb109
> >>> >> >>>>
> >>> >> >>>>
> >>> >> >>>> U-Boot 2021.01+dfsg-3ubuntu0~20.04.4 (Sep 21 2021 - 15:55:38
> >>> +)
> >>> >> >>>>
> >>> >> >>>> CPU:   rv64imafdcsu
> >>> >> >>>> Model: riscv-virtio,qemu
> >>> >> >>>> DRAM:  16 GiB
> >>> >> >>>> In:uart@1000
> >>> >> >>>> Out:   uart@1000
> >>> >> >>>> Err:   uart@1000
> >>> >> >>>> Net:   eth0: virtio-net#0
> >>> >> >>>> Hit any key to stop autoboot:  0
> >>> >> >>>>
> >>> >> >>>> Device 0: 1af4 VirtIO Block Device
> >>> >> >>>> Type: Hard Disk
> >>> >> >>>> Capacity: 13824.0 MB = 13.5 GB (28311552 x 512)
> >>> >> >>>> ... is now current device
> >>> >> >>>> Scanning virtio 0:1...
> >>> >> >>>> Found /boot/extlinux/extlinux.conf
> >>> >> >>>> Retrieving file: /boot/extlinux/extlinux.conf
> >>> >> >>>> 755 bytes read in 4 ms (183.6 KiB/s)
> >>> >> >>>> U-Boot menu
> >>> >> >>>> 1:Ubuntu 20.04.3 LTS 5.11.0-1017-generic
> >>> >> >>>> 2:Ubuntu 20.04.3 LTS 5.11.0-1017-generic (rescue target)
> >>> >> >>>> Enter choice: 1:  Ubuntu 20.04.3 LTS 5.11.0-1017-generic
> >>> >> >>>> Retrieving file: /boot/initrd.img-5.11.0-1017-generic
> >>> >> >>>> 170008555 bytes read in 728 ms (222.7 MiB/s)
> >>> >> >>>> Retrieving file: /boot/vmlinuz-5.11.0-1017-generic
> >>> >> >>>> 25258496 bytes read in 148 ms (162.8 MiB/s)
> >>> >> >>>> append: root=LABEL=cloudimg-rootfs ro earlycon
> >>> >> >>>> Retrieving file:
> >>> >> >>> /lib/firmware/5.11.0-1017-generic/device-tree/qemu-riscv.dtb
> >>> >> >>>> Failed to load
> >>> >> >>> '/lib/firmware/5.11.0-1017

[gem5-users] Re: riscv-ubuntu 20.04 FS mode

2022-02-11 Thread Hoa Nguyen via gem5-users
Hi,

It also took 6+ hours to boot Linux using that disk image on my end, so I
think it's systemd being very slow.

By profiling systemd, I find that systemd took a lot of time to bring up
the networking service, and especially the "motd" (message of the day?)
service, which queries for updates from Ubuntu servers.

We can turn off the motd service, which would improve the booting time by a
lot. However, I don't really know how to turn off the network service.

I hope that somebody will help with the systemd stuff.

Regards,
Hoa Nguyen

On Fri, Feb 11, 2022 at 4:57 AM Νικόλαος Ταμπουρατζής via gem5-users <
gem5-users@gem5.org> wrote:

> Dear community,
>
> I have just downloaded the latest version of gem5 (v21.2.1) and I try
> to simulate the FS using the riscv-ubuntu-run.py
> (./build/RISCV/gem5.opt
> configs/example/gem5_library/riscv-ubuntu-run.py). It downloads
> automatically both riscv-ubuntu-20.04-img and
> riscv-bootloader-vmlinux-5.10. However, after 4 hours the system is
> not completely booted.
>
> How many hours it is required to boot?
> How can I disable the systemd services from riscv-ubuntu-20.04-img?
>
> I found the following link but I cannot emulate the image through
> qemu: http://resources.gem5.org/resources/riscv-ubuntu
>
> Best regards,
> Nikos
>
> Here is the output (through m5term):
>
>  m5 terminal: Terminal 0 
> [0.00] Linux version 5.10.0 (hn@amarillo)
> (riscv64-linux-gnu-gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0, GNU ld
> (GNU Binutils for Ubuntu) 2.30) #1 SMP Mon Jul 19 13:32:59 PDT 2021
> [0.00] OF: fdt: Ignoring memory range 0x8000 - 0x8020
> [0.00] efi: UEFI not found.
> [0.00] Zone ranges:
> [0.00]   DMA32[mem 0x8020-0x]
> [0.00]   Normal   [mem 0x0001-0x00013fff]
> [0.00] Movable zone start for each node
> [0.00] Early memory node ranges
> [0.00]   node   0: [mem 0x8020-0x00013fff]
> [0.00] Initmem setup node 0 [mem
> 0x8020-0x00013fff]
> [0.00] software IO TLB: mapped [mem
> 0xfbfff000-0xf000] (64MB)
> [0.00] SBI specification v0.1 detected
> [0.00] riscv: ISA extensions acdfim
> [0.00] riscv: ELF capabilities acdfim
> [0.00] percpu: Embedded 16 pages/cpu s26200 r8192 d31144 u65536
> [0.00] Built 1 zonelists, mobility grouping on.  Total pages:
> 775175
> [0.00] Kernel command line: console=ttyS0 root=/dev/vda1 ro
> [0.00] Dentry cache hash table entries: 524288 (order: 10,
> 4194304 bytes, linear)
> [0.00] Inode-cache hash table entries: 262144 (order: 9,
> 2097152 bytes, linear)
> [0.00] Sorting __ex_table...
> [0.00] mem auto-init: stack:off, heap alloc:off, heap free:off
> [0.00] Memory: 3014996K/3143680K available (5866K kernel code,
> 3086K rwdata, 2048K rodata, 189K init, 341K bss, 128684K reserved, 0K
> cma-reserved)
> [0.00] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
> [0.00] rcu: Hierarchical RCU implementation.
> [0.00] rcu: RCU restricting CPUs from NR_CPUS=8 to
> nr_cpu_ids=2.
> [0.00]  Tracing variant of Tasks RCU enabled.
> [0.00] rcu: RCU calculated value of scheduler-enlistment delay
> is 25 jiffies.
> [0.00] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
> [0.00] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
> [0.00] riscv-intc: 64 local interrupts mapped
> [0.00] plic: plic@c00: mapped 10 interrupts with 2
> handlers for 4 contexts.
> [0.00] random: get_random_bytes called from
> start_kernel+0x316/0x496 with crng_init=0
> [0.00] riscv_timer_init_dt: Registering clocksource cpuid [0]
> hartid [1]
> [0.00] clocksource: riscv_clocksource: mask:
> 0x max_cycles: 0x24e6a1710, max_idle_ns: 440795202120 ns
> [0.14] sched_clock: 64 bits at 10MHz, resolution 100ns, wraps
> every 4398046511100ns
> [0.000269] Console: colour dummy device 80x25
> [0.000322] Calibrating delay loop (skipped), value calculated
> using timer frequency.. 20.00 BogoMIPS (lpj=4)
> [0.000363] pid_max: default: 32768 minimum: 301
> [0.000710] Mount-cache hash table entries: 8192 (order: 4, 65536
> bytes, linear)
> [0.000776] Mountpoint-cache hash table entries: 8192 (order: 4,
> 65536 bytes, linear)
> [0.002680] rcu: Hierarchical SRCU implementation.
> [0.002885] EFI services will not be available.
> [0.003051] smp: Bringing up secondary CPUs ...
> [0.003724] smp: Brought up 1 node, 2 CPUs
> [0.004415] devtmpfs: initialized
> [0.006194] clocksource: jiffies: mask: 0x max_cycles:
> 0x, max_idle_ns: 764504178510 ns
> [0.006230] futex hash table entries: 512 (order: 3, 32768 bytes,
> linear)
> [0.006736] NET: Registered protocol family 16
> [0.030604] vgaarb: 

[gem5-users] Re: BasicPioDevice read() / write() not responding

2021-10-23 Thread Hoa Nguyen via gem5-users
Hi Andreas,

My guess is that for Method 1, the pointer is of a virtual address so
there's a page fault there.

I'm not sure why the write() function wasn't invoked on Method 2. I got
into the same problem recently where I used mmap() to write to a physical
address, which should be handled by a Pio device. Even though the generated
binary has a store instruction to that address, the write() function wasn't
called. I solved that problem by using printf() to print the value at that
physical address. I think using volatile keyword should have worked as well.

I'm quite rusty on bare metal programming so I might be wrong :)

Regards,
Hoa Nguyen

On Sat, Oct 23, 2021, 4:37 PM diavastos--- via gem5-users <
gem5-users@gem5.org> wrote:

> Hi all,
>
> I implemented a device using the BasicPioDevice class but I can't seem to
> get the read() & write() calls to work.
> I assigned a pioAddr=0x2 and a pioSize=4096 and I try to write to
> the device directly using these two methods:
>
> Method 1:
> ---
>
> uint32_t inp_params2 = 14;
> uint64_t *driver = (uint64_t*)0x2;
> *driver = inp_params2;
>
> Method 2:
> ---
>
> asm volatile (
> "mov %0,0x2\n"
> :
> : "r" (inp_params2)
> :
> );
>
> With the Method 2, the simulation completes with no error but the write()
> is never called on the device, With Method 1 I get the following error:
> panic: panic condition !handled occurred: Page table fault when accessing
> virtual address 0x2
>
> Any help would be greatly appreciated!
>
> Many Thanks,
> andreas
> ___
> 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] Re: How to build custom disk images

2021-10-20 Thread Hoa Nguyen via gem5-users
Hi,

It's not clear from the error log where the problem is, but it does
indicate that qemu failed to start. My suggestion is to check the path of
the qemu binary (i.e. this line
https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/develop/src/parsec/disk-image/parsec/parsec.json#44).
If the host does not support KVM, you'll need to remove this line (
https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/develop/src/parsec/disk-image/parsec/parsec.json#9).
If the problem persists, please run packer with the environment variable
PACKER_LOG=1.

To install MPI, you can add the shell commands to install MPI to the
file disk-image / parsec / parsec-install.sh

Regards,
Hoa Nguyen

On Tue, Oct 19, 2021, 7:50 PM 等价无穷小 via gem5-users 
wrote:

> Hello,
>
> As for I am not familiar with the gem5. I would like to custom disk images
> following the gem5.googlesource.com  gem5-resources to make a PARSEC disk
> image. I followed the instructions as the README.me, but I encounter some
> errors.
>
> The error information is shown as follow:
>
> qemu: output will be in this color.
>
> ==> qemu: Retrieving ISO
> ==> qemu: Trying
> http://old-releases.ubuntu.com/releases/18.04.2/ubuntu-18.04.2-server-amd64.iso
> ==> qemu: Trying
> http://old-releases.ubuntu.com/releases/18.04.2/ubuntu-18.04.2-server-amd64.iso?checksum=md5%3A34416ff83179728d54583bf3f18d42d2
> ==> qemu:
> http://old-releases.ubuntu.com/releases/18.04.2/ubuntu-18.04.2-server-amd64.iso?checksum=md5%3A34416ff83179728d54583bf3f18d42d2
> =>
> /home/gem5/parsec/disk-image/packer_cache/e94c06241a5e6ba0c4b9618ddcda39ba2ee27e9a.iso
> ==> qemu: Creating floppy disk...
> qemu: Copying files flatly from floppy_files
> qemu: Copying file: shared/preseed.cfg
> qemu: Done copying files from floppy_files
> qemu: Collecting paths from floppy_dirs
> qemu: Resulting paths from floppy_dirs : []
> qemu: Done copying paths from floppy_dirs
> ==> qemu: Creating required virtual machine disks
> ==> qemu: Starting HTTP server on port 8413
> ==> qemu: Found port for communicator (SSH, WinRM, etc): 2359.
> ==> qemu: Looking for available port between 5900 and 6000 on 127.0.0.1
> ==> qemu: Starting VM, booting from CD-ROM
> qemu: The VM will be run headless, without a GUI. If you want to
> qemu: view the screen of the VM, connect via VNC without a password to
> qemu: vnc://127.0.0.1:5942
> ==> qemu: Overriding defaults Qemu arguments with QemuArgs...
> ==> qemu: Error launching VM: Qemu failed to start. Please run with
> PACKER_LOG=1 to get more info.
> ==> qemu: Deleting output directory...
> Build 'qemu' errored: Build was halted.
>
> What can I do to solve the problem?
> And another question is that how can I run MPI  in the FS mode?
>
> Thanks in advance.
>
> Zhang Meng
> ___
> 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] Re: Compile GEM5 to .a or .so file

2021-10-07 Thread Hoa Nguyen via gem5-users
Hi Fengze,

The command to compile gem5 as a library is,

scons build/X86/libgem5_opt.so

The ISA and the variant (e.g. opt, debug, fast) options are the same as
those of compiling gem5 as an executable.

Regards,
Hoa Nguyen

On Thu, Oct 7, 2021, 3:01 AM Fengze Yu via gem5-users 
wrote:

>
> Hi
>
>   Building GEM5 using scons generates an executable file gem5.opt. What if
> I want to generate a static or dynamic library, which is either a .a or .so
> file, instead of an executable?
>   I have noticed that in SConscript under gem5/src, there is a process to
> make all the object into an library, but I could not find any file with .a
> or .so suffix under the build/ directory.
>
> # First make a library of everything but main() so other programs can
> # link against m5.
> static_lib = new_env.StaticLibrary(libname, static_objs)
> shared_lib = new_env.SharedLibrary(libname, shared_objs)
>
>
> Thanks
>
> Fengze
> ___
> 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] Re: gem5art SPEC 2017 benchmark tutorial: error with packer building disk image

2021-09-25 Thread Hoa Nguyen via gem5-users
Hi Reiko,

It's not immediately clear to me what caused the problem.

Though, I do think it was because the host was running out of memory.
I think you can resolve that by modifying the "vm_memory" parameter of
the disk-image/spec-2017/spec-2017.json file.

Regards,
Hoa Nguyen

On 9/24/21, Reiko Matsuda-dunn via gem5-users  wrote:
> Hello,
>
> I'm getting the following error when trying to build the disk image as
> described here:
> https://www.gem5.org/documentation/gem5art/tutorials/spec-tutorial
>
> The final error is:
> ==> qemu: Provisioning step had errors: Running the cleanup provisioner, if
> present...
> ==> qemu: Deleting output directory...
> Build 'qemu' errored after 25 minutes 1 second: Script disconnected
> unexpectedly. If you expected your script to disconnect, i.e. from a
> restart, you can try adding `"expect_disconnect": true` or
> `"valid_exit_codes": [0, 2300218]` to the shell provisioner parameters.
>
> I've included the entire output below in case it's helpful. The host is
> Ubuntu 20.04 and I'm using gem5 21. Everything else is the same as the
> tutorial.
>
> Thanks for all you do!
> ___
>
> $./packer build spec-2017/spec-2017.json
>
> qemu: output will be in this color.
>
> ==> qemu: Retrieving ISO
> ==> qemu: Trying
> http://old-releases.ubuntu.com/releases/18.04.2/ubuntu-18.04.2-server-amd64.iso
> ==> qemu: Trying
> http://old-releases.ubuntu.com/releases/18.04.2/ubuntu-18.04.2-server-amd64.iso?checksum=md5%3A34416ff83179728d54583bf3f18d42d2
> ==> qemu:
> http://old-releases.ubuntu.com/releases/18.04.2/ubuntu-18.04.2-server-amd64.iso?checksum=md5%3A34416ff83179728d54583bf3f18d42d2
> =>
> /home/reiko/gem5-resources/src/spec-2017/disk-image/packer_cache/e94c06241a5e6ba0c4b9618ddcda39ba2ee27e9a.iso
> ==> qemu: Creating floppy disk...
> qemu: Copying files flatly from floppy_files
> qemu: Copying file: shared/preseed.cfg
> qemu: Done copying files from floppy_files
> qemu: Collecting paths from floppy_dirs
> qemu: Resulting paths from floppy_dirs : []
> qemu: Done copying paths from floppy_dirs
> ==> qemu: Starting HTTP server on port 8610
> ==> qemu: Found port for communicator (SSH, WinRM, etc): 4164.
> ==> qemu: Looking for available port between 5900 and 6000 on 127.0.0.1
> ==> qemu: Starting VM, booting from CD-ROM
> qemu: The VM will be run headless, without a GUI. If you want to
> qemu: view the screen of the VM, connect via VNC without a password to
> qemu: vnc://127.0.0.1:82
> ==> qemu: Overriding default Qemu arguments with qemuargs template
> option...
> ==> qemu: Waiting 10s for boot...
> ==> qemu: Connecting to VM via VNC (127.0.0.1:5982)
> ==> qemu: Typing the boot command over VNC...
> qemu: Not using a NetBridge -- skipping StepWaitGuestAddress
> ==> qemu: Using ssh communicator to connect: 127.0.0.1
> ==> qemu: Waiting for SSH to become available...
> ==> qemu: Connected to SSH!
> ==> qemu: Uploading ../gem5/util/m5/build/x86/out/m5 => /home/gem5/
> qemu: m5 2.40 MiB / 2.40 MiB [===]
> 100.00% 0s
> ==> qemu: Uploading shared/serial-getty@.service => /home/gem5/
> qemu: serial-getty@.service 1.45 KiB / 1.45 KiB []
> 100.00% 0s
> ==> qemu: Uploading spec-2017/runscript.sh => /home/gem5/
> qemu: runscript.sh 1.16 KiB / 1.16 KiB [=]
> 100.00% 0s
> ==> qemu: Uploading spec-2017/cpu2017-1.1.0.iso => /home/gem5/
> qemu: cpu2017-1.1.0.iso 2.83 GiB / 2.83 GiB [=] 100.00%
> 1m43s
> ==> qemu: Provisioning with shell script: spec-2017/post-installation.sh
> qemu: Post Installation Started
> qemu: Post Installation Done
> ==> qemu: [sudo] password for gem5:
> ==> qemu: Provisioning with shell script: spec-2017/install-spec2017.sh
> qemu: Reading package lists...
> qemu: Building dependency tree...
> qemu: Reading state information...
> qemu: build-essential is already the newest version (12.4ubuntu1).
> qemu: The following additional packages will be installed:
> qemu:   gfortran-7 libgfortran-7-dev libgfortran4
> qemu: Suggested packages:
> qemu:   gfortran-multilib gfortran-doc gfortran-7-multilib
> gfortran-7-doc
> qemu:   libgfortran4-dbg libcoarrays-dev
> qemu: The following NEW packages will be installed:
> qemu:   gfortran gfortran-7 libgfortran-7-dev libgfortran4
> qemu: 0 upgraded, 4 newly installed, 0 to remove and 178 not upgraded.
> qemu: Need to get 10.0 MB of archives.
> qemu: After this operation, 31.4 MB of additional disk space will be
> used.
> qemu: Get:1 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64
> libgfortran4 amd64 7.5.0-3ubuntu1~18.04 [492 kB]
> qemu: Get:2 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64
> libgfortran-7-dev amd64 7.5.0-3ubuntu1~18.04 [530 kB]
> qemu: Get:3 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64
> gfortran-7 amd64 7.5.0-3ubuntu1~18.04 [9,014 

[gem5-users] Re: gem5art SPEC2017 FS Tutorial : error opening disk image

2021-09-22 Thread Hoa Nguyen via gem5-users
Hi Reiko,

Can you point to the tutorial and the launch experiment script that you
used?

I think it's possible that the
file disk-image/spec2017/spec2017-image/spec2017 didn't exist, or the path
to that file was incorrect.

Regards,
Hoa Nguyen

On Wed, Sep 22, 2021, 12:24 PM Reiko Matsuda-dunn via gem5-users <
gem5-users@gem5.org> wrote:

> Hello!
>
> I have been following the tutorial here. I've modified the
> launch_spec2017_experiment to just run the 602.gcc_s test with the o3 cpu,
> and I'm getting the error posted below.
>
> Some additional info that might be helpful:
>  - I'm using WSL2.
>  - from simout:
> command line: gem5/build/X86/gem5.opt -re 
> --outdir=/home/user/gem5-resources/src/spec-2017/results/o3/test/602.gcc_s 
> configs/run_spec.py vmlinux-4.19.83 
> disk-image/spec2017/spec2017-image/spec2017 o3 602.gcc_s test
>
> Any guidance would be much appreciated!
> -Reiko
>
> build/X86/mem/mem_interface.cc:791: warn:
> DRAM device capacity (32768 Mbytes) does not match the address range assigned 
> (1024 Mbytes)
> build/X86/mem/mem_interface.cc:791: warn:
> DRAM device capacity (32768 Mbytes) does not match the address range assigned 
> (1024 Mbytes)
> build/X86/mem/mem_interface.cc:791: warn:
> DRAM device capacity (32768 Mbytes) does not match the address range assigned 
> (1024 Mbytes)
> build/X86/mem/mem_interface.cc:791: warn:
> DRAM device capacity (32768 Mbytes) does not match the address range assigned 
> (1024 Mbytes)
> build/X86/mem/mem_interface.cc:791: warn:
> DRAM device capacity (32768 Mbytes) does not match the address range assigned 
> (1024 Mbytes)
> build/X86/mem/mem_interface.cc:791: warn:
> DRAM device capacity (32768 Mbytes) does not match the address range assigned 
> (1024 Mbytes)
> build/X86/mem/mem_interface.cc:791: warn:
> DRAM device capacity (32768 Mbytes) does not match the address range assigned 
> (1024 Mbytes)
> build/X86/mem/mem_interface.cc:791: warn:
> DRAM device capacity (32768 Mbytes) does not match the address range assigned 
> (1024 Mbytes)
> build/X86/mem/mem_interface.cc:791: warn:
> DRAM device capacity (32768 Mbytes) does not match the address range assigned 
> (128 Mbytes)
> build/X86/sim/kernel_workload.cc:46: info: kernel located at:
> vmlinux-4.19.83
> build/X86/dev/serial/terminal.cc:170: warn:
> Sockets disabled, not accepting terminal connections
> build/X86/dev/storage/disk_image.cc:95: panic:
> Error opening disk-image/spec2017/spec2017-image/spec2017
> Memory Usage: 8726460 KBytes
> Program aborted at tick 0
> --- BEGIN LIBC BACKTRACE ---
> gem5/build/X86/gem5.opt(+0x951420)[0x55d0ad0f7420]
> gem5/build/X86/gem5.opt(+0x97407e)[0x55d0ad11a07e]
> /lib/x86_64-linux-gnu/libpthread.so.0(+0x153c0)[0x7f63f0e9a3c0]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xcb)[0x7f63f047518b]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x12b)[0x7f63f0454859]
> gem5/build/X86/gem5.opt(+0x345fb5)[0x55d0acaebfb5]
> gem5/build/X86/gem5.opt(+0x107f1a0)[0x55d0ad8251a0]
> gem5/build/X86/gem5.opt(+0x107f37d)[0x55d0ad82537d]
> gem5/build/X86/gem5.opt(+0x1448796)[0x55d0adbee796]
> gem5/build/X86/gem5.opt(+0x1449a66)[0x55d0adbefa66]
> gem5/build/X86/gem5.opt(+0x31a261)[0x55d0acac0261]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x2a8738)[0x7f63f1150738]
>
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyObject_MakeTpCall+0xab)[0x7f63f1150b1b]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x2a8de0)[0x7f63f1150de0]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f63f0f1cd6d]
>
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x7d86)[0x7f63f0f24ef6]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x8006b)[0x7f63f0f2806b]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x2a8daa)[0x7f63f1150daa]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f63f0f1cd6d]
>
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x7d86)[0x7f63f0f24ef6]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x8006b)[0x7f63f0f2806b]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x2a8daa)[0x7f63f1150daa]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f63f0f1cd6d]
>
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x7d86)[0x7f63f0f24ef6]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x8006b)[0x7f63f0f2806b]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x2a8daa)[0x7f63f1150daa]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f63f0f1cd6d]
>
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x7d86)[0x7f63f0f24ef6]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x8006b)[0x7f63f0f2806b]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x2a8daa)[0x7f63f1150daa]
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f63f0f1cd6d]
>
> /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x7d86)[0x7f63f0f24ef6]
> --- END LIBC BACKTRACE ---
> ReplyForward
> ___
> gem5-users mailing list -- gem5-users@gem5.org
> To unsubscribe send an email to gem5-users-le...@gem5.org
> 

[gem5-users] Re: illegal instruction in RISCV mode

2021-07-30 Thread Hoa Nguyen via gem5-users
Hi,

riscv-tests is currently not well-supported as there are several
outstanding issues mentioned here:
https://gem5.atlassian.net/browse/GEM5-938

Regards,
Hoa Nguyen

On 7/29/21, Boya Chen via gem5-users  wrote:
> Hi, all
>
> I use the latest v21.1 gem5 to run RISCV simulation, using the workloads
> provided by gem5-resources
> but for a simple simulation like this: ./build/RISCV/gem5.opt
> configs/example/se.py -c qsort.riscv
> there will be a panic as below
> "panic: Illegal instruction 0x3002a073 at pc 0x8040"
> which is a CSR instruction.
>
> The qsort.riscv is pre-built binary provided officially here
> http://dist.gem5.org/dist/v21-1/test-progs/riscv-tests/qsort.riscv
> Did I miss something?
> ___
> 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] Re: Trouble getting an image to mount

2021-07-12 Thread Hoa Nguyen via gem5-users
Hi,

Can you try changing the "--root-device" option in the command to run
gem5 to one of "/dev/vda1", "/dev/sda1", "/dev/hda", "/dev/vda",
"/dev/sda"?

Regards,
Hoa Nguyen

On 7/2/21, Eliot Moss via gem5-users  wrote:
> I've ried my best to follow the instruction on how to build a disk image
> using
> packer.  I obtained an image qemu built and that could mount on the host
> system using guestmount.  It is for ubuntu 18.04.  But when I try to mount
> it
> in gem5 it says it can't find a root partition (further details below).
>
> The same gem5 build can mount your ubuntu 18.04 image just fine.
>
> How can I figure out what I am doing wrong / differently that leads to the
> failure?
>
> Here is the proximal gem5 output (full system.pc.com_1.device file
> attached)
> along with the terminal output from the command running gem5
> ==
> VFS: Cannot open root device "hda1" or unknown-block(3,1): error -6
> Please append a correct "root=" boot option; here are the available
> partitions:
> 0100   16384 ram0
>   (driver?)
> 0101   16384 ram1
>   (driver?)
> 0102   16384 ram2
>   (driver?)
> 0103   16384 ram3
>   (driver?)
> 0104   16384 ram4
>   (driver?)
> 0105   16384 ram5
>   (driver?)
> 0106   16384 ram6
>   (driver?)
> 0107   16384 ram7
>   (driver?)
> 0108   16384 ram8
>   (driver?)
> 0109   16384 ram9
>   (driver?)
> 010a   16384 ram10
>   (driver?)
> 010b   16384 ram11
>   (driver?)
> 010c   16384 ram12
>   (driver?)
> 010d   16384 ram13
>   (driver?)
> 010e   16384 ram14
>   (driver?)
> 010f   16384 ram15
>   (driver?)
> 0300 2792256 hda
>   driver: ide-gd
> Kernel panic - not syncing: VFS: Unable to mount root fs on
> unknown-block(3,1)
> ==
>
> Here's the output from my script:
> ==
> Global frequency set at 1 ticks per second
> warn: DRAM device capacity (8192 Mbytes) does not match the address range
> assigned (4096 Mbytes)
> info: kernel located at: ../work/gem5-images/vmlinux-4.15.0-147-151-ubuntu
> system.pc.com_1.device: Listening for connections on port 3456
> 0: system.remote_gdb: listening for remote gdb on port 7000
> warn: Reading current count from inactive timer.
> gem5 Simulator System.  http://gem5.org
> gem5 is copyrighted software; use the --copyright option for details.
>
> gem5 version 21.0.1.0
> gem5 compiled Jun 26 2021 03:16:35
> gem5 started Jul  2 2021 17:06:28
> gem5 executing on xclean-moss-25980, pid 38
> command line: build/X86/gem5.fast configs/full_system/myfs.py --mem-size=3GB
>
> --cpu-type=AtomicSimpleCPU --caches --l2cache --os-type=linux
> --kernel=../work/gem5-images/vmlinux-4.15.0-147-151-ubuntu
> --disk-image=../work/gem5-images/build/ubuntu1804.img
> --root-device=/dev/hda1 --command-line
> 'earlyprintk=ttyS0 console=ttyS0 lpj=723 root=%(rootdev)s mem=%(mem)s'
>
>  REAL SIMULATION 
> warn: iobus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: bridge.master is deprecated. `master` is now called `mem_side_port`
> warn: membus.master is deprecated. `master` is now called `mem_side_ports`
> warn: bridge.slave is deprecated. `slave` is now called `cpu_side_port`
> warn: iobus.master is deprecated. `master` is now called `mem_side_ports`
> warn: apicbridge.slave is deprecated. `slave` is now called `cpu_side_port`
> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: apicbridge.master is deprecated. `master` is now called
> `mem_side_port`
> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: iobus.master is deprecated. `master` is now called `mem_side_ports`
> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.master is deprecated. `master` is now called `mem_side_ports`
> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: membus.master is deprecated. `master` is now called `mem_side_ports`
> warn: membus.master is deprecated. `master` is now called `mem_side_ports`
> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
> info: Entering event queue @ 0.  Starting simulation...
> warn: x86 cpuid family 0x: unimplemented function 6
> warn: x86 cpuid family 0x: unimplemented function 6
> warn: x86 cpuid family 0x: unimplemented function 6
> warn: instruction 'fninit' unimplemented
> warn: Don't know what interrupt to clear for console.
> warn: instruction 'sgdt_Ms' unimplemented
> warn: x86 cpuid family 0x: unimplemented function 6
> warn: x86 cpuid 

[gem5-users] Re: KVM patch for FS mode and PARSEC on gem5-21

2021-06-10 Thread Hoa Nguyen via gem5-users
Hi Rajesh,

I assume that you're on the develop branch of gem5. You can remove the line

self.intrctrl = IntrControl()

to fix the config file.

Regards,
Hoa Nguyen

On Wed, Jun 9, 2021, 10:26 PM Rajesh Shashi Kumar via gem5-users <
gem5-users@gem5.org> wrote:

> Hi Ayaz,
>
> Thank you very much. That was indeed the issue. I also noticed that the
> following was missing in configs/system/system.py. After adding this line,
> I'm able to get FS,PARSEC simulations running on gem5-v21
>
>*self.intrctrl = IntrControl()*
>
> Error message:
> ```
> Error in unproxying param 'intrctrl' of system.pc
> Traceback (most recent call last):
>   File "", line 1, in 
>   File "build/X86/python/m5/main.py", line 455, in main
>   File "/home/rajesh/work/parsec-tests/configs/run_parsec.py", line 102,
> in 
> m5.instantiate()
>   File "build/X86/python/m5/simulate.py", line 88, in instantiate
>   File "build/X86/python/m5/SimObject.py", line 1599, in unproxyParams
>   File "build/X86/python/m5/proxy.py", line 134, in unproxy
> AttributeError: Can't resolve proxy 'any' of type 'IntrControl' from
> 'system.pc'
> ```
>
> Thank you for your time.
>
> -- Rajesh Shashi Kumar
>
>
> On Thu, Jun 10, 2021 at 3:20 AM Ayaz Akram  wrote:
>
>> Hi Rajesh,
>>
>> I think the error you are seeing is because tlbs are exposed through an
>> mmu unit in gem5 now. I guess changing line 117 in caches.py as in this
>> file (
>> https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stable/src/boot-exit/configs/system/caches.py)
>> should work for you.
>>
>> -Ayaz
>>
>> On Wed, Jun 9, 2021 at 2:04 PM Rajesh Shashi Kumar via gem5-users <
>> gem5-users@gem5.org> wrote:
>>
>>> Thank you for the quick response.
>>>
>>>
>>>- Thank you for confirming that the KVM fix has been integrated into
>>>the stable branch (pointing to gem5-v21.0). At this time, I have not
>>>managed to get PARSEC working in FS mode on the stable branch (v21.0) 
>>> and I
>>>am debugging the issue described below
>>>- For context, I encountered the following error on gem5-v21.0 while
>>>running PARSEC which made me explore reverting back to v20.1 (and the KVM
>>>patch) as described in the gem5art documentation. I'm using the latest
>>>PARSEC config run scripts from the gem5-resources repository
>>>
>>> 
>>>
>>> gem5 version 21.0.0.0
>>> gem5 compiled Jun 10 2021 01:34:21
>>> gem5 started Jun 10 2021 01:57:17
>>> gem5 executing on lenovo, pid 20958
>>> command line: gem5/build/X86/gem5.opt 
>>> /home/rajesh/tests/configs/run_parsec.py 
>>> /home/rajesh/tests/linux-stable/vmlinux-4.19.83 
>>> /home/rajesh/tests/disk-image/parsec/image/parsec.img kvm streamcluster 
>>> simsmall 1
>>>
>>> Traceback (most recent call last):
>>>   File "", line 1, in 
>>>   File "build/X86/python/m5/main.py", line 455, in main
>>>   File "/home/rajesh/tests/configs/run_parsec.py", line 79, in 
>>> system = MySystem(kernel, disk, cpu, int(num_cpus))
>>>   File "/home/rajesh/tests/configs/system/system.py", line 78, in __init__
>>> self.createCacheHierarchy()
>>>   File "/home/rajesh/tests/configs/system/system.py", line 158, in 
>>> createCacheHierarchy
>>> cpu.mmucache.connectCPU(cpu)
>>>   File "/home/rajesh/tests/configs/system/caches.py", line 117, in 
>>> connectCPU
>>> for tlb in [cpu.itb, cpu.dtb]:
>>>   File "build/X86/python/m5/SimObject.py", line 1379, in __getattr__
>>> AttributeError: object 'X86KvmCPU' has no attribute 'itb'
>>>   (C++ object is not yet constructed, so wrapped C++ methods are 
>>> unavailable.)
>>>
>>> Thank you for your time.
>>>
>>> -- Rajesh Shashi Kumar
>>>
>>> On Thu, Jun 10, 2021 at 12:51 AM Bobby Bruce  wrote:
>>>
 The "Fix KVM on Intel platforms" patch is on stable, it was added here:
 https://gem5-review.googlesource.com/c/public/gem5/+/12278

 The other patch your cherry-picking I'm less sure of, but I dont think
 it's a relevant problem anymore from what I can ascertain.

 I apologize that the gem5art documentation is using such an old version
 of gem5. Have you managed to get this working with the stable branch
 (version 21.0)? I'm not aware of any reason why it shouldn't work.

 --
 Dr. Bobby R. Bruce
 Room 3050,
 Kemper Hall, UC Davis
 Davis,
 CA, 95616

 web: https://www.bobbybruce.net


 On Wed, Jun 9, 2021 at 7:06 AM Rajesh Shashi Kumar via gem5-users <
 gem5-users@gem5.org> wrote:

> Hi,
>
> I'm attempting to run PARSEC benchmarks in FS mode on gem5-v21.0. I
> have encountered an issue with KVM on Intel machine. I believe the same 
> was
> addressed by this patch
>  recommended
> earlier in the mailing list
> 
> .
>
>

[gem5-users] Re: Error Building the Disk Image SPEC CPU2017 using packer

2021-06-02 Thread Hoa Nguyen via gem5-users
Hi Ange-Thierry,

The logs and the packer script seem fine to me.

The installation process might get stuck somewhere and it doesn't show here.

You can use VNC to inspect the process as detailed here:
https://gem5art.readthedocs.io/en/latest/main-doc/disks.html#ii-inspect-the-building-process

The VNC port to connect to should be shown in the log. It looks like,

qemu: The VM will be run headless, without a GUI. If you want to
qemu: view the screen of the VM, connect via VNC without a
password to
qemu: vnc://127.0.0.1:5982


Regards,
Hoa Nguyen

On 6/2/21, Ange via gem5-users  wrote:
> Hi,
>
> I have attached the PACKER_LOG as a link to an image because, as I mentioned
> earlier, it stalls the whole VM, and I can't do anything.
> From the last 3 logs, it stalls when the build is looking for an image
> format, but I checked the spec-2017.json(attached below) file, and it
> clearly states the format is raw.
> I am looking into something similar to this solution
> https://unix.stackexchange.com/questions/276480/booting-a-raw-disk-image-in-qemu
>
> but I have no luck so far.
>
> //PACKER_LOG file
> https://drive.google.com/file/d/1GfVFFVEDO6VZx4X2RJUpqZ7vzFRFzoa9/view?usp=sharing
>
> //spec-2017.json file
> https://drive.google.com/file/d/1dGQ84TFh3e3mwYHNHrGPzV5iHIgxniY6/view?usp=sharing
> ___
> 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] Re: 答复: Re: SPEC2017 in FS mode

2021-05-30 Thread Hoa Nguyen via gem5-users
Hi Victor,

Thanks for reporting these problems! It really helps us improve the resources.

Regarding 1), I'm not sure about the cause of the error. However,
please make sure that you are using gem5/stable with
gem5-resources/stable. An alternative is to use gem5/develop with
gem5-resources/develop.

As a note, the current spec-2017 configs in gem5-resources/stable is
broken. To fix this, you'll need to cherry-pick this change
(https://gem5-review.googlesource.com/c/public/gem5-resources/+/46219).
There is a download button telling the commands could be used to
cherry-pick the change.

Regarding 2a), it seems that celery has changed since we made that
tutorials. An alternative is to use run_job_pool() as specified here
(https://gem5art.readthedocs.io/en/latest/main-doc/faq.html) and here
(https://gem5art.readthedocs.io/en/latest/main-doc/tasks.html#use-of-python-multiprocessing).

Regarding 2b), it should be "experiments_repo" that is defined earlier
in the tutorial instead of "run_script_repo".

Regards,
Hoa Nguyen

On 5/27/21, Victor Kariofillis via gem5-users  wrote:
> First of all, thanks Hoa for the help. Indeed, there was an issue with the
> gcc directory.
>
> Unfortunately, I'm having some other issues as well.
>
> 1) With the gem5 resources method, the intrate benchmarks build and train
> successfully in the vm. (Only 502.gcc_r has a problem). However, using
> run_spec.py to run them with gem5 results in an error.
>
> Traceback (most recent call last):
>   File "", line 1, in 
>   File "build/X86/python/m5/main.py", line 457, in main
>   File "~/spec2017/gem5-resources/configs/run_spec.py", line 254, in
> 
> root, system = create_system(linux_kernel_path, disk_image_path,
>   File "~/spec2017/gem5-resources/configs/run_spec.py", line 142, in
> create_system
> system = MySystem(kernel = linux_kernel_path,
>   File "~/spec2017/gem5-resources/configs/system/system.py", line 63, in
> __init__
> self.system_port = self.membus.cpu_side_ports
>   File "build/X86/python/m5/SimObject.py", line 1277, in __getattr__
> *AttributeError: object 'SystemXBar' has no attribute 'cpu_side_ports'*
>   (C++ object is not yet constructed, so wrapped C++ methods are
> unavailable.)
>
> I know that gem5 has made some changes recently to the naming of the ports,
> but looking at SystemXBar there is definitely a cpu_side_ports object.
>
> 2) I've also tried the approach using gem5art based on this
> <http://www.gem5.org/documentation/gem5art/tutorials/spec-tutorial>
> tutorial. There are two issues.
> a) I get an error that there is no -E option for the celery command.
> Looking at the documentation of celery and at --help, there's no mention of
> an -E option.
> b) At the end of the launch_spec2017_experiment.py file, there is mention
> of run_script_repo that is not defined as an artifact beforehand. Should it
> be defined, and if yes how?
>
> Thanks,
> Victor
>
> On Tue, 25 May 2021 at 14:05, Bobby Bruce via gem5-users <
> gem5-users@gem5.org> wrote:
>
>> FYI: Hoa has a fix for this, reported here:
>> https://gem5.atlassian.net/browse/GEM5-996.
>>
>> Thanks Hoa!
>> --
>> Dr. Bobby R. Bruce
>> Room 3050,
>> Kemper Hall, UC Davis
>> Davis,
>> CA, 95616
>>
>> web: https://www.bobbybruce.net
>>
>>
>> On Mon, May 24, 2021 at 4:22 AM Hoa Nguyen via gem5-users <
>> gem5-users@gem5.org> wrote:
>>
>>> Hi Victor,
>>>
>>> I see the problem now.
>>>
>>> In install-spec2017 script line 21
>>> (
>>> https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stable/src/spec-2017/disk-image/spec-2017/install-spec2017.sh#21
>>> ),
>>> we replace the default gcc_dir so that specmake will use
>>> Ubuntu-installed gcc rather than spec's one.
>>> More specifically, it will replace
>>> gcc_dir = "/opt/rh/devtoolset-7/root/usr"
>>> by
>>> gcc_dir = "/usr"
>>>
>>> However, in your SPEC 2017 disc, it comes with devtoolset-9 and not
>>> devtoolset-7.
>>>
>>> So, one way to fix that is to change "devtoolset-7" in the line 21 to
>>> "devtoolset-9".
>>>
>>> Regards,
>>> Hoa Nguyen
>>>
>>> On 5/20/21, Victor Kariofillis via gem5-users 
>>> wrote:
>>> > Hi Hoa,
>>> >
>>> > Thanks for the help. I'm able now to look into why the builds fail.
>>> >
>>> > The gcc and gfortran commands are not found, which is weird since in
>>> > *install-spec2017.sh* there is a comma

[gem5-users] Re: Error Building the Disk Image SPEC CPU2017 using packer

2021-05-30 Thread Hoa Nguyen via gem5-users
Hi,

The log seems to indicate that QEMU cannot use KVM on your machine.
To resolve this problem, you can either enable KVM, or choose not to
use KVM for creating the disk image.
To not to use KVM, you'll need to remove the line:
"accelerator": "kvm"
in this file: 
https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stable/src/spec-2017/disk-image/spec-2017/spec-2017.json#9.

Regards,
Hoa Nguyen

On 5/30/21, Ange via gem5-users  wrote:
> Hi,
>
> I am new to gem5, and I am trying to run SPEC CPU 2017 benchmark in full
> system simulation on X86. I have been following this tutorial
> https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stable/src/spec-2017,
> but I am getting errors building my cpu2017-1.1.0.iso file using packer
> ( ./packer build spec-2017/spec-2017.json). I have looked at the log, and I
> think my error is coming from one of the log messages below; I have been
> trying to fix this issue, but I have not been successful.
>
> packer version v1.3.4
> ubuntu version 20.04
>
> 2021/05/28 14:35:39 packer-builder-qemu plugin: Started Qemu. Pid: 3412
> 2021/05/28 14:35:39 packer-builder-qemu plugin: Qemu stderr: WARNING: Image
> format was not specified for '/tmp/packer701940508' and probing guessed
> raw.
> 2021/05/28 14:35:39 packer-builder-qemu plugin: Qemu stderr:
> Automatically detecting the format is dangerous for raw images, write
> operations on block 0 will be restricted.
> 2021/05/28 14:35:39 packer-builder-qemu plugin: Qemu stderr:
> Specify the 'raw' format explicitly to remove the restrictions.
> 2021/05/28 14:35:39 packer-builder-qemu plugin: Qemu stderr: Could not
> access KVM kernel module: No such file or directory
> 2021/05/28 14:35:39 packer-builder-qemu plugin: Qemu stderr:
> qemu-system-x86_64: failed to initialize KVM: No such file or directory
> 2021/05/28 14:35:39 ui error:  [1;31m==> qemu: Error launching VM: Qemu
> failed to start. Please run with PACKER_LOG=1 to get more info. [0m
> 2021/05/28 14:35:39 packer-builder-qemu plugin: failed to unlock port
> lockfile: close tcp 127.0.0.1:5994: use of closed network connection
> 2021/05/28 14:35:39 packer-builder-qemu plugin: failed to unlock port
> lockfile: close tcp 127.0.0.1:3853: use of closed network connection
> 2021/05/28 14:35:39 packer-builder-qemu plugin: Deleting floppy disk:
> /tmp/packer701940508
> ___
> 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] Re: 答复: Re: SPEC2017 in FS mode

2021-05-25 Thread Hoa Nguyen via gem5-users
Hi Liyichao,

We don't have any plan of supporting aarch64 in near future.

Regards,
Hoa Nguyen

On 5/24/21, Liyichao  wrote:
> Thank you for your reply.
>
> Any plans to support for aarch64?
>
>
>
>
>
> 
>
> 发件人: Hoa Nguyenmailto:hoangu...@ucdavis.edu>>
> 收件人: Liyichaomailto:liyic...@huawei.com>>
> 抄送: gem5 users mailing
> listmailto:gem5-users@gem5.org>>
> 主题: Re: 答复: [gem5-users] Re: SPEC2017 in FS mode
> 时间: 2021-05-24 19:12:57
>
> Hi Liyichao,
>
> Currently, the spec-2017 image only works with X86.
>
> Regards,
> Hoa Nguyen
>
> On 5/20/21, Liyichao  wrote:
>> Hi Hoa:
>>Is the spec-2017 img just for X86?
>>
>>      Does it support for AARCH64?Does it support for running with KVM+O3?
>>
>>
>> -邮件原件-
>> 发件人: Hoa Nguyen via gem5-users [mailto:gem5-users@gem5.org]
>> 发送时间: 2021年5月19日 19:09
>> 收件人: gem5 users mailing list 
>> 抄送: Hoa Nguyen 
>> 主题: [gem5-users] Re: SPEC2017 in FS mode
>>
>> Hi Victor,
>>
>> I'm not sure what caused the errors of building the spec benchmarks.
>>
>> Also, I'm not sure how to prevent the vm from being closed after the
>> builds
>> fail. However, there are a few steps can be done to exterminate the disk
>> image after the builds fail:
>> - In the file src/spec-2017/disk-image/spec-2017/install-spec2017.sh,
>> the last line "rm -f /home/gem5/spec2017/result/*" should be removed to
>> keep
>> the log generated by spec during benchmark compilation time.
>> - When running packer, you can run "./packer build -on-error=abort
>> spec-2017/spec-2017.json" to keep the disk image if the disk image
>> building
>> process fails.
>> - After that, you can mount the disk image and check the log file
>> generated
>> by spec.
>>
>> packer fails due to "output directory already exists". In this case,
>> you'll
>> need to remove the "spec-2017/spec-2017-image" folder before starting
>> packer
>> again.
>>
>> Regards,
>> Hoa Nguyen
>>
>> On 5/17/21, Victor Kariofillis via gem5-users 
>> wrote:
>>> Hi,
>>>
>>> I've tried running the SPEC2017 benchmarks in FS mode of gem5 using
>>> the instructions/files provided by the gem5 resources page.
>>>
>>> https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stabl
>>> e/src/spec-2017
>>>
>>> I've also followed the step by step instructions in the git repo for
>>> gem5-art.
>>>
>>> https://github.com/darchr/gem5art-experiments/blob/master/README.md
>>>
>>> Everything works as intended until the benchmarks are supposed to be
>>> built.
>>> All of them fail with one of the two following errors:
>>>
>>> 1) Error with make!
>>> 2) Error with fdo_make_pass1!
>>>
>>> First of all, why is this happening? Secondly, the vm closes after the
>>> builds fail. I don't have the opportunity to check the make.out files
>>> that have more information about the errors. Is there a way to prevent
>>> the connection from closing or reopening it again? Running it again
>>> with packer fails due to the directory existing already.
>>>
>>> I'd appreciate any help,
>>> Victor
>>>
>> ___
>> 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] Re: 答复: Re: SPEC2017 in FS mode

2021-05-24 Thread Hoa Nguyen via gem5-users
Hi Victor,

I see the problem now.

In install-spec2017 script line 21
(https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stable/src/spec-2017/disk-image/spec-2017/install-spec2017.sh#21),
we replace the default gcc_dir so that specmake will use
Ubuntu-installed gcc rather than spec's one.
More specifically, it will replace
gcc_dir = "/opt/rh/devtoolset-7/root/usr"
by
gcc_dir = "/usr"

However, in your SPEC 2017 disc, it comes with devtoolset-9 and not
devtoolset-7.

So, one way to fix that is to change "devtoolset-7" in the line 21 to
"devtoolset-9".

Regards,
Hoa Nguyen

On 5/20/21, Victor Kariofillis via gem5-users  wrote:
> Hi Hoa,
>
> Thanks for the help. I'm able now to look into why the builds fail.
>
> The gcc and gfortran commands are not found, which is weird since in
> *install-spec2017.sh* there is a command for installing them. In the
> terminal, I can clearly see that it is executed.
>
> qemu: build-essential is already the newest version (12.4ubuntu1).
>> qemu: gfortran is already the newest version (4:7.4.0-1ubuntu2.3).
>> qemu: 0 upgraded, 0 newly installed, 0 to remove and 176 not upgraded.
>>
>
> But when it's time to build spec benchmarks they fail.
>
> specmake: /opt/rh/devtoolset-9/root/usr/bin/gfortran: Command not found
>>
>
> Thanks
>
> On Thu, 20 May 2021 at 21:01, Liyichao via gem5-users 
> wrote:
>
>> Hi Hoa:
>> Is the spec-2017 img just for X86?
>>
>>  Does it support for AARCH64?Does it support for running with KVM+O3?
>>
>>
>> -邮件原件-
>> 发件人: Hoa Nguyen via gem5-users [mailto:gem5-users@gem5.org]
>> 发送时间: 2021年5月19日 19:09
>> 收件人: gem5 users mailing list 
>> 抄送: Hoa Nguyen 
>> 主题: [gem5-users] Re: SPEC2017 in FS mode
>>
>> Hi Victor,
>>
>> I'm not sure what caused the errors of building the spec benchmarks.
>>
>> Also, I'm not sure how to prevent the vm from being closed after the
>> builds fail. However, there are a few steps can be done to exterminate
>> the
>> disk image after the builds fail:
>> - In the file src/spec-2017/disk-image/spec-2017/install-spec2017.sh,
>> the last line "rm -f /home/gem5/spec2017/result/*" should be removed to
>> keep the log generated by spec during benchmark compilation time.
>> - When running packer, you can run "./packer build -on-error=abort
>> spec-2017/spec-2017.json" to keep the disk image if the disk image
>> building
>> process fails.
>> - After that, you can mount the disk image and check the log file
>> generated by spec.
>>
>> packer fails due to "output directory already exists". In this case,
>> you'll need to remove the "spec-2017/spec-2017-image" folder before
>> starting packer again.
>>
>> Regards,
>> Hoa Nguyen
>>
>> On 5/17/21, Victor Kariofillis via gem5-users 
>> wrote:
>> > Hi,
>> >
>> > I've tried running the SPEC2017 benchmarks in FS mode of gem5 using
>> > the instructions/files provided by the gem5 resources page.
>> >
>> > https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stabl
>> > e/src/spec-2017
>> >
>> > I've also followed the step by step instructions in the git repo for
>> > gem5-art.
>> >
>> > https://github.com/darchr/gem5art-experiments/blob/master/README.md
>> >
>> > Everything works as intended until the benchmarks are supposed to be
>> built.
>> > All of them fail with one of the two following errors:
>> >
>> > 1) Error with make!
>> > 2) Error with fdo_make_pass1!
>> >
>> > First of all, why is this happening? Secondly, the vm closes after the
>> > builds fail. I don't have the opportunity to check the make.out files
>> > that have more information about the errors. Is there a way to prevent
>> > the connection from closing or reopening it again? Running it again
>> > with packer fails due to the directory existing already.
>> >
>> > I'd appreciate any help,
>> > Victor
>> >
>> ___
>> 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] Re: 答复: Re: SPEC2017 in FS mode

2021-05-24 Thread Hoa Nguyen via gem5-users
Hi Liyichao,

Currently, the spec-2017 image only works with X86.

Regards,
Hoa Nguyen

On 5/20/21, Liyichao  wrote:
> Hi Hoa:
>   Is the spec-2017 img just for X86?
>
>  Does it support for AARCH64?Does it support for running with KVM+O3?
>
>
> -----邮件原件-----
> 发件人: Hoa Nguyen via gem5-users [mailto:gem5-users@gem5.org]
> 发送时间: 2021年5月19日 19:09
> 收件人: gem5 users mailing list 
> 抄送: Hoa Nguyen 
> 主题: [gem5-users] Re: SPEC2017 in FS mode
>
> Hi Victor,
>
> I'm not sure what caused the errors of building the spec benchmarks.
>
> Also, I'm not sure how to prevent the vm from being closed after the builds
> fail. However, there are a few steps can be done to exterminate the disk
> image after the builds fail:
> - In the file src/spec-2017/disk-image/spec-2017/install-spec2017.sh,
> the last line "rm -f /home/gem5/spec2017/result/*" should be removed to keep
> the log generated by spec during benchmark compilation time.
> - When running packer, you can run "./packer build -on-error=abort
> spec-2017/spec-2017.json" to keep the disk image if the disk image building
> process fails.
> - After that, you can mount the disk image and check the log file generated
> by spec.
>
> packer fails due to "output directory already exists". In this case, you'll
> need to remove the "spec-2017/spec-2017-image" folder before starting packer
> again.
>
> Regards,
> Hoa Nguyen
>
> On 5/17/21, Victor Kariofillis via gem5-users  wrote:
>> Hi,
>>
>> I've tried running the SPEC2017 benchmarks in FS mode of gem5 using
>> the instructions/files provided by the gem5 resources page.
>>
>> https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stabl
>> e/src/spec-2017
>>
>> I've also followed the step by step instructions in the git repo for
>> gem5-art.
>>
>> https://github.com/darchr/gem5art-experiments/blob/master/README.md
>>
>> Everything works as intended until the benchmarks are supposed to be
>> built.
>> All of them fail with one of the two following errors:
>>
>> 1) Error with make!
>> 2) Error with fdo_make_pass1!
>>
>> First of all, why is this happening? Secondly, the vm closes after the
>> builds fail. I don't have the opportunity to check the make.out files
>> that have more information about the errors. Is there a way to prevent
>> the connection from closing or reopening it again? Running it again
>> with packer fails due to the directory existing already.
>>
>> I'd appreciate any help,
>> Victor
>>
> ___
> 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] Re: SPEC2017 in FS mode

2021-05-20 Thread Hoa Nguyen via gem5-users
Hi Victor,

I'm not sure if you're looking at the newly generated disk image since the
files are identical to those in the spec2017 disc.

The spec-2017-image/spec-2017 file is the disk image file, which can be
mounted using "mount -o offset=1048576" without converting to ISO. The log
should be in [mountpoint]/home/gem5/spec/result/.

Regards,
Hoa Nguyen

On Thu, May 20, 2021, 2:33 PM Victor Kariofillis via gem5-users <
gem5-users@gem5.org> wrote:

> Hi Hoa,
>
> I tried the changes you proposed. After running the packer build command,
> the only thing that's in the spec-2017-image directory is a binary file.
> Shouldn't the disk image be a .img file or something like that? How can I
> look into the file system of the vm and check the build logs?
>
> I tried converting the binary file to an .iso and mounting that, but I'm
> seeing the exact same files as if I'm mounting the SPEC2017 iso.
>
> Thanks
>
> On Wed, 19 May 2021 at 07:09, Hoa Nguyen via gem5-users <
> gem5-users@gem5.org> wrote:
>
>> Hi Victor,
>>
>> I'm not sure what caused the errors of building the spec benchmarks.
>>
>> Also, I'm not sure how to prevent the vm from being closed after the
>> builds fail. However, there are a few steps can be done to exterminate
>> the disk image after the builds fail:
>> - In the file src/spec-2017/disk-image/spec-2017/install-spec2017.sh,
>> the last line "rm -f /home/gem5/spec2017/result/*" should be removed
>> to keep the log generated by spec during benchmark compilation time.
>> - When running packer, you can run "./packer build -on-error=abort
>> spec-2017/spec-2017.json" to keep the disk image if the disk image
>> building process fails.
>> - After that, you can mount the disk image and check the log file
>> generated by spec.
>>
>> packer fails due to "output directory already exists". In this case,
>> you'll need to remove the "spec-2017/spec-2017-image" folder before
>> starting packer again.
>>
>> Regards,
>> Hoa Nguyen
>>
>> On 5/17/21, Victor Kariofillis via gem5-users 
>> wrote:
>> > Hi,
>> >
>> > I've tried running the SPEC2017 benchmarks in FS mode of gem5 using the
>> > instructions/files provided by the gem5 resources page.
>> >
>> >
>> https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stable/src/spec-2017
>> >
>> > I've also followed the step by step instructions in the git repo for
>> > gem5-art.
>> >
>> > https://github.com/darchr/gem5art-experiments/blob/master/README.md
>> >
>> > Everything works as intended until the benchmarks are supposed to be
>> built.
>> > All of them fail with one of the two following errors:
>> >
>> > 1) Error with make!
>> > 2) Error with fdo_make_pass1!
>> >
>> > First of all, why is this happening? Secondly, the vm closes after the
>> > builds fail. I don't have the opportunity to check the make.out files
>> that
>> > have more information about the errors. Is there a way to prevent the
>> > connection from closing or reopening it again? Running it again with
>> packer
>> > fails due to the directory existing already.
>> >
>> > I'd appreciate any help,
>> > Victor
>> >
>> ___
>> 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] Re: SPEC2017 in FS mode

2021-05-19 Thread Hoa Nguyen via gem5-users
Hi Victor,

I'm not sure what caused the errors of building the spec benchmarks.

Also, I'm not sure how to prevent the vm from being closed after the
builds fail. However, there are a few steps can be done to exterminate
the disk image after the builds fail:
- In the file src/spec-2017/disk-image/spec-2017/install-spec2017.sh,
the last line "rm -f /home/gem5/spec2017/result/*" should be removed
to keep the log generated by spec during benchmark compilation time.
- When running packer, you can run "./packer build -on-error=abort
spec-2017/spec-2017.json" to keep the disk image if the disk image
building process fails.
- After that, you can mount the disk image and check the log file
generated by spec.

packer fails due to "output directory already exists". In this case,
you'll need to remove the "spec-2017/spec-2017-image" folder before
starting packer again.

Regards,
Hoa Nguyen

On 5/17/21, Victor Kariofillis via gem5-users  wrote:
> Hi,
>
> I've tried running the SPEC2017 benchmarks in FS mode of gem5 using the
> instructions/files provided by the gem5 resources page.
>
> https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stable/src/spec-2017
>
> I've also followed the step by step instructions in the git repo for
> gem5-art.
>
> https://github.com/darchr/gem5art-experiments/blob/master/README.md
>
> Everything works as intended until the benchmarks are supposed to be built.
> All of them fail with one of the two following errors:
>
> 1) Error with make!
> 2) Error with fdo_make_pass1!
>
> First of all, why is this happening? Secondly, the vm closes after the
> builds fail. I don't have the opportunity to check the make.out files that
> have more information about the errors. Is there a way to prevent the
> connection from closing or reopening it again? Running it again with packer
> fails due to the directory existing already.
>
> I'd appreciate any help,
> Victor
>
___
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] Re: Error while building gem5

2021-04-21 Thread Hoa Nguyen via gem5-users
Hi,

Can you be more specific about the command line and the gem5 version
that you used?

>From the screenshot, it seems to be a problem with LTO. You can
compile gem5 with --no-lto flag to not to use LTO for compiling.

Regards,
Hoa Nguyen

On 4/20/21, VAIDYA ROHINI VILAS  wrote:
> Hello,
> I am trying to build gem5 for X86 architecture but it does not successfully
> build due to errors.
> Here I am attaching a screenshot of the error.
> Please help me to solve this issue ASAP.
> THank you.
>
>
___
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] Re: Error while installing gem 5

2021-04-20 Thread Hoa Nguyen via gem5-users
Hi,

This discussion
(https://www.mail-archive.com/gem5-users@gem5.org/msg19294.html) might
have the information to make compiling process faster.

Regards,
Hoa Nguyen

On 4/19/21, VAIDYA ROHINI VILAS via gem5-users  wrote:
> Hi,
> No error message is there.
> process just stops at  [   LINK ]   -> ARM/gem5.opt
> 
> From: keshav via gem5-users 
> Sent: 20 April 2021 10:48
> To: gem5 users mailing list 
> Cc: keshav 
> Subject: [gem5-users] Re: Error while installing gem 5
>
> Hi,
>
> What's the error message that you get ?
>
> On Tue, 20 Apr, 2021, 10:31 am VAIDYA ROHINI VILAS via gem5-users,
> mailto:gem5-users@gem5.org>> wrote:
> Hello,
> while building ARM or X86 architecture on gem5 I am using command "scons
> build/X86/gem5.opt -j5" but scons is not yet build successfully. Here ,I
> have attached screenshot where building of ARM stops.
> Please, help me to solve this issue ASAP.
> Thank you.
> 
> From: ahmad sedigh via gem5-users
> mailto:gem5-users@gem5.org>>
> Sent: 19 April 2021 13:31
> To: gem5 users mailing list
> mailto:gem5-users@gem5.org>>
> Cc: ahmad sedigh mailto:ahmad.sb...@gmail.com>>
> Subject: [gem5-users] Re: Error while installing gem 5
>
> Hello,
> At this stage you should just press enter and continue.
> The warning is negligible.
>
> Ahmad
>
> On Mon, Apr 19, 2021 at 1:55 PM VAIDYA ROHINI VILAS via gem5-users
> mailto:gem5-users@gem5.org>> wrote:
> Hello ,
> I am trying to download gem5 in my new system having ubuntu version 20.04
> using "git clone
> https://github.com/gem5/gem5.git" . I also
> tried from official documentation of gem 5 but while building gem5 using
> command  "scons build/ARM/gem5.opt -j5"   i am getting error as "Scons:
> Reading SConscript files ...
>
> You're missing the gem5 style or commit message hook. These hooks help
> to ensure that your code follows gem5's style rules on git commit.
> This script will now install the hook in your .git/hooks/ directory.
> Press enter to continue, or ctrl-c to abort:  "
> Please help me to solve this error ASAP.
> Thank you.
>
>
> ___
> 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] Re: Error while installing gem 5

2021-04-19 Thread Hoa Nguyen via gem5-users
Hi,

The message is not an error. It means that if you press enter, the git
commit hook will be installed and then gem5 will be compiled; while
ctrl+c will exit the compiling program.

Regards,
Hoa Nguyen

On 4/19/21, VAIDYA ROHINI VILAS  wrote:
> Hello ,
> I am trying to download gem5 in my new system having ubuntu version 20.04
> using "git clone
> https://github.com/gem5/gem5.git" . I also
> tried from official documentation of gem 5 but while building gem5 using
> command  "scons build/ARM/gem5.opt -j5"   i am getting error as "Scons:
> Reading SConscript files ...
>
> You're missing the gem5 style or commit message hook. These hooks help
> to ensure that your code follows gem5's style rules on git commit.
> This script will now install the hook in your .git/hooks/ directory.
> Press enter to continue, or ctrl-c to abort:  "
> Please help me to solve this error ASAP.
> Thank you.
>
>
>
___
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] Re: About links on learing gem5

2021-04-12 Thread Hoa Nguyen via gem5-users
Hi,

Thank you for reporting this bug. The links have been updated!

Regards,
Hoa Nguyen

On 4/6/21, Ahmad SB via gem5-users  wrote:
> Hi
> Links on https://www.gem5.org/documentation/learning_gem5 are not valid
> anymore (e.g.
> gem5.org/dist/current/gem5/cpu_tests/benchmarks/bin/arm/Bubblesort )
> It would be much appreciated if the links revised correctly.
> Best Regards
> ___
> 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] Re: can't reset stats.txt when using KVM CPU

2021-04-12 Thread Hoa Nguyen via gem5-users
Hi,

final_tick and sim_insts are RootStats (they are in src/sim/root.cc)
and they won't be reset by calling reset stats.

Regards,
Hoa Nguyen

On 4/11/21, kong han via gem5-users  wrote:
> Hi all,
> Now I using the KVM CPU to run fs mode, and I try two ways to reset the
> m5out/stats.txt but all can’t work.
>
> 1)  I use the m5.stats.reset() and m5.stats.dump() functions in the
> python script before switch cpu, the m5out/stats.txt will be written. But
> then I use m5.stats.reset() and m5.stats.dump() before next times, the
> m5out/stats.txt has no changes, the final_tick, sim_insts will not be reset
> to start from 0.
>
> 2)  So I try to use the m5 –addr 0x1001
> dumpstats/resetstats/dumpresetstats after connect by m5term, but the same
> problem is still.
> I would appreciate it if someone can help me explain this problem.
>
>
>
>
___
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] Re: Maybe pipeview script has some version compatibility issues?

2021-04-12 Thread Hoa Nguyen via gem5-users
Hi,

Thanks for reporting this bug. It is indeed a python3 compatibility
issue, which is is addressed here
https://gem5-review.googlesource.com/c/public/gem5/+/7 and will be
merged to the develop branch soon.

Regards,
Hoa Nguyen

On 4/12/21, Gabe Black via gem5-users  wrote:
> Maybe a python 2 vs 3 issue? I haven't used this script myself.
>
> Gabe
>
> On Mon, Apr 12, 2021 at 2:02 AM weiwei Zhao via gem5-users <
> gem5-users@gem5.org> wrote:
>
>> cmd:./util/o3-pipeview.py -c 1000 -o DP1d_corr/pipeview.out --color
>> DP1d_corr/trace.out
>>
>> Processing trace...  Traceback (most recent call last):
>>   File "./util/o3-pipeview.py", line 379, in 
>> main()
>>   File "./util/o3-pipeview.py", line 371, in main
>> *(tick_range + inst_range))
>>   File "./util/o3-pipeview.py", line 142, in process_trace
>> queue_inst(outfile, curr_inst, cycle_time, width, color, timestamps,
>> store_completions)
>>   File "./util/o3-pipeview.py", line 162, in queue_inst
>> print_insts(outfile, cycle_time, width, color, timestamps,
>> store_completions, insts['min_threshold'])
>>   File "./util/o3-pipeview.py", line 167, in print_insts
>> insts['queue'].sort(compare_by_sn)
>> TypeError: must use keyword argument for key function
>> ___
>> 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] Re: ISSUES FACING WHILE INTEGRATING GEM5 AND DRAMSIM3

2021-04-02 Thread Hoa Nguyen via gem5-users
Hi all,

This pull request (https://github.com/takekoputa/gem5/pull/2/files)
contains an example of how to add DRAMsim3 to the
configs/common/MemConfigs.py file. Please replace the hardcoded path
to an .ini with a path in your system.

There were mem_ranges having overlapping ranges because
create_mem_intf() was called with DRAMsim3. This results in 2 mem
controllers (one for the DRAM interface, one for DRAMsim3) with
overlapping ranges. It wasn't necessary to call create_mem_intf() for
DRAMsim3.

Regards,
Hoa Nguyen

On 3/31/21, Veronia Iskandar via gem5-users  wrote:
> Hello,
>
>
>
> I’m having the same issue with the address range intersection when I use any
> dramsim3 config file
>
>
>
> Sent from Mail for Windows 10
>
>
___
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] Re: Problem with FS mode Gem5

2021-03-21 Thread Hoa Nguyen via gem5-users
Hi,

Can you be elaborate more about the issue? Such as what is the command line
and what binaries are you using to run fs.py.

It is possible that the guest program is waiting for some input from
users/stdin. Also, you can run fs.py with faster cpu models to verify
whether the guest program got stuck or gem5 being slow.

Regards,
Hoa Nguyen

On Sun, Mar 21, 2021, 1:27 PM keshav via gem5-users 
wrote:

> HI all,
>
> I am trying to run the fs.py file and the simulation is running for 3 days
> straight. I tried connecting to the local host using the telnet localhost
>  and saw the screen with *"Enter runlevel:" *What should I
> do? Can anyone help me out with it? Can anyone tell me what are the steps
> to be followed to run gem5 in full system emulation mode for X86 ISA ?
>
> Thanks and regards
> Keshav E
> SVCE
> ___
> 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] Re: Building ARM disk image by Packer

2021-03-18 Thread Hoa Nguyen via gem5-users
Hi Duc Anh,

I'm not sure the setup laid out in the tutorial would work for arm
system as we only tested it on x86 arch. However, I believe there are
forks of packer that would work with arm arch
(https://www.packer.io/community-tools), and there are also tutorials
for using packer to build disk images for arm devices, such as
Raspberry Pi.

arm also provides documentation of building Linux kernels
(https://www.gem5.org/documentation/general_docs/fullsystem/building_arm_kernel)
as well as offers built disk images/Linux
kernels(https://www.gem5.org/documentation/general_docs/fullsystem/guest_binaries).

Regards,
Hoa Nguyen

On 3/17/21, Đức Anh via gem5-users  wrote:
> Dear all,
>
> I am building an ARM64 disk image by Packer. However, I ran into the
> following error
>
> 2021/03/17 17:11:44 packer-builder-qemu plugin: Qemu stderr: WARNING: Image
>> format was not specified for '/tmp/packer554386766' and probing guessed
>> raw.
>> 2021/03/17 17:11:44 packer-builder-qemu plugin: Qemu stderr:
>>  Automatically detecting the format is dangerous for raw images, write
>> operations on block 0 will be restricted.
>> 2021/03/17 17:11:44 packer-builder-qemu plugin: Qemu stderr:
>>  Specify the 'raw' format explicitly to remove the restrictions.
>> 2021/03/17 17:11:44 packer-builder-qemu plugin: Qemu stderr:
>> qemu-system-aarch64: -drive
>> file=/home/dauto98/Repositories/gem5/configs/thesis/arm/disks/packer_cache/d60fab3d2cbda6b0379a55b2ab92292fe6342d41.iso,index=0,media=cdrom:
>> drive with bus=0, unit=0 (index=0) exists
>> 2021/03/17 17:11:44 packer-builder-qemu plugin: failed to unlock port
>> lockfile: close tcp 127.0.0.1:5945: use of closed network connection
>> 2021/03/17 17:11:44 packer-builder-qemu plugin: failed to unlock port
>> lockfile: close tcp 127.0.0.1:4188: use of closed network connection
>
>
> I am using ubuntu-18.04.2-server-arm64, QEMU emulator version 2.11.1(Debian
> 1:2.11+dfsg-1ubuntu7.36) to build the image. The preseed.cfg and
> serial-getty@.service file are the same as the one on this
> 
> tutorial
>
> I attach the packer json config file in the email, please have a look.
>
> How can I remove this error and build an image for ARM system?
>
> 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] Re: Disk image for FS

2021-03-04 Thread Hoa Nguyen via gem5-users
Hi Miguel,

Sorry for the late reply.

I don't know whether parsec.img would work with configs/fs.py;
however, we've been testing and using parsec.img with the gem5 configs
from gem5-resources
(https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stable/src/parsec/configs/)
[1].

You can modify the configs from [1] to run command line commands
(which, I guess, would have the same behaviors as --script from
configs/fs.py). Specifically, in the writeBenchScript() function in
run_parsec.py, the content inputted to bench_file.write() will
eventually be appended to .bashrc during gem5 simulation.

Since you mentioned newer Linux kernel versions, it is known that the
current state of the configs from [1] would run into a kernel panic
when running the simulation with newer Linux kernel versions. This
change (https://gem5-review.googlesource.com/c/public/gem5-resources/+/42261)
is supposed to fix the problem.

Regards,
Hoa Nguyen

Regards,
Hoa Nguyen

On 2/28/21, Miguel Antonio Avargues Gutiérrez via gem5-users
 wrote:
> Thanks for the help Hoa.
>
> I have downloaded the parsec.img disk image and the right kernel version
> from [1]. It seems to boot properly when using the fs.py config script
> but i don't get a terminal to interact with the simulated system using
> telnet. Is that expected because i need to use the --script parameter or
> am I missing something?
>
> Greetings,
> Miguel antonio Avargues Gutiérrez.
>
> El 28/02/2021 a las 3:10, Hoa Nguyen via gem5-users escribió:
>> Hi Miguel,
>>
>> For X86 full system simulation, specifically for creating custom disk
>> image that runs with newer Linux kernels, I believe gem5-resources has
>> the resources for that. More details can be found here,
>> - General introduction and artifacts:
>> https://www.gem5.org/documentation/general_docs/gem5_resources/ [1]
>> - Source code: https://gem5.googlesource.com/public/gem5-resources [2]
>> - Detailed instructions:
>> https://gem5art.readthedocs.io/en/latest/tutorials/boot-tutorial.html#creating-a-disk-image
>> [3] and
>> https://gem5art.readthedocs.io/en/latest/tutorials/npb-tutorial.html#creating-a-disk-image
>> [4]
>>
>>
>> - From link [1], you can find built disk images, which could be
>> manipulated to suite an experiment.
>> - From link [2], you can find examples of building disk images for
>> some benchmarks such as npb, parsec, gapbs and spec.
>> - Link [3] and link [4] offer some explanation of what happens when
>> the disk images are built. The same website
>> (https://gem5art.readthedocs.io/en/latest/) also has tutorials for
>> other benchmarks and there are outdated links to GitHub (which were
>> moved to [2]). We are working on updating the website.
>>
>>
>> Regarding compiling util/m5, the new command to compile it is
>> ```
>> scons build/x86/out/m5
>> ```
>> where "x86" could be replaced by other ISA.
>>
>>
>> I hope this helps.
>>
>>
>> Regards,
>> Hoa Nguyen
>>
>> On 2/27/21, Miguel Antonio Avargues Gutiérrez via gem5-users
>>  wrote:
>>> Hello everyone.
>>>
>>> I'm a pretty new user to gem5 and I've been trying to get a FS
>>> simulation going on with a newer kernel version and a custom disk image.
>>> Unfortunately i feel like my disk image isn't properly created since i
>>> can't get the simulation going. Is there any up-to-date tutorias about
>>> making a custom file image? All the tutorias i've found make references
>>> to files that i can't find in the simulator (such as
>>> util/m5/Makefile.x86). I am using version 20.0.0.3 and I can't change
>>> it.
>>>
>>> --
>>> Greetings,
>>> Miguel Antonio Avargues Gutiérrez.
>>> ___
>>> 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

[gem5-users] Re: Disk image for FS

2021-02-27 Thread Hoa Nguyen via gem5-users
Hi Miguel,

For X86 full system simulation, specifically for creating custom disk
image that runs with newer Linux kernels, I believe gem5-resources has
the resources for that. More details can be found here,
- General introduction and artifacts:
https://www.gem5.org/documentation/general_docs/gem5_resources/ [1]
- Source code: https://gem5.googlesource.com/public/gem5-resources [2]
- Detailed instructions:
https://gem5art.readthedocs.io/en/latest/tutorials/boot-tutorial.html#creating-a-disk-image
[3] and 
https://gem5art.readthedocs.io/en/latest/tutorials/npb-tutorial.html#creating-a-disk-image
[4]


- From link [1], you can find built disk images, which could be
manipulated to suite an experiment.
- From link [2], you can find examples of building disk images for
some benchmarks such as npb, parsec, gapbs and spec.
- Link [3] and link [4] offer some explanation of what happens when
the disk images are built. The same website
(https://gem5art.readthedocs.io/en/latest/) also has tutorials for
other benchmarks and there are outdated links to GitHub (which were
moved to [2]). We are working on updating the website.


Regarding compiling util/m5, the new command to compile it is
```
scons build/x86/out/m5
```
where "x86" could be replaced by other ISA.


I hope this helps.


Regards,
Hoa Nguyen

On 2/27/21, Miguel Antonio Avargues Gutiérrez via gem5-users
 wrote:
> Hello everyone.
>
> I'm a pretty new user to gem5 and I've been trying to get a FS
> simulation going on with a newer kernel version and a custom disk image.
> Unfortunately i feel like my disk image isn't properly created since i
> can't get the simulation going. Is there any up-to-date tutorias about
> making a custom file image? All the tutorias i've found make references
> to files that i can't find in the simulator (such as
> util/m5/Makefile.x86). I am using version 20.0.0.3 and I can't change it.
>
> --
> Greetings,
> Miguel Antonio Avargues Gutiérrez.
> ___
> 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] Re: Error coming while running gem5 in fs mode

2021-02-23 Thread Hoa Nguyen via gem5-users
Hi,

There is an whitespace between `gem5` and `2` in the path to the disk
image, so the parser thinks that
`2/full_system_images/aarch64-ubuntu-trusty-headless.img` is argument.

Regards,
Hoa Nguyen

On 2/23/21, VAIDYA ROHINI VILAS via gem5-users  wrote:
> Hello,
> I am trying to run gem5 in fs mode by using command .
>
> build/ARM/gem5.opt configs/example/fs.py --disk-image=/home/coep/gem5
> 2/full_system_images/aarch64-ubuntu-trusty-headless.img
>
> Error coming is as follows :
> " Error: script doesn't take any positional arguments"
> As i am new to in linux as well as in gem5 i am not getting what is this
> error .
> please help me to solve this error ASAP.
> Thank you in advance for your help.
>
___
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] Re: Adding new stats field for a class(PageTableWalker) in X86

2021-01-26 Thread Hoa Nguyen via gem5-users
Hi Krishnan,

I'm not sure if this would address the problem, but those are some
pointers to adding new stats.

The main data structure holding Stats object in gem5 is Stats::Group
implemented here
https://gem5.googlesource.com/public/gem5/+/e0441fa7a7c858d7e472fbb1e03089a9a11b8462/src/base/stats/group.hh.
For every Stats object (such as Stats::Scalar, Stats::Formula), it
must be associated with a Stats::Group (note that every SimObject is
also a Stats::Group).
This shows in the constructors of Stats::Scalar and the like, whose
the first parameter is a pointer to a Stats::Group.

This is an example of adding stats to a SimObject:

https://gem5.googlesource.com/public/gem5/+/e0441fa7a7c858d7e472fbb1e03089a9a11b8462/src/arch/x86/tlb.hh#104
https://gem5.googlesource.com/public/gem5/+/e0441fa7a7c858d7e472fbb1e03089a9a11b8462/src/arch/x86/tlb.cc#521

In this example, we created a Stats::Group inside the class whose the
stats, and use the ADD_STAT macro
(https://gem5.googlesource.com/public/gem5/+/e0441fa7a7c858d7e472fbb1e03089a9a11b8462/src/base/stats/group.hh#45)
to associate every Stats object with a Stats::Group.

I hope this is helpful. Please don't hesitate to ask any questions
about adding stats. This helps us improve the documentation about
Stats in gem5.

Regards,
Hoa Nguyen

On 1/25/21, krishnan gosakan via gem5-users  wrote:
> Hi all,
> I am trying to add a few new stat entries for the class Walker available in
> the file pagetable_walker.cc previously, no stas exist for this file. I
> added the function regstats and few stats::scalar variables. When I compile
> and run gem5, I get an error message "panic: Not all stats have been
> initialized. You may need to add ::regStats() to a new
> SimObject's regStats() function." I know I am missing something. Please let
> me know what to do to fix this. Thank you in advance.
>
> --
> Regards,
> Krishnan.
>
___
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] Re: Errors coming while running gem5 in full system mode

2021-01-19 Thread Hoa Nguyen via gem5-users
Hi,

I believe this is an error produced by a Python script. If the
configs/example/fs.py file has been modified, please check the
indentation of the modified part of the script for indentation
inconsistencies (for example, space indentations vs tab indentations).

Regards,
Hoa Nguyen

On 1/19/21, VAIDYA ROHINI VILAS via gem5-users  wrote:
> Hello,
> i am trying to run my own c code in fs mode of gem5.
> i am using command :"build/ARM/gem5.opt configs/example/fs.py
> --disk-image=/home/coep/full_system_images/disks/arm-ubuntu-natty-headless.img
>  --kernel=/home/coep/gem5/full_systems_images/binaries"
>
> error coming is : "IndentationError: unexpected indent"
> what changes should i do to solve this error...the indentation error is in
> command or any other script.
> Plese help me to solve this error.
>
___
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] Re: dumping specific stats

2020-12-01 Thread Hoa Nguyen via gem5-users
Hi,

Can you be a bit more specific about the error that you saw and the
version of gem5 that you're using?

I tried something similar and it worked for me,
build/ARM/gem5.opt configs/example/se.py --stats-root
'system.cpu[:].mmu.itb' --caches -c
tests/test-progs/hello/bin/arm/linux/hello --ruby -n 5

Another thing is that the --stats-root option only works for stats
that has been converted to the new style, and you might want to
checkout the develop branch, where more stats have been migrated to
the new style.

Regards,
Hoa Nguyen

On 11/27/20, POLYCHRONOU Nikolaos via gem5-users  wrote:
> Hello.
> I do m5 dumpresetstats every 0.1ms but the generated file exceeds 10Gb.
> I found that patch
> https://gem5-review.googlesource.com/c/public/gem5/+/28628
> which only keeps stats from root simobjects. In my case I need for example
> numCycles,
> exec_branches, predictedNotTakenIncorrect, branchPred.condPredicted,
> dcache.overall_hits, etc.
> I simulate with an O3 armv8 processor. I can define --stats-root
> 'system.cpu_cluster' but any other option i add is not accepted ie
> --stats-root 'system.cpu_cluster[:].cpus.icache'
> is not accepted. Is there an option to reduce the stats file size and only
> dump specific stas?
> Regards
> Niko
>
>
>
>
>
>
>
> [Leti_logo_mail]
>
>
>
>
>
> Nikolaos Foivos POLYCHRONOU
> PhD Student – Security of Embedded Systems/IoT/IIoT
> Département DSYS / LSOSP
>
> 17, rue des martyrs | 38000 Grenoble
> Fix work . +33 4 38 78 19 58
> Office Bat. 4022 - P. 221
> nikolaos.polychro...@cea.fr
>
> LETI, technology research institute
> Commissariat à l’énergie atomique et aux énergies alternatives
> www.leti.fr  | LETI is a member of the Carnot
> Institutes network
>
>
>
>
>
>
>
> [icone_youtube]
> [icone_twitter] [icone_linkedin]
> 
>
>
>
>
>
>
___
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] Re: Gem5 FS - Kernel panic - not syncing: Fatal exception in interrupt

2020-11-23 Thread Hoa Nguyen via gem5-users
HI Duc Anh,

It seems that you're using the default Linux kernel config, which
won't work with gem5. There are a few Linux kernel configs of older
versions that are known to work with gem5, and we can use them to
generate new ones that might work with gem5. You can find the known
working ones here
(https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stable/src/linux-kernel/linux-configs/).
You can pick one of the configs and copy it to the linux folder under
the name `.config`, then run `make oldconfig` and `make`. For `make
oldconfig`, we usually pick the default options. More details can be
found here 
(https://github.com/darchr/gem5art/blob/master/docs/linux-configs/README.md).

I don't know whether fs.py will work with the disk image. If it
doesn't, you can use the example configs from gem5-resources
(https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/develop/src/)
that we know their working status. You can find the example gem5
configs in `boot-exit`, `npb`, `parsec`, `gapbs`, `spec-2006` and
`spec-2017`, and the working status can be found here
(https://gem5-review.googlesource.com/c/public/gem5-website/+/35316).
Admittedly, this should be merged soon to the gem5 website.

Regards,
Hoa Nguyen

On 11/22/20, Đức Anh via gem5-users  wrote:
> Hello all,
>
> Sorry, I forget to attach the kernel config file. It is in this email.
>
> Best,
> Duc Anh
>
> Vào Th 7, 21 thg 11, 2020 vào lúc 23:18 Đức Anh  đã
> viết:
>
>> Hello everyone,
>>
>> I am new to running Gem5 in FS mode, and I'm trying to create a working
>> simulation but I got stuck with an error. Here is a part of the log,
>> which
>> I believe is an error log (it's not obvious to me). Below the log, I will
>> give more info about my setup.
>> ___output from m5term___
>> [6.760111]  setup_IO_APIC+0x34c/0x852
>> [6.761035]  ? clear_IO_APIC+0x39/0x60
>> [6.761984]  apic_intr_mode_init+0x100/0x102
>> [6.762832]  x86_late_time_init+0x24/0x35
>> [6.763683]  start_kernel+0x4fe/0x5c3
>> [6.764621]  x86_64_start_reservations+0x24/0x26
>> [6.765521]  x86_64_start_kernel+0x74/0x77
>> [6.766389]  secondary_startup_64+0xa4/0xb0
>> [6.767261] Modules linked in:
>> [6.767841] CR2: 0088
>> [6.768631] ---[ end trace cc3dac460086c1e2 ]---
>> [6.769560] RIP: 0010:tick_periodic+0x1b/0x80
>> [6.770426] Code: 41 5d 41 5e 41 5f 5d c3 0f 0b cc cc cc cc cc 66 66
>> 66
>> 66 90 55 39 3d 84 14 72 01 48 89 e5 74 26 65 48 8b 05 1f e8 ed 7e 31 ff
>>  80 88 00 00 00 03 40 0f 95 c7 e8 e5 fd fe ff bf 01 00 00 00 e8
>> [6.772347] RSP: :c9003e20 EFLAGS: 007c
>> [6.773213] RAX:  RBX: 827f46c0 RCX:
>> 
>> [6.774166] RDX:  RSI: 007c RDI:
>> 
>> [6.775150] RBP: c9003e20 R08:  R09:
>> 88801ec016d0
>> [6.776136] R10:  R11: 8266ade8 R12:
>> 7fff
>> [6.777103] R13:  R14: 0040 R15:
>> 88801f12b600
>> [6.778135] FS:  () GS:88801f40()
>> knlGS:
>> [6.779193] CS:  0010 DS:  ES:  CR0: 80050033
>> [6.780038] CR2: 0088 CR3: 0260a000 CR4:
>> 06b0
>> [6.780993] DR0:  DR1:  DR2:
>> 
>> [6.781949] DR3:  DR6: 0ff0 DR7:
>> 
>> [6.782862] Kernel panic - not syncing: Fatal exception in interrupt
>> [6.783865] ---[ end Kernel panic - not syncing: Fatal exception in
>> interrupt ]---
>> ___
>> _output from gem5
>> warn: x86 cpuid: unknown family 0x4000 (a lot of this cpuid warning)
>> warn: x86 cpuid: unknown family 0x4000
>> warn: instruction 'sgdt_Ms' unimplemented
>> _
>> I am using
>> - Gem5 20.1.0.2 (stable branch)
>> - Python 2.7.17
>> - gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)
>> - gem5 command: ./build/X86/gem5.opt configs/example/fs.py
>> --cpu-type="TimingSimpleCPU" --cpu-clock="1GHz"
>> --kernel="linux-5.9.9/vmlinux"
>> --disk-image="disk-image/ubuntu-image/ubuntu"
>> - packer 1.6.5 to create disk-image
>> - QEMU emulator version 2.11.1(Debian 1:2.11+dfsg-1ubuntu7.33)
>> How I create linux kernel:
>> - Download linux 5.9.9 kernel from kernel.org
>> - unpack the tar file
>> - run cp -v /boot/config-$(uname -r) .config to generate the config file
>> - run make
>> - make still prompted me to do some long configuration setup, too long
>> that I just held enter to accept the default option
>> I attached all the relevant files to this email.
>>
>> Thank you for your time.
>> 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] Re: FS KVM switching cpu

2020-11-23 Thread Hoa Nguyen via gem5-users
I'm glad it helped :D

Regards,
Hoa Nguyen

On Mon, Nov 23, 2020, 12:22 AM sujayyadalam--- via gem5-users <
gem5-users@gem5.org> wrote:

> So I was able to solve this by creating a new config from scratch.
>
> Previously, I was using a modified version of the fs.py.
> Now, I used the run_npb.py in gem5-resources as the start.
>
> I don't know what in fs.py causes this problem.
>
> Thanks Nguyen for your help!
> ___
> 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] Re: FS KVM switching cpu

2020-11-21 Thread Hoa Nguyen via gem5-users
Hi Sujay,

I'm not sure about the problem with the gem5 config.

You might want to take a look at gem5 resources
(https://gem5.googlesource.com/public/gem5-resources/).

The gem5 resources repo has the resources (including gem5 configs) for
running a workload in FS mode by booting with KVM and switching cpus. For
example, the NPB resource (
https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/stable/src/npb)
has the configs that boots Ubuntu with KVM and then switches to another cpu
type to run the workload. The case where switching from 8-core KVM to
8-core TimingSimpleCPU is tested with gem5 20.1 and the switching was
successful.

Regards,
Hoa Nguyen

On Sat, Nov 21, 2020, 3:32 AM sujayyadalam--- via gem5-users <
gem5-users@gem5.org> wrote:

> Hi all,
>
> I am trying to run x86 FS such that the kernel boot happens with X86KvmCPU
> and then switches to TimingCpu. I am able to boot successfully with
> X86KvmCPU. Unfortunately, when the cpus are switched, the simulation is
> stuck at "Entering event queue @ 20398889241500.  Starting simulation...".
>
> However, when I don't use separate event queues for each cpu, i.e. I
> remove the below code, then I can switchcpus successfully. The catch is
> that when I remove the below code, I can simulate 1 or 2 cores.
> for i,cpu in enumerate(test_sys.cpu):
> for obj in cpu.descendants():
>obj.eventq_index = 0
> cpu.eventq_index = i + 1
>
> Anybody have any idea what's happening? How can I scale to more than 2
> cores? or How can I fix the first issue of gem5 being stuck?
>
> About my setup:
>
> Config similar to that written by Jason (
> https://github.com/darchr/gem5/tree/jason/kvm-testing/configs/myconfigs )
> Kernel: linux-4.8.13 ( config obtained from
> http://www.lowepower.com/jason/files/config )
> Disk Image: Custom image based on Ubuntu 16.04
> Using ruby subsystem
> No significant changes to gem5 (forked from the stable branch 2 months
> ago) except for adding the changes related to KvmCPU. (
> https://gem5-review.googlesource.com/c/public/gem5/+/7361)
>
> Any help would be appreciated.
>
> Thanks,
> Sujay
> PhD Student
> UW Madison
> ___
> 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] Re: How to limit instructions number repeatedly!

2020-11-13 Thread Hoa Nguyen via gem5-users
Hi Tracy,

I think you can put scheduleInstStop() and m5.simulate() in a loop to do that.

Regards,
Hoa Nguyen

On 11/10/20, Tracy Mac via gem5-users  wrote:
> Hi All!
> I am trying to limit instructions number repeatedly,stop the simulation
> when the instruction is limited, do other operations, and continue the
> simulation until the next instruction limit,
> I find scheduleInstStop()(src/cpu/base.cc) realize this  function,but I
> can't call scheduleInstStop repeatedly.
> Is there a function to limit the number of CPU instructions multiple times
> in gem5
> I want to call scheduleInstStop() function in Simlation.py(configs/common)
> repeatedly,but I don't know how to set it.
> I hope you could give me some suggestions.
>
> Thanks
> Tracy
>
___
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] Re: When gem5 is debugged, how to judge the current position of data?

2020-11-13 Thread Hoa Nguyen via gem5-users
Hi,

I assume that you want to keep track of a piece of data at a specific
virtual/physical address. I don't know a definite answer to this, but
one thing you can do is to use the gem5 logging system (i.e. DPRINTF
and the like) and figure out what flags you should enable to keep
track of transactions in the memory hierarchy. Also, I believe
`Packet` objects are the ones that handle data transferring.

Regards,
Hoa Nguyen

On 11/12/20, yujiecui--- via gem5-users  wrote:
> In the process of step-by-step debugging of gem5, how can I know whether a
> data currently exists in cache or in memory, and what level of cache it is?
> I think gem5 should provide such a method?
> Thanks for answer.
> ___
> 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] Re: How to simulate multithread, multicore and multiprocessor system ?

2020-11-13 Thread Hoa Nguyen via gem5-users
Hi Duc Anh,

Can you please confirm that this change,
https://gem5-review.googlesource.com/c/public/gem5/+/36296, fixes the
stats error?

Regards,
Hoa Nguyen

On 11/12/20, Hoa Nguyen  wrote:
> 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  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 

[gem5-users] Re: Should I use FS or SE mode when measuring execution time?

2020-11-13 Thread Hoa Nguyen via gem5-users
Hi Duc Anh,

To answer the question about simulation speed, I believe the
difference between SE mode and FS mode is minimal. In addition to
that, kernel interactions, like process scheduler and page table
walks, have significant impact on system performance, so in most
cases, I believe it is more appropriate to choose FS over SE mode.

Regards,
Hoa Nguyen

On 11/12/20, Đức Anh via gem5-users  wrote:
> Dear gem5 team,
>
> I want to use gem5 to simulate a program to measure its execution time. My
> goal is to measure the execution time as close as possible to the real
> value, and that program is running in a heterogeneous platform, where other
> programs on other CPUs can affect the program execution time (memory, bus
> contention,...). I found this StackOverflow answer (
> https://stackoverflow.com/a/56371006/9868917) states that it depends on
> whether the kernel interaction and system noise matter to us. So in
> general, will FS or SE mode gives more accurate execution time? And how the
> syscall emulated in SE mode compare to the real syscall in FS mode in term
> of speed? I mean, does the syscall in SE always has a fixed speed and
> usually faster than FS?
>
> 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] Re: How to simulate multithread, multicore and multiprocessor system ?

2020-11-12 Thread Hoa Nguyen via gem5-users
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  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  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 

[gem5-users] Re: --Script parameter cannot be used

2020-11-11 Thread Hoa Nguyen via gem5-users
Hi Siqing,

You'll need to call "m5 readfile" in the simulated system (i.e., the
guest OS must call "m5 readfile" at some point), and the command will
output the content of the script that you pass from the host.

gem5 resources has some example of calling "m5 readfile" in the guest OS.

For example, this script is the content of .bashrc in the disk image,
so after the booting process, the guest OS will get the output of "m5
readfile" and run it.
https://gem5.googlesource.com/public/gem5-resources/+/refs/heads/develop/src/npb/disk-image/npb/runscript.sh

Regards,
Hoa Nguyen

On 11/10/20, 657029715--- via gem5-users  wrote:
> Hi Gabe:
> I compiled the m5 utility, do you know how to call it to work?
> blessing you.
>
> Siqing Fu
>
>
>
> 657029...@qq.com
>
> From: Gabe Black via gem5-users
> Date: 2020-11-10 07:30
> To: gem5 users mailing list
> CC: -17; Gabe Black
> Subject: [gem5-users] Re: --Script parameter cannot be used
> The --script option works by setting up a file for the m5 utility to read in
> from the actual on disk init script found in the disk image. If the m5
> utility isn't called, or is called incorrectly, or the script it extracts
> isn't then run, the --script option won't work.
>
> It's been a while, but I think the m5 utility command you want is "m5
> readfile".
>
> Gabe
>
> On Sun, Nov 8, 2020 at 10:55 PM -17 via gem5-users 
> wrote:
> Hi all:
> I try to use the “-- script ”parameter when running gem5 FS mode. I start
> gem5 as follows:
> /build/ARM/gem5.opt -d fs_results/rcstest configs/example/fs.py
> --cpu-type=AtomicSimpleCPU -n 1
> --disk-image=/home/fusiqing/gem5-20.1/2017sys/full_system_images/disks/gem5_ubuntu16.img
>
> --kernel=/home/fusiqing/gem5-20.1/2017sys/full_system_images/binaries/vmlinux
>
> --script=/home/gem5-20.1/configs/boot/halt.sh
> I started the simulation, but the script didn't run.The same goes for other
> files under /example/boot/.
> But in /config.ini I can see:
> readfile=/home/gem5-20.1/configs/boot/halt.sh
> May I ask what error occurred when I used the script?
> Thanks in advance.
>
>
>
>
> /**/
> NUDTSiqing Fu
>
> ___
> 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] Re: How to simulate multithread, multicore and multiprocessor system ?

2020-11-11 Thread Hoa Nguyen via gem5-users
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  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 
> đã 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
>> 
>> 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

[gem5-users] Re: How to use checkpoint for a specific code in the Gem5 full system mode.

2020-11-08 Thread Hoa Nguyen via gem5-users
Hi,

It should be `/sbin/m5 exit` instead of `/sbin/m5`.

Regards,
Hoa Nguyen

On 11/7/20, Hoa Nguyen  wrote:
> Hi,
>
> One way to do it is to use the `--debug-start TICK` option, which will
> start logging after `TICK` ticks.
>
> To figure out the number of simulated ticks, you can run `/sbin/m5` in
> the guest right before the ROI, then use `m5.curTick()` in the gem5
> system config. The output would be useful if the simulation before
> reaching the ROI is deterministic; but if the simulation is not, the
> output would provide a somewhat useful estimation.
>
> Regards,
> Hoa Nguyen
>
> On 11/6/20, Hasan, S M Shamimul via gem5-users  wrote:
>> Hello.
>>
>> I am running the Gem5 in full system mode. I am using the following
>> command.
>>
>> ===
>> build/X86/gem5.opt --debug-flags=DRAM --debug-file=trace.out
>> configs/example/fs.py --disk-image="/home/cosmogan-image/cosmogan"
>> --kernel="/home/gem5/pkr_cp/other/vmlinux-4.9.238"
>> --script="/home/gem5/pkr_cp/other/tmp.sh"
>> 
>>
>> My "tmp.sh" file contains the following code.
>> 
>> #!/bin/sh
>> /sbin/m5 checkpoint
>> cd /cosmoGAN/networks
>> python run_dcgan.py
>> /sbin/m5 exit
>> 
>>
>> The problem is the "trace.out" file that I got contains lots of memory
>> traces that I do not need (e.g., system boot related memory trace). I
>> need
>> memory traces for only the following code "python run_dcgan.py." How can
>> I
>> get it? Please let me know. Thanks a lot in advance.
>>
>> Sincerely,
>> S.M.Shamimul Hasan
>>
>>
>>
>>
>
___
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] Re: How to use checkpoint for a specific code in the Gem5 full system mode.

2020-11-07 Thread Hoa Nguyen via gem5-users
Hi,

One way to do it is to use the `--debug-start TICK` option, which will
start logging after `TICK` ticks.

To figure out the number of simulated ticks, you can run `/sbin/m5` in
the guest right before the ROI, then use `m5.curTick()` in the gem5
system config. The output would be useful if the simulation before
reaching the ROI is deterministic; but if the simulation is not, the
output would provide a somewhat useful estimation.

Regards,
Hoa Nguyen

On 11/6/20, Hasan, S M Shamimul via gem5-users  wrote:
> Hello.
>
> I am running the Gem5 in full system mode. I am using the following
> command.
>
> ===
> build/X86/gem5.opt --debug-flags=DRAM --debug-file=trace.out
> configs/example/fs.py --disk-image="/home/cosmogan-image/cosmogan"
> --kernel="/home/gem5/pkr_cp/other/vmlinux-4.9.238"
> --script="/home/gem5/pkr_cp/other/tmp.sh"
> 
>
> My "tmp.sh" file contains the following code.
> 
> #!/bin/sh
> /sbin/m5 checkpoint
> cd /cosmoGAN/networks
> python run_dcgan.py
> /sbin/m5 exit
> 
>
> The problem is the "trace.out" file that I got contains lots of memory
> traces that I do not need (e.g., system boot related memory trace). I need
> memory traces for only the following code "python run_dcgan.py." How can I
> get it? Please let me know. Thanks a lot in advance.
>
> Sincerely,
> S.M.Shamimul Hasan
>
>
>
>
___
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] Re: Gem5 Full System Mode - Memory Allocation Issue

2020-11-04 Thread Hoa Nguyen via gem5-users
Hi,

Can you check whether the "cannot allocate memory" occured in the host
system or the simulated system?

If it occurs on the simulated system then one thing you can do is to
increase the memory size in the gem5 system configuration.

Regards,
Hoa Nguyen

On Tue, Nov 3, 2020, 10:20 PM Hasan, S M Shamimul via gem5-users <
gem5-users@gem5.org> wrote:

> Hello,
>
> I have two C programs. In my first C program I am assigning 2GB memory
> space to an integer array and in my second C program I am assigning 4GB
> memory space to another integer array. I am assigning memory space via C's
> malloc() function. Both my first and second programs work fine on my Linux
> laptop (with 16GB memory).
>
> I have executed both first and second programs inside Gem5 in Full System
> (FS) mode. I observed that the first program was executed properly in Gem5.
> However, for the second program, I am getting the "Out of storage: Cannot
> allocate memory" message from the Gem5. Do you know why I am getting the
> above message? How to simulate more than 2GB memory in the Gem5 Full System
> mode? Please let me know.
>
> Thanks a lot.
>
> Sincerely,
> S.M.Shamimul Hasan
> ___
> 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] Re: How to set ROI in the program running in FS

2020-11-03 Thread Hoa Nguyen via gem5-users
Hi Siqing,

You can find the PARSEC ROI example mentioned in the webpage is here,
https://github.com/darchr/parsec-benchmark/commits/gem5-20-annotations

gem5-resources (https://gem5.googlesource.com/public/gem5-resources/)
has the documentation of setting up full system gem5 experiments with
several benchmarks including PARSEC benchmark, which also uses m5
annotations for ROI.

Regards,
Hoa Nguyen

On 11/3/20, -17 via gem5-users  wrote:
> Hi all:
> What I want to do now is to run a program in FS mode and observe the
> statistical differences among different code segments.
> I know that in SE mode, this work can be easily done with M5ops, for
> example, add a code:
> m5_dump_reset_stats(0,0)
> In the FS mode, M5ops can be input through the shell, for example, to exit
> the simulation:
> m5 exit
> And build checkpoint:
> m5 checkpoint
>
>
> So, for a program running in FS, obviously I cannot use the shell as input.
> In this case, how can I ignore the initialization of the program and some
> other stages and only get the statistics of the Region of Interest?
> This webpage introduces the configuration of ROI in PARSEC, but it seems not
> specific enough. Can anyone have any clear
> guidance?https://www.gem5.org/documentation/general_docs/checkpoints/
>
>
> /**/
>
> NUDT 
> Siqing Fu
>
>
> 
___
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] Re: How to solve problems when building M5ops

2020-11-03 Thread Hoa Nguyen via gem5-users
Hi Siqing,

It should be "x86" with a lowercase x rather than "X86".

Regards,
Hoa Nguyen

On Tue, Nov 3, 2020, 12:52 AM -17 via gem5-users 
wrote:

> Hi all:
>
> About a few months ago, I followed the guidelines of this link to
> successfully build M5ops:
>
> https://www.gem5.org/documentation/general_docs/m5ops/
>
> Now I am still using gem5-20.0 and have not updated to the new
> version, but when I run this command again:
>
> scons build/X86/out/m5
>
> I received a bug report, the following is the complete content:
>
> //
> Warning: Your compiler doesn't support incremental linking and lto at the
> same
>  time, so lto is being disabled. To force lto on anyway, use the
>  --force-lto option. That will disable partial linking.
> Info: Using Python config: python2.7-config
> Checking for C header file Python.h... (cached) yes
> Checking for C library python2.7... (cached) yes
> Checking for C library pthread... (cached) yes
> Checking for C library dl... (cached) yes
> Checking for C library util... (cached) yes
> Checking for C library m... (cached) yes
> Checking for accept(0,0,0) in C++ library None... (cached) yes
> Checking for zlibVersion() in C++ library z... (cached) yes
> Checking for GOOGLE_PROTOBUF_VERIFY_VERSION in C++ library protobuf...
> (cached) yes
> Checking for C header file valgrind/valgrind.h... (cached) no
> Checking for clock_nanosleep(0,0,NULL,NULL) in C library None... (cached)
> yes
> Checking for timer_create(CLOCK_MONOTONIC, NULL, NULL) in C library
> None... (cached) no
> Checking for timer_create(CLOCK_MONOTONIC, NULL, NULL) in C library rt...
> (cached) yes
> Checking for C library tcmalloc... (cached) yes
> Checking for char temp; backtrace_symbols_fd((void*), 0, 0) in C
> library None... (cached) yes
> Checking for C header file fenv.h... (cached) yes
> Checking for C header file png.h... (cached) no
> Warning: Header file  not found.
>  This host has no libpng library.
>  Disabling support for PNG framebuffers.
> Checking for C header file linux/kvm.h... (cached) yes
> Checking for C header file linux/if_tun.h... (cached) yes
> Checking size of struct kvm_xsave ... (cached) yes
> Checking for member exclude_host in struct perf_event_attr...(cached) yes
> Checking for hdf5-serial using pkg-config... yes
> Checking for H5Fcreate("", 0, 0, 0) in C library hdf5... (cached) yes
> Checking for H5::H5File("", 0) in C++ library hdf5_cpp... (cached) yes
> Checking whether __i386__ is declared... (cached) no
> Checking whether __x86_64__ is declared... (cached) yes
> Building in /home/fusiqing/GEM5/gem5/build/X86
> Using saved variables file /home/fusiqing/GEM5/gem5/build/variables/X86
> warn: CheckedInt already exists in allParams. This may be caused by the
> Python 2.7 compatibility layer.
> warn: Enum already exists in allParams. This may be caused by the Python
> 2.7 compatibility layer.
> warn: ScopedEnum already exists in allParams. This may be caused by the
> Python 2.7 compatibility layer.
> scons: done reading SConscript files.
> scons: Building targets ...
> scons: *** Do not know how to make File target `build/X86/out/m5'
> (/home/fusiqing/GEM5/gem5/build/X86/out/m5).  Stop.
> scons: building terminated because of errors.
> *** Summary of Warnings ***
> Warning: Your compiler doesn't support incremental linking and lto at the
> same
>  time, so lto is being disabled. To force lto on anyway, use the
>  --force-lto option. That will disable partial linking.
> Warning: Header file  not found.
>  This host has no libpng library.
>  Disabling support for PNG framebuffers.
> /*/
> I want to know if anyone has encountered such a situation.
> Thanks for help.
>
> --
> /**/
>
> NUDTSiqing Fu
>
> ___
> 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] Re: How to add new instructions for gem5?

2020-11-03 Thread Hoa Nguyen via gem5-users
Hi,

Though I'm not sure how to add the cache clearing instruction specifically,
those are a few examples that new instructions are added,

https://gem5-review.googlesource.com/c/public/gem5/+/26123

https://gem5-review.googlesource.com/c/public/gem5/+/23262

https://gem5-review.googlesource.com/c/public/gem5/+/26984

Regards,
Hoa Nguyen

On Mon, Oct 26, 2020, 11:53 PM 1258289086--- via gem5-users <
gem5-users@gem5.org> wrote:

> How to add new instructions for gem5? For example, the cflush command was
> not implemented in the old version. But I have done some work on the old
> version of gem5. I need to use the cflush command now. I know I should
> design against the existing instructions. But I am worried that something
> will be missed. Has anyone done a similar tutorial? , Or can I list the
> places I need to modify to prevent me from missing some of the modified
> locations.
> ___
> 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] Re: How to use the new libm5.a

2020-10-27 Thread Hoa Nguyen via gem5-users
Hi Gabe,

The public/gem5-website repo is the place to update the documentation.

The README file
(https://gem5.googlesource.com/public/gem5-website/+/refs/heads/stable/README.md)
should contain needed information to run a local instance of the
website as well as the procedure of updating the repo.

The file that generates the m5ops documentation page is
https://gem5.googlesource.com/public/gem5-website/+/refs/heads/stable/_pages/documentation/general_docs/m5ops.md

Making changes on public/gem5-website should be very similar to making
changes on public/gem5. However, this change should happen on the
stable branch of gem5-website as the documentation should be
compatible with gem5's stable branch.

We appreciate all the help with the documentation!

Regards,
Hoa Nguyen

On 10/26/20, Gabe Black via gem5-users  wrote:
> Hi Wenqi. The updated libm5.a should be used in basically the same way as
> the old version. Just link against the library, include the header file,
> and call into the op you want using the normal function call syntax.
>
> Hoa, the documentation you've linked to is a little out of date. How can it
> be updated?
>
> Gabe
>
> On Sun, Oct 25, 2020 at 9:31 PM Hoa Nguyen via gem5-users <
> gem5-users@gem5.org> wrote:
>
>> Hi Wenqi,
>>
>> We have some documentation about the new m5 utility here:
>> https://www.gem5.org/documentation/general_docs/m5ops/
>>
>> The following link is an example of annotating PARSEC:
>> https://github.com/darchr/parsec-benchmark/commits/gem5-20-annotations
>>
>> Regards,
>> Hoa Nguyen
>>
>> On 10/25/20, wqyin--- via gem5-users  wrote:
>> > Hello all,
>> >
>> > I noticed the util/m5 has big changes since this
>> > commit:26454e8072e607d54ac67c42b33355d7c94d6d60 around Apr 27. I am
>> > wondering how should I use this new interface/implementation to call
>> > m5ops in my program? Shall I also instantiate a default CallType and
>> > then use it to obtain the dispatch table and finally pass it to
>> > Command::run? Also is there any examples which use the new
>> > implementation to annotate any benchmarks running inside gem5? Thanks
>> >
>> > Best,
>> >
>> > Wenqi
>> >
>> >
>> ___
>> 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] Re: How to use the new libm5.a

2020-10-25 Thread Hoa Nguyen via gem5-users
Hi Wenqi,

We have some documentation about the new m5 utility here:
https://www.gem5.org/documentation/general_docs/m5ops/

The following link is an example of annotating PARSEC:
https://github.com/darchr/parsec-benchmark/commits/gem5-20-annotations

Regards,
Hoa Nguyen

On 10/25/20, wqyin--- via gem5-users  wrote:
> Hello all,
>
> I noticed the util/m5 has big changes since this
> commit:26454e8072e607d54ac67c42b33355d7c94d6d60 around Apr 27. I am
> wondering how should I use this new interface/implementation to call
> m5ops in my program? Shall I also instantiate a default CallType and
> then use it to obtain the dispatch table and finally pass it to
> Command::run? Also is there any examples which use the new
> implementation to annotate any benchmarks running inside gem5? Thanks
>
> Best,
>
> Wenqi
>
>
___
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] Re: How to Set ROI In Benchmark

2020-10-19 Thread Hoa Nguyen via gem5-users
Hi Tracy,

The example of PARSEC benchmark mentioned in the documentation page
can be found here,

https://github.com/darchr/parsec-benchmark/commits/gem5-20-annotations

Regards,
Hoa Nguyen

On 10/13/20, Tracy Mac via gem5-users  wrote:
> Hi ALL!
>
> I try to run spec2006 in gem5 full system mode under the arm architecture
> .There are some regions of interest in the application.
> 1. I want to run them by gem5. I don't know where in gem5 can set the start
> and end points of these ROIs and the number of commands between them.
> 2. I found some samples in
> https://www.gem5.org/documentation/general_docs/checkpoints/, but only part
> of the code, I don't know where to find a more detailed script.
>
> I would appreciate it if you could help me !
>
___
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] Re: An error occurred in i8237 DMA controller when running CPU SPEC 2017 benchmarks

2020-07-17 Thread Hoa Nguyen via gem5-users
Hi Jinpeng,

The error seems to cause by 'sysinfo', which is called by SPEC 2017
before it starts running a workload. SPEC 2017 documents how to turn
it off here: https://www.spec.org/cpu2017/Docs/utility.html#sysinfo.

Basically, the fix is to add this line:

sysinfo_program =

to the SPEC config file. The SPEC config file used in the tutorial is
/home/gem5/spec2017/config/myconfig.x86.cfg

Regards,
Hoa Nguyen

On 7/17/20, Jinpeng Miao via gem5-users  wrote:
> Hello all,
>
> I am trying to build and run CPU SPEC 2017 benchmarks in the FS mode, but
> the process terminated unexpectedly with an error happening in i8237 DMA
> controller. I did not change the source code. I do not quite understand what
> causes this bug and how to fix it. Any help would be really appreciated.
> Thanks!
>
> Output as below:
>
>  REAL SIMULATION 
> info: Entering event queue @ 0.  Starting simulation...
> warn: x86 cpuid family 0x: unimplemented function 6
> warn: x86 cpuid family 0x: unimplemented function 6
> warn: x86 cpuid family 0x: unimplemented function 6
> warn: instruction 'fninit' unimplemented
> warn: Don't know what interrupt to clear for console.
> 3575291925: system.pc.com_1.device: attach terminal 0
> warn: instruction 'sgdt_Ms' unimplemented
> warn: x86 cpuid family 0x: unimplemented function 6
> warn: x86 cpuid family 0x: unimplemented function 6
> warn: x86 cpuid family 0x: unimplemented function 6
> warn: x86 cpuid: unknown family 0x4000
> warn: Tried to clear PCI interrupt 14
> warn: Write to unknown i8042 (keyboard controller) command port.
> warn: instruction 'verw_Mw_or_Rv' unimplemented
> warn: instruction 'verw_Mw_or_Rv' unimplemented
> warn: instruction 'verw_Mw_or_Rv' unimplemented
> warn: MOVNTDQ: Ignoring non-temporal hint, modeling as cacheable!
> warn: instruction 'fwait' unimplemented
> warn: x86 cpuid: unknown family 0x4000
> gem5.opt: build/X86/dev/x86/i8237.cc:39: virtual Tick
> X86ISA::I8237::read(PacketPtr): Assertion `pkt->getSize() == 1' failed.
> Program aborted at tick 97564380133230
> --- BEGIN LIBC BACKTRACE ---
> build/X86/gem5.opt(_Z15print_backtracev+0x2c)[0x55845afa2dfc]
> build/X86/gem5.opt(_Z12abortHandleri+0x4a)[0x55845afb503a]
> /lib/x86_64-linux-gnu/libpthread.so.0(+0x128a0)[0x7f14140d88a0]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7f14122adf47]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x141)[0x7f14122af8b1]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3042a)[0x7f141229f42a]
> /lib/x86_64-linux-gnu/libc.so.6(+0x304a2)[0x7f141229f4a2]
> build/X86/gem5.opt(_ZN6X86ISA5I82374readEP6Packet+0x70)[0x55845aea7510]
> build/X86/gem5.opt(_ZThn64_N7PioPortI9PioDeviceE10recvAtomicEP6Packet+0x45)[0x55845b584885]
> build/X86/gem5.opt(_ZN15NoncoherentXBar18recvAtomicBackdoorEP6PacketsPP11MemBackdoor+0x49b)[0x55845a7a4a0b]
> build/X86/gem5.opt(_ZN6Bridge15BridgeSlavePort10recvAtomicEP6Packet+0x5a)[0x55845a77c5ea]
> build/X86/gem5.opt(_ZN12CoherentXBar18recvAtomicBackdoorEP6PacketsPP11MemBackdoor+0x907)[0x55845a785f17]
> build/X86/gem5.opt(_ZN5Cache19handleAtomicReqMissEP6PacketRP8CacheBlkRNSt7__cxx114listIS1_SaIS1_EEE+0x1b7)[0x55845b59df47]
> build/X86/gem5.opt(_ZN9BaseCache10recvAtomicEP6Packet+0x3c3)[0x55845b59afa3]
> build/X86/gem5.opt(_ZN5Cache10recvAtomicEP6Packet+0x173)[0x55845b5a3bb3]
> build/X86/gem5.opt(_ZN12CoherentXBar18recvAtomicBackdoorEP6PacketsPP11MemBackdoor+0x907)[0x55845a785f17]
> build/X86/gem5.opt(_ZN5Cache19handleAtomicReqMissEP6PacketRP8CacheBlkRNSt7__cxx114listIS1_SaIS1_EEE+0x1b7)[0x55845b59df47]
> build/X86/gem5.opt(_ZN9BaseCache10recvAtomicEP6Packet+0x3c3)[0x55845b59afa3]
> build/X86/gem5.opt(_ZN5Cache10recvAtomicEP6Packet+0x173)[0x55845b5a3bb3]
> build/X86/gem5.opt(_ZN15AtomicSimpleCPU7readMemEmPhj5FlagsImERKSt6vectorIbSaIbEE+0x324)[0x55845a940604]
> build/X86/gem5.opt(_ZN17SimpleExecContext7readMemEmPhj5FlagsImERKSt6vectorIbSaIbEE+0x5f)[0x55845a956dbf]
> build/X86/gem5.opt(+0xbe1213)[0x55845ad72213]
> build/X86/gem5.opt(_ZNK10X86ISAInst5LdBig7executeEP11ExecContextPN5Trace10InstRecordE+0x16f)[0x55845ad94a7f]
> build/X86/gem5.opt(_ZN15AtomicSimpleCPU4tickEv+0x54a)[0x55845a93dd2a]
> build/X86/gem5.opt(_ZN10EventQueue10serviceOneEv+0xd9)[0x55845afab2a9]
> build/X86/gem5.opt(_Z9doSimLoopP10EventQueue+0x87)[0x55845afcc867]
> build/X86/gem5.opt(_Z8simulatem+0xcba)[0x55845afcd8ba]
> build/X86/gem5.opt(+0x1133de1)[0x55845b2c4de1]
> build/X86/gem5.opt(+0x796d64)[0x55845a927d64]
> build/X86/gem5.opt(PyEval_EvalFrameEx+0x6371)[0x55845b8fa5b1]
> build/X86/gem5.opt(PyEval_EvalCodeEx+0x7a0)[0x55845b8fdcd0]
> build/X86/gem5.opt(PyEval_EvalFrameEx+0x643b)[0x55845b8fa67b]
> --- END LIBC BACKTRACE ---
> Aborted (core dumped)
>
>
___
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