On Sat, Jun 6, 2015 at 4:51 PM, Nowlan, Sean <sean.now...@gtri.gatech.edu> wrote:
> That makes sense. I installed ORC 0.4.23 and tried to recompile GR, but > the build is failing on Volk. GCC segfaults a couple times before failing > with an error on volk_16ic_magnitude_16i_a_orc_impl. Full output here: > > https://gist.github.com/nowls/2f6ddf5734e152ca21a7 > > ORC 0.4.23 was built with: > > CFLAGS="-mcpu=cortex-a15.cortex-a7 -mtune=cortex-a15.cortex-a7 > -mfpu=neon-vfpv4 -mfloat-abi=hard -funsafe-math-optimizations" > > CPPFLAGS="-mcpu=cortex-a15.cortex-a7 -mtune=cortex-a15.cortex-a7 > -mfpu=neon-vfpv4 -mfloat-abi=hard -funsafe-math-optimizations" > > > UHD built fine w/ ORC 0.4.23. > > > Sean > Just disable ORC Altogether in VOLK. Most of the kernels have replacement NEON proto-kernels now, anyways. Pass -DENABLE_ORC=False to cmake. Tom > ------------------------------ > *From:* West, Nathan <n...@ostatemail.okstate.edu> > *Sent:* Saturday, June 6, 2015 12:57 PM > > *To:* Nowlan, Sean > *Cc:* discuss-gnuradio@gnu.org > *Subject:* Re: [Discuss-gnuradio] [VOLK] volk_profile failures > > Most likely. > > What we've seen before is that ORC didn't preserve registers according to > ARM specifications. This basically results in unpredictable data > corruption. The commit I pointed to is the fix (vpush certain registers if > used, then vpop after the routine). > > The visible corruption is seen by corrupting the test tolerance. If you > look at ctest -V you should see that the "error"s are actually the same > result, but since tolerance gets corrupted the test erroneously is false. > The only QA failures should be on kernels that have an ORC protokernel, but > this bug can affect non-ORC protokernels for that kernel. > > Nathan > > > On Sat, Jun 6, 2015 at 12:47 PM, Nowlan, Sean <sean.now...@gtri.gatech.edu > > wrote: > >> Ok, I will install ORC 0.4.23 from source. Is ORC involved with >> all the other architectures that had failures? >> >> >> Sean >> >> >> ------------------------------ >> *From:* West, Nathan <n...@ostatemail.okstate.edu> >> *Sent:* Friday, June 5, 2015 6:48 PM >> *To:* Nowlan, Sean >> *Cc:* discuss-gnuradio@gnu.org >> *Subject:* Re: [Discuss-gnuradio] [VOLK] volk_profile failures >> >> Hi Sean, >> >> I didn't read all of the debug info, but your symptoms are a result of >> ORC doing bad things. >> >> You can either uninstall ORC or upgrade to the latest release (0.4.23). >> The commit you really need is this one: >> http://cgit.freedesktop.org/gstreamer/orc/commit/?id=acdaac31c648fd10f1bd0a49c4c33b483bb9c35c >> >> If you choose to upgrade ORC let me know how it goes. >> >> Cheers, >> Nathan >> >> On Friday, June 5, 2015, Nowlan, Sean <sean.now...@gtri.gatech.edu> >> wrote: >> >>> I compiled GNU Radio 3.7.7.1 natively on an ODROID XU3-Lite with >>> Ubuntu 14.04.2 LTS. I ran volk_profile and got a lot of failures for >>> various embedded architectures. Any ideas what could be happening? >>> Could it be something with the compile flags I chose? >>> >>> >>> volk_16ic_s32f_deinterleave_32f_x2: fail on arch neon >>> volk_16ic_s32f_deinterleave_32f_x2: fail on arch neon >>> volk_16ic_s32f_deinterleave_32f_x2: fail on arch u_orc >>> volk_16ic_s32f_deinterleave_32f_x2: fail on arch u_orc >>> volk_32fc_s32f_magnitude_16i: fail on arch u_orc >>> volk_32fc_x2_multiply_32fc: fail on arch a_generic >>> volk_32fc_x2_multiply_32fc: fail on arch a_generic >>> volk_32fc_x2_multiply_32fc: fail on arch a_generic >>> volk_32fc_x2_multiply_32fc: fail on arch neon >>> volk_32fc_x2_multiply_32fc: fail on arch neon >>> volk_32fc_x2_multiply_32fc: fail on arch neon >>> volk_32fc_x2_multiply_32fc: fail on arch neon_opttests >>> volk_32fc_x2_multiply_32fc: fail on arch neon_opttests >>> volk_32fc_x2_multiply_32fc: fail on arch neon_opttests >>> volk_32fc_x2_multiply_32fc: fail on arch neonasm >>> volk_32fc_x2_multiply_32fc: fail on arch neonasm >>> volk_32fc_x2_multiply_32fc: fail on arch neonasm >>> volk_32fc_x2_multiply_32fc: fail on arch u_orc >>> volk_32fc_x2_multiply_32fc: fail on arch u_orc >>> volk_32fc_x2_multiply_32fc: fail on arch u_orc >>> volk_32f_sqrt_32f: fail on arch neon >>> volk_32f_x3_sum_of_poly_32f: fail on arch a_neon >>> volk_32f_x3_sum_of_poly_32f: fail on arch neonvert >>> volk_32fc_s32fc_multiply_32fc: fail on arch neon >>> >>> The full output of volk_profile is here: >>> <https://gist.github.com/nowls/37c78d89342053bae0ea> >>> https://gist.github.com/nowls/37c78d89342053bae0ea >>> Resulting volk_config: >>> https://gist.github.com/nowls/5894fbce1b29325b8f58 >>> >>> Some relevant configuration info taken from CMakeCache.txt (gcc/g++ >>> version and C/CXX/ASM flags): >>> >>> CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/g++-4.9 >>> CMAKE_CXX_COMPILER_WITH_PATH:FILEPATH=/usr/bin/g++-4.9 >>> CMAKE_CXX_FLAGS:STRING=-mcpu=cortex-a15.cortex-a7 >>> -mtune=cortex-a15.cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard >>> -funsafe-math-optimizations >>> CMAKE_CXX_FLAGS_DEBUG:STRING=-g >>> CMAKE_CXX_FLAGS_DEBUGPARANOID:STRING=-Wall -Wextra -g -O0 >>> CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG >>> CMAKE_CXX_FLAGS_NOOPTWITHASM:STRING=-Wall -save-temps -g -O0 >>> CMAKE_CXX_FLAGS_O2WITHASM:STRING=-Wall -save-temps -g -O2 >>> CMAKE_CXX_FLAGS_O3WITHASM:STRING=-Wall -save-temps -g -O3 >>> CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG >>> CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG >>> CMAKE_C_COMPILER:FILEPATH=/usr/bin/gcc-4.9 >>> CMAKE_C_COMPILER_WITH_PATH:FILEPATH=/usr/bin/gcc-4.9 >>> CMAKE_C_FLAGS:STRING=-mcpu=cortex-a15.cortex-a7 >>> -mtune=cortex-a15.cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard >>> -funsafe-math-optimizations >>> CMAKE_C_FLAGS_DEBUG:STRING=-g >>> CMAKE_C_FLAGS_DEBUGPARANOID:STRING=-Wall -Wextra -g -O0 >>> CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG >>> CMAKE_C_FLAGS_NOOPTWITHASM:STRING=-Wall -save-temps -g -O0 >>> CMAKE_C_FLAGS_O2WITHASM:STRING=-Wall -save-temps -g -O2 >>> CMAKE_C_FLAGS_O3WITHASM:STRING=-Wall -save-temps -g -O3 >>> CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG >>> CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG >>> CMAKE_ASM_FLAGS:STRING=-mcpu=cortex-a15.cortex-a7 >>> -mtune=cortex-a15.cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard >>> -funsafe-math-optimizations >>> CMAKE_ASM_FLAGS_DEBUG:STRING=-g >>> CMAKE_ASM_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG >>> CMAKE_ASM_FLAGS_RELEASE:STRING=-O3 -DNDEBUG >>> CMAKE_ASM_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG >>> >>> >>> Sean Nowlan >>> >>> >>> > > _______________________________________________ > Discuss-gnuradio mailing list > Discuss-gnuradio@gnu.org > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio > >
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio