Re: [Discuss-gnuradio] seg fault in volk_32f_s32f_multiply_32f_a_sse gnuradio v 3.6.1
On Tue, Sep 4, 2012 at 9:01 PM, ikjtel wrote: > > >> Yes, looks like it. But it's an Atom, which might change things. I > >> know we had some issues on Atom's before, but I thought that we worked >> them out. I'll be interested to see how cmake reports the architecture >> checks for VOLK here. > > Hi Tom > > I've made some further progress, and this may be premature, but I'll go so > far as to say we can rule this out entirely. > > Here's a strawman theory - criticism of the theory is invited, shooting it > down would be welcomed ; ) > > Our app uses lots of disconnect() and connect() calls because our appetite > for widgets is bigger than the CPU available. Also, since the widgets are > tab-selectable there is only one widget visible at a time. So when the user > hits a tab we call disconnect and connect (surrounded by lock() / unlock() of > course) in order to dynamically create a flow graph that connects up all the > elements needed by that tab (and disconnects the elements, filters, demods, > FFT's and other blocks that aren't needed by this tab, to conserve CPU. > > The theory is that this is "messing up" the boundary alignments of the > operands to the SSE instructions, making them no longer properly aligned, > resulting in a GPF. > > Here's the minimal python app , it seg faults in volk 100% reliably for me. > If the call to shuffle() is removed, the script does not crash. > > Max Max, That's not a bad theory as I've run into the same situation before. I had a fix for that, though, back before the release of 3.6.0. It's possible that it's more complicated, though. I'll use your script to see if I can do more to figure it out. Tom > p.s. kindly let me know if this code isn't properly machine-readable > ~~~ > #!/usr/bin/env python > import math > import time > from gnuradio import gr, gru, audio, eng_notation, blks2, optfir > > class app_top_block(gr.top_block): > def __init__(self): > gr.top_block.__init__(self, "mhp") > > self.source = gr.sig_source_f(48000, gr.GR_TRI_WAVE, 1.0, 1.0, 0) > self.amp = gr.multiply_const_ff(65.0) > self.sink = gr.null_sink(gr.sizeof_float) > > self.connect(self.source, self.amp, self.sink) > self.amp_connected = True > > def shuffle(self): > self.lock() > if self.amp_connected: > self.disconnect(self.source, self.amp, self.sink) > self.connect(self.source, self.sink) > else: > self.disconnect(self.source, self.sink) > self.connect(self.source, self.amp, self.sink) > self.amp_connected = not self.amp_connected > self.unlock() > > if __name__ == "__main__": > tb = app_top_block() > tb.start() > while True: > time.sleep(0.1) > tb.shuffle() > ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] make test fails for GnuRadio 3.6.2 (compiled from tarball)
This is on Ubuntu 12.04 32bit, all dependencies supplied by Ubuntu except for IT++ 4.2 which was compiled from source. Seems the "orc" target for one specific test fails during verification. buchner@HP-Pavilion-dv5:~/gnuradio-3.6.2/build/volk$ ctest Test project /home/buchner/gnuradio-3.6.2/build/volk Start 1: qa_volk_test_all 1/1 Test #1: qa_volk_test_all .***Failed1.09 sec partial ctest --verbose output follows 1: RUN_VOLK_TESTS: volk_32fc_s32f_magnitude_16i_a 1: sse3 completed in 0s 1: sse completed in 0s 1: generic completed in 0s 1: orc completed in 0s 1: offset 2 in1: -32768 in2: -31588 1: offset 11 in1: -32768 in2: -23002 1: offset 20 in1: -32768 in2: -30392 1: offset 22 in1: -32768 in2: -22151 1: offset 28 in1: -32768 in2: -27077 1: offset 39 in1: -32768 in2: -28734 1: offset 47 in1: -32768 in2: -23829 1: offset 58 in1: -32768 in2: -24772 1: offset 59 in1: -32768 in2: -31771 1: offset 71 in1: -32768 in2: -22533 1: volk_32fc_s32f_magnitude_16i_a: fail on arch orc 1: Best arch: sse3 1: /home/buchner/gnuradio-3.6.2/volk/lib/testqa.cc(42): error in "volk_32fc_s32f_magnitude_16i_a_test": check run_volk_tests(volk_32fc_s32f_magnitude_16i_a_get_func_desc(), (void (*)())volk_32fc_s32f_magnitude_16i_a_manual, std::string("volk_32fc_s32f_magnitude_16i_a"), 1, 32768, 20460, 1, 0, "NULL") == 0 failed [true != 0] ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] make test fails for GnuRadio 3.6.2 (compiled from tarball)
On Wed, Sep 5, 2012 at 8:49 AM, Christian Buchner wrote: > This is on Ubuntu 12.04 32bit, all dependencies supplied by Ubuntu > except for IT++ 4.2 which was compiled from source. > > Seems the "orc" target for one specific test fails during verification. Thanks for the report. Can you give us the version of orc installed? Johnathan ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Unable to compile on OSX
Dear list, I fitted the last version of gnuradio but I fail to compile it. It shows: [ 0%] Building C object volk/lib/CMakeFiles/volk.dir/volk_16i_s32f_deinterleave_32f_x2_a_orc_impl.c.o /Users/x/Devel/gnuradio/build/volk/lib/volk_16i_s32f_deinterleave_32f_x2_a_orc_impl.c:7:18: error: math.h: No such file or directory In file included from /usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin11/4.2.1/include/limits.h:15, from /Users/x/Devel/gnuradio/build/volk/lib/volk_16i_s32f_deinterleave_32f_x2_a_orc_impl.c:34: /Applications/Xcode.app/Contents/Developer/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin11/4.2.1/include/limits.h:15:25: error: limits.h: No such file or directory make[2]: *** [volk/lib/CMakeFiles/volk.dir/volk_16i_s32f_deinterleave_32f_x2_a_orc_impl.c.o] Error 1 make[1]: *** [volk/lib/CMakeFiles/volk.dir/all] Error 2 make: *** [all] Error 2 I am using Xcode 4.4.1 and Mountain Lion 10.8. gcc -v Using built-in specs. Target: i686-apple-darwin11 Configured with: /private/var/tmp/llvmgcc42/llvmgcc42-2336.11~28/src/configure --disable-checking --enable-werror --prefix=/Applications/Xcode.app/Contents/Developer/usr/llvm-gcc-4.2 --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-prefix=llvm- --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin11 --enable-llvm=/private/var/tmp/llvmgcc42/llvmgcc42-2336.11~28/dst-llvmCore/Developer/usr/local --program-prefix=i686-apple-darwin11- --host=x86_64-apple-darwin11 --target=i686-apple-darwin11 --with-gxx-include-dir=/usr/include/c++/4.2.1 Thread model: posix gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00) I would appreciate if someone could help me. Thank you. -- Pol Henarejos Research Engineer, MSc pol.henare...@cttc.es (mailto:pol.henare...@cttc.es) Centre Tecnològic de Telecomunicacions de Catalunya (CTTC) Engineering Unit Parc Mediterrani de la Tecnologia Av. Carl Friedrich Gauss, 7 08860 Castelldefels, Barcelona (Spain) Tel: +34 93 396 71 70 Ext: 2177 Fax. +34 93 645 29 01 www.cttc.es (http://www.cttc.es) ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Unable to compile on OSX
Both UHD and GNU Radio compile and work for me on OSX 10.8.1 and Xcode 4.4.1, with just a few "-D"s on the cmake command line. I'm wondering if you've fully installed XCode; I follow the list found at < https://trac.macports.org/wiki/ProblemHotlist >. If you don't do all the right steps, XCode will only partially work. - MLD ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio