I have personally never tried gfx906 but in theory it should work.  You
would have to change the config files to allow gfx906 as a valid option (
https://gem5.googlesource.com/public/gem5/+/refs/heads/develop/configs/example/apu_se.py#941)
and then see what happens.

Regarding the assembly error, I don't see a particular error with the
assembler -- it seems like you are saying gem5 just fails when you run
something with gfx900?  The error in particular appears to be an error in
the gem5 CPU.  There's not enough information here to help though.  Please
let us know:

- what application are you running (is it from gem5 resources or is this
something you wrote on your own?)
- how did you compile it?
- how did you run gem5? (what is your command line)

Regarding rocprof, I don't think you should need to run it with/in gem5.
gem5 emits its own stats in stats.txt.  The rocprof profiler is intended
for running on a real GPU with your application.  Why do yo need an
external performance measurement tool?  Is there something that the gem5
stats doesn't provide you are looking for?

Matt


On Tue, Mar 7, 2023 at 12:48 AM gaohang980502--- via gem5-users <
gem5-users@gem5.org> wrote:

> Hi,
>
> I am a graduate student interested in GEM5 simulator and am currently
> trying to carry out experiments using gem5.
> I compiled VEGA_X86/gem5.opt using gcn-gpu images on source gem5-v22.0.0,
> but it only seems to support VEGA10 (gfx900,gfx902), so my first question
> is, Does gem5 now support the newer VEGA20 (gfx906) model?
> Second, I want to execute HIP assembly code, but in SE mode, gfx900
> assembler V3 format kernel always generates the following error:
>
> >build/VEGA_X86/sim/syscall_emul.cc:74: warn: ignoring syscall
> get_mempolicy(...)
> >build/VEGA_X86/sim/syscall_emul.cc:74: warn: ignoring syscall madvise(...)
> >build/VEGA_X86/gpu-compute/gpu_compute_driver.cc:887: warn: unimplemented
> ioctl: AMDKFD_IOC_MAP_MEMORY_TO_GPU
> >kernel exec
> >build/VEGA_X86/arch/x86/faults.cc:165: panic: Tried to read unmapped
> address 0x7373656363e9.
> >PC: (0x7ffff6fb56e6=>0x7ffff6fb56ed).(0=>1), Instr:   MOV_R_M : ld   rdi,
> DS:[rax + 0x88]
> >Memory Usage: 2573064 KBytes
> >Program aborted at tick 80121757000
>
> I can't find the reason for the problem. My gfx900 assembler kernel code
> was obtained by compiling a simple HIP C program with the option
> save-temps, which should be fine because the gfx906 code I got the same way
> executes correctly on AMD GPU hardware devices.
>
> Final,I want to use AMD's GPU performance profiling tool rocprofiler to
> analyze Benchmark behavior, but I don't know how to use this tool in the
> emulator. My confusion is that Benchmark has to be passed into a
> configuration script to make sense, rather than being used on its own, so
> the problem is how to use the tool to monitor the metrics gem5 emulates
> when the GPU component is executing a GPU program. Now there is no
> solution, how to use external performance analysis tools in the simulator?
> Also, is there a gprof tutorial supported by gem5?
>
> Looking forward to your reply, thank you very much!
> _______________________________________________
> 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

Reply via email to