Hi,

Thanks Jason and Matt for your answers.
I’m not really interested in GCN3, it’s just that it is tested by default when 
running all the tests.
And as I’m working on a change that is not specific to a particular 
architecture, I wanted to test it on everything.
For the moment I have relaunched the tests without the “GCN3_X86” isa.
But I’ll also test on a x86 machine with everything.

Thanks,
Nathanael

From: Jason Lowe-Power via gem5-dev [mailto:gem5-dev@gem5.org]
Sent: Tuesday, January 12, 2021 12:17 AM
To: gem5 Developer List <gem5-dev@gem5.org>
Cc: Dutu, Alexandru <alexandru.d...@amd.com>; Poremba, Matthew 
<matthew.pore...@amd.com>; Kyle Roarty <kroa...@wisc.edu>; Jason Lowe-Power 
<ja...@lowepower.com>
Subject: [gem5-dev] Re: Testing fail on GCN3_X86 on Arm machine

Hi all,

It doesn't surprise me at all that GCN3 doesn't build on Arm. Nathanael, you 
should be able to ignore those errors. We don't test that combination of 
host-target and I have not heard of anyone trying to use that combination of 
host-target.

If you're trying to use the GPU model, I'd suggest moving to an x86 host. 
Unfortunately, right now the GPU model is intricately tied to the host OS. 
Hence why the docker is all but required to get the GPU model working.

Cheers,
Jason

On Mon, Jan 11, 2021 at 10:59 AM Matt Sinclair via gem5-dev 
<gem5-dev@gem5.org<mailto:gem5-dev@gem5.org>> wrote:
Hi Nathanael,

I have personally never tested GCN3 on an ARM machine, so I can't say 
definitively if it will work there or not.  But if you are not, I strongly 
recommend testing anything you need to test with GCN3 inside the docker we 
created:

- 
https://gem5.googlesource.com/public/gem5/+/refs/heads/develop/util/dockerfiles/gcn-gpu/README.md
- http://www.gem5.org/2020/05/27/modern-gpu-applications.html

Thanks,
Matt

On Mon, Jan 11, 2021 at 8:42 AM Nathanael Premillieu via gem5-dev 
<gem5-dev@gem5.org<mailto:gem5-dev@gem5.org>> wrote:
Hi,

I’m currently working on some changes in gem5 and before submitting them, I’m 
using the testing framework as required.
However, even without my changes, I get failures when building GCN3_X86 (See 
the trace at the end).
I guess it is linked to the fact that I’m working on an Arm machine. Do I need 
to set up something to make it work?

Thanks,
Nathanael Premillieu

