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> 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 > To unsubscribe send an email to 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