discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] seg fault in volk_32f_s32f_multiply_32f_a_sse gnu


From: Tom Rondeau
Subject: Re: [Discuss-gnuradio] seg fault in volk_32f_s32f_multiply_32f_a_sse gnuradio v 3.6.1
Date: Sat, 1 Sep 2012 12:08:46 -0400

On Fri, Aug 24, 2012 at 6:33 PM, ikjtel <address@hidden> wrote:
> At the moment it's easily reproducible.  Same app runs under GR v3.3 with no
> trouble. Let me know if I can provide any more info - in particular, perhaps
> there's a special GDB command to dump the "xmm" register set?
>
> Best Regards
>
> Max

Max,

Can you provide an example that's causing you problems? Also, what's
the output of cmake, specifically for when volk tests the different
SIMD types available? What's your processor and the output of 'cat
/proc/cpuinfo'?

The reason this doesn't cause a problem for you in 3.3 is because
that's pre-Volk. This looks like you're running SSE operations on a
system that doesn't support it.

Tom


> (gdb) i stack
> #0  0x0747ce98 in volk_32f_s32f_multiply_32f_a_sse ()
>    from /usr/local/lib/libvolk.so.0.0.0
> #1  0x0191cd84 in gr_multiply_const_ff::work(int, std::vector<void const*,
> std::allocator<void const*> >&, std::vector<void*, std::allocator<void*> >&)
> ()
>    from /usr/local/lib/libgnuradio-core-3.6.1.so.0.0.0
> #2  0x018afb57 in gr_sync_block::general_work(int, std::vector<int,
> std::allocator<int> >&, std::vector<void const*, std::allocator<void const*>
>>&, std::vector<void*, std::allocator<void*> >&) ()
>    from /usr/local/lib/libgnuradio-core-3.6.1.so.0.0.0
> #3  0x01890bb5 in gr_block_executor::run_one_iteration() ()
>    from /usr/local/lib/libgnuradio-core-3.6.1.so.0.0.0
> #4  0x018b2780 in
> gr_tpb_thread_body::gr_tpb_thread_body(boost::shared_ptr<gr_block>, int) ()
> from /usr/local/lib/libgnuradio-core-3.6.1.so.0.0.0
> #5  0x018abe36 in
> boost::detail::function::void_function_obj_invoker0<gruel::thread_body_wrapper<tpb_container>,
> void>::invoke(boost::detail::function::function_buffer&) () from
> /usr/local/lib/libgnuradio-core-3.6.1.so.0.0.0
> #6  0x0466c732 in boost::detail::thread_data<boost::function0<void> >::run()
> ()
>    from /usr/local/lib/libgruel-3.6.1.so.0.0.0
> #7  0x07fde029 in thread_proxy () from /usr/lib/libboost_thread.so.1.42.0
> #8  0x00c26e99 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
> #9  0x005f673e in clone () from /lib/i386-linux-gnu/libc.so.6
> (gdb) x/10ib 0x0747ce98
> => 0x747ce98 <volk_32f_s32f_multiply_32f_a_sse+56>:   
>     movaps (%ecx,%esi,1),%xmm0
>    0x747ce9c <volk_32f_s32f_multiply_32f_a_sse+60>:   add    $0x1,%edi
>    0x747ce9f <volk_32f_s32f_multiply_32f_a_sse+63>:   mulps  %xmm1,%xmm0
>    0x747cea2 <volk_32f_s32f_multiply_32f_a_sse+66>:   
>     movaps %xmm0,(%eax,%esi,1)
>    0x747cea6 <volk_32f_s32f_multiply_32f_a_sse+70>:   add    $0x10,%esi
>    0x747cea9 <volk_32f_s32f_multiply_32f_a_sse+73>:   cmp    %edi,%edx
>    0x747ceab <volk_32f_s32f_multiply_32f_a_sse+75>:   
>     ja     0x747ce98 <volk_32f_s32f_multiply_32f_a_sse+56>
>    0x747cead <volk_32f_s32f_multiply_32f_a_sse+77>:   mov    %edx,%edi
>    0x747ceaf <volk_32f_s32f_multiply_32f_a_sse+79>:   shl    $0x4,%edi
>    0x747ceb2 <volk_32f_s32f_multiply_32f_a_sse+82>:   add    %edi,%ecx
> (gdb) i r
> eax            0xb1974c08     -1315484664
> ecx            0xb190ec08     -1315902456
> edx            0xaf   175
> ebx            0x19d9ff4      27107316
> esp            0xaf00efe4     0xaf00efe4
> ebp            0xaf00f008     0xaf00f008
> esi            0x0    0
> edi            0x0    0
> eip            0x747ce98      0x747ce98 <volk_32f_s32f_multiply_32f_a_sse+56>
> eflags         0x210246       [ PF ZF IF RF ID ]
> cs             0x73   115
> ss             0x7b   123
> ds             0x7b   123
> es             0x7b   123
> fs             0x0    0
> gs             0x33   51
>
>
> _______________________________________________
> Discuss-gnuradio mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]