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