The trace:
/scratch/npremill/gem5_public.git/build/GCN3_X86/gem5.opt
You may want to run with only a single ISA(--isa=), use --skip-build, or use 
'rerun'.
MOESI_AMD_Base-dir.sm:220: Warning: Non-void return ignored, return type is 
'bool'
MOESI_AMD_Base-dir.sm:1052: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-dir.sm:1056: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-dir.sm:1060: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-dir.sm:1064: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-dir.sm:1068: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-dir.sm:1072: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-dir.sm:1076: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-dir.sm:586: Warning: Unused action: l_queueMemWBReq, Write WB 
data to memory
MOESI_AMD_Base-dir.sm:953: Warning: Unused action: mwc_markSinkWriteCancel, 
Mark to sink impending VicDirty
MOESI_AMD_Base-dir.sm:1051: Warning: Unused action: dl_deallocateL3, deallocate 
the L3 block
MOESI_AMD_Base-dir.sm:1087: Warning: Unused action: yy_recycleResponseQueue, 
recycle response queue
MOESI_AMD_Base-dma.sm:187: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-dma.sm:191: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-CorePair.sm:325: Warning: Non-void return ignored, return type 
is 'bool'
MOESI_AMD_Base-CorePair.sm:802: Warning: Non-void return ignored, return type 
is 'Tick'
MOESI_AMD_Base-CorePair.sm:806: Warning: Non-void return ignored, return type 
is 'Tick'
MOESI_AMD_Base-CorePair.sm:810: Warning: Non-void return ignored, return type 
is 'Tick'
MOESI_AMD_Base-CorePair.sm:814: Warning: Non-void return ignored, return type 
is 'Tick'
GPU_VIPER-TCP.sm:166: Warning: Non-void return ignored, return type is 'bool'
GPU_VIPER-TCP.sm:451: Warning: Non-void return ignored, return type is 'Tick'
GPU_VIPER-TCP.sm:455: Warning: Non-void return ignored, return type is 'Tick'
GPU_VIPER-TCP.sm:385: Warning: Unused action: norl_issueRdBlkOrloadDone, local 
load done
GPU_VIPER-SQC.sm:143: Warning: Non-void return ignored, return type is 'bool'
GPU_VIPER-SQC.sm:275: Warning: Non-void return ignored, return type is 'Tick'
GPU_VIPER-SQC.sm:279: Warning: Non-void return ignored, return type is 'Tick'
GPU_VIPER-TCC.sm:168: Warning: Non-void return ignored, return type is 'bool'
GPU_VIPER-TCC.sm:551: Warning: Non-void return ignored, return type is 'Tick'
GPU_VIPER-TCC.sm:555: Warning: Non-void return ignored, return type is 'Tick'
GPU_VIPER-TCC.sm:559: Warning: Non-void return ignored, return type is 'Tick'
GPU_VIPER-TCC.sm:583: Warning: Non-void return ignored, return type is 'Tick'
MOESI_AMD_Base-L3cache.sm:196: Warning: Non-void return ignored, return type is 
'bool'
MOESI_AMD_Base-L3cache.sm:611: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-L3cache.sm:615: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-L3cache.sm:619: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-L3cache.sm:623: Warning: Non-void return ignored, return type is 
'Tick'
MOESI_AMD_Base-L3cache.sm:561: Warning: Unused action: rd_copyDataFromRequest, 
write data to L3
In file included from build/GCN3_X86/dev/hsa/hsa_packet_processor.hh:44,
                 from build/GCN3_X86/dev/hsa/hsa_device.hh:43,
                 from build/GCN3_X86/gpu-compute/gpu_command_processor.hh:50,
                 from build/GCN3_X86/gpu-compute/dispatcher.cc:41:
build/GCN3_X86/dev/hsa/hsa.h:93:2: error: #error "BIGENDIAN_CPU or 
LITTLEENDIAN_CPU must be defined"
   93 | #error "BIGENDIAN_CPU or LITTLEENDIAN_CPU must be defined"
      |  ^~~~~
In file included from build/GCN3_X86/dev/hsa/hsa_packet_processor.hh:44,
                 from build/GCN3_X86/dev/hsa/hsa_device.hh:43,
                 from build/GCN3_X86/gpu-compute/gpu_command_processor.hh:50,
                 from build/GCN3_X86/gpu-compute/gpu_command_processor.cc:36:
build/GCN3_X86/dev/hsa/hsa.h:93:2: error: #error "BIGENDIAN_CPU or 
LITTLEENDIAN_CPU must be defined"
   93 | #error "BIGENDIAN_CPU or LITTLEENDIAN_CPU must be defined"
      |  ^~~~~
In file included from build/GCN3_X86/dev/hsa/hsa_packet_processor.hh:44,
                 from build/GCN3_X86/dev/hsa/hsa_device.hh:43,
                 from build/GCN3_X86/gpu-compute/gpu_compute_driver.cc:41:
build/GCN3_X86/dev/hsa/hsa.h:93:2: error: #error "BIGENDIAN_CPU or 
LITTLEENDIAN_CPU must be defined"
   93 | #error "BIGENDIAN_CPU or LITTLEENDIAN_CPU must be defined"
      |  ^~~~~
scons: *** [build/GCN3_X86/gpu-compute/gpu_compute_driver.o] Error 1
scons: *** [build/GCN3_X86/gpu-compute/gpu_command_processor.o] Error 1
scons: *** [build/GCN3_X86/gpu-compute/dispatcher.o] Error 1
In file included from build/GCN3_X86/arch/gcn3/insts/instructions.cc:40:
build/GCN3_X86/arch/gcn3/insts/inst_util.hh: In function 'void 
Gcn3ISA::processDPP(GPUDynInstPtr, Gcn3ISA::InFmt_VOP_DPP, T&) [with T = 
Gcn3ISA::VecOperand<unsigned int, false>]':
build/GCN3_X86/arch/gcn3/insts/inst_util.hh:416:10: note: parameter passing for 
argument of type 'Gcn3ISA::InFmt_VOP_DPP' changed in GCC 9.1
  416 |     void processDPP(GPUDynInstPtr gpuDynInst, InFmt_VOP_DPP dppInst,
      |          ^~~~~~~~~~
build/GCN3_X86/arch/gcn3/insts/inst_util.hh: In function 'void 
Gcn3ISA::processDPP(GPUDynInstPtr, Gcn3ISA::InFmt_VOP_DPP, T&) [with T = 
Gcn3ISA::VecOperand<float, false>]':
build/GCN3_X86/arch/gcn3/insts/inst_util.hh:416:10: note: parameter passing for 
argument of type 'Gcn3ISA::InFmt_VOP_DPP' changed in GCC 9.1
build/GCN3_X86/arch/gcn3/insts/inst_util.hh: In function 'void 
Gcn3ISA::processSDWA_src(Gcn3ISA::InFmt_VOP_SDWA, T&, T&, T&, T&) [with T = 
Gcn3ISA::VecOperand<unsigned int, false>]':
build/GCN3_X86/arch/gcn3/insts/inst_util.hh:852:10: note: parameter passing for 
argument of type 'Gcn3ISA::InFmt_VOP_SDWA' changed in GCC 9.1
  852 |     void processSDWA_src(InFmt_VOP_SDWA sdwaInst, T & src0, T & 
origSrc0,
      |          ^~~~~~~~~~~~~~~
Traceback (most recent call last):
  File "/scratch/npremill/gem5_public.git/tests/../ext/testlib/runner.py", line 
205, in setup
    fixture.setup(testitem)
  File "/scratch/npremill/gem5_public.git/tests/gem5/fixture.py", line 129, in 
setup
    self._setup(testitem)
  File "/scratch/npremill/gem5_public.git/tests/gem5/fixture.py", line 174, in 
_setup
    log_call(log.test_log, command, time=None, stderr=sys.stderr)
  File "/scratch/npremill/gem5_public.git/tests/../ext/testlib/helper.py", line 
197, in log_call
    raise subprocess.CalledProcessError(retval, cmdstr)
subprocess.CalledProcessError: Command 'scons -C 
/scratch/npremill/gem5_public.git -j 50 --ignore-style 
/scratch/npremill/gem5_public.git/build/GCN3_X86/gem5.opt' returned non-zero 
exit status 2.

Exception raised while setting up fixture for Test Library
==================================================================================
 No testing done 
=====================================================================================
Traceback (most recent call last):
  File "main.py", line 26, in <module>
    sys.exit(testlib())
  File "/scratch/npremill/gem5_public.git/tests/../ext/testlib/main.py", line 
328, in main
    result = globals()['do_'+configuration.config.command]()
  File "/scratch/npremill/gem5_public.git/tests/../ext/testlib/main.py", line 
300, in do_run
    return run_schedule(test_schedule, log_handler)
  File "/scratch/npremill/gem5_public.git/tests/../ext/testlib/main.py", line 
274, in run_schedule
    log_handler.finish_testing()
  File "/scratch/npremill/gem5_public.git/tests/../ext/testlib/main.py", line 
68, in finish_testing
    self.result_handler.close()
  File "/scratch/npremill/gem5_public.git/tests/../ext/testlib/handlers.py", 
line 166, in close
    self._save()
  File "/scratch/npremill/gem5_public.git/tests/../ext/testlib/handlers.py", 
line 158, in _save
    result.JUnitSavedResults.save(
  File "/scratch/npremill/gem5_public.git/tests/../ext/testlib/result.py", line 
330, in save
    results = JUnitTestSuites(results)
  File "/scratch/npremill/gem5_public.git/tests/../ext/testlib/result.py", line 
233, in __init__
    self.attributes.append(self.result_attribute(result,
  File "/scratch/npremill/gem5_public.git/tests/../ext/testlib/result.py", line 
241, in result_attribute
    return XMLAttribute(self.result_map[result], count)
KeyError: 0
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org<mailto:gem5-dev@gem5.org>
To unsubscribe send an email to 
gem5-dev-le...@gem5.org<mailto:gem5-dev-le...@gem5.org>
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org<mailto:gem5-dev@gem5.org>
To unsubscribe send an email to 
gem5-dev-le...@gem5.org<mailto:gem5-dev-le...@gem5.org>
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to