On Thu, Mar 8, 2012 at 2:24 PM, Nick Foster <[email protected]> wrote:

> On Thu, Mar 8, 2012 at 11:21 AM, Marcus D. Leech <[email protected]>wrote:
>
>> **
>> On 08/03/12 02:16 PM, Tom Rondeau wrote:
>>
>> On Thu, Mar 8, 2012 at 1:22 PM, Marcus D. Leech <[email protected]>wrote:
>>
>>> On 08/03/12 01:11 PM, Nick Foster wrote:
>>> > Rafiq,
>>> >
>>> > What CPU are you using for this test? Specifically, please send the
>>> > output of "cat /proc/cpuinfo".
>>> >
>>> > --n
>>> >
>>>  To add some more data, I tested the attached flow-graph on the only
>>> remaining 32-bit machine in my herd.
>>>  It provoked:
>>>
>>> #0  0x0090d6b3 in volk_32fc_x2_multiply_32fc_a_sse3 ()
>>>   from /usr/local/lib/libvolk.so.0.0.0
>>> #1  0x008de0d5 in get_volk_32fc_x2_multiply_32fc_a ()
>>>   from /usr/local/lib/libvolk.so.0.0.0
>>> #2  0x00a8f517 in gri_fft_filter_ccc_generic::filter(int,
>>> std::complex<float> const*, std::complex<float>*) ()
>>>   from /usr/local/lib/libgnuradio-core-3.5.3git.so.0.0.0
>>>  #3  0x00a967fb in gr_fft_filter_ccc::work(int, std::vector<void const*,
>>> std::allocator<void const*> >&, std::vector<void*, std::allocator<void*>
>>> >&) ()
>>>   from /usr/local/lib/libgnuradio-core-3.5.3git.so.0.0.0
>>>  #4  0x00a65eb7 in gr_sync_decimator::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.5.3git.so.0.0.0
>>>  #5  0x00a4d185 in gr_block_executor::run_one_iteration() ()
>>>   from /usr/local/lib/libgnuradio-core-3.5.3git.so.0.0.0
>>> #6  0x00a688e3 in
>>> gr_tpb_thread_body::gr_tpb_thread_body(boost::shared_ptr<gr_block>, int)
>>> () from /usr/local/lib/libgnuradio-core-3.5.3git.so.0.0.0
>>>  #7  0x00a62bfc 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.5.3git.so.0.0.0
>>>  #8  0x001b881c in boost::function0<void>::operator()() const ()
>>>   from /usr/local/lib/libgruel-3.5.3git.so.0.0.0
>>>
>>>
>>> This is on a Fedora-12 machine, here's /proc/cpuinfo
>>>
>>> processor    : 0
>>> vendor_id    : GenuineIntel
>>> cpu family    : 6
>>> model        : 14
>>> model name    : Genuine Intel(R) CPU           T2400  @ 1.83GHz
>>> stepping    : 8
>>> cpu MHz        : 1000.000
>>> cache size    : 2048 KB
>>> physical id    : 0
>>> siblings    : 2
>>> core id        : 0
>>> cpu cores    : 2
>>> apicid        : 0
>>> initial apicid    : 0
>>> fdiv_bug    : no
>>> hlt_bug        : no
>>> f00f_bug    : no
>>> coma_bug    : no
>>> fpu        : yes
>>> fpu_exception    : yes
>>> cpuid level    : 10
>>> wp        : yes
>>> flags        : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov
>>> clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc
>>> arch_perfmon bts aperfmperf pni monitor vmx est tm2 xtpr pdcm
>>> bogomips    : 3657.49
>>> clflush size    : 64
>>> cache_alignment    : 64
>>> address sizes    : 32 bits physical, 32 bits virtual
>>> power management:
>>>
>>> processor    : 1
>>> vendor_id    : GenuineIntel
>>> cpu family    : 6
>>> model        : 14
>>> model name    : Genuine Intel(R) CPU           T2400  @ 1.83GHz
>>> stepping    : 8
>>> cpu MHz        : 1000.000
>>> cache size    : 2048 KB
>>> physical id    : 0
>>> siblings    : 2
>>> core id        : 1
>>> cpu cores    : 2
>>> apicid        : 1
>>> initial apicid    : 1
>>> fdiv_bug    : no
>>> hlt_bug        : no
>>> f00f_bug    : no
>>> coma_bug    : no
>>> fpu        : yes
>>> fpu_exception    : yes
>>> cpuid level    : 10
>>> wp        : yes
>>> flags        : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov
>>> clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc
>>> arch_perfmon bts aperfmperf pni monitor vmx est tm2 xtpr pdcm
>>> bogomips    : 3657.54
>>> clflush size    : 64
>>> cache_alignment    : 64
>>> address sizes    : 32 bits physical, 32 bits virtual
>>> power management:
>>
>>
>>
>>  Well, there's your problem right there!
>>
>>   flags        : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca
>> cmov
>> clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc
>> arch_perfmon bts aperfmperf pni monitor vmx est tm2 xtpr pdcm
>>
>>  Your CPU doesn't seem to support SSE3, which begs the question, why is
>> it allowed to call the SSE3 proto-kernel?
>>
>>  Check your ~/.volk/volk_config to see what it says on that kernel (that
>> is, if you have run volk_profile; if you haven't, run it first and see what
>> happens).
>>
>>  Tom
>>
>>   The information in /proc/cpuinfo appears to be incorrect.   That
>> particular CPU, the T2400, actually
>>   *does* support SSE3, according to the Intel datasheet, and other
>> googled stuff out there.
>>
>
> The relevant line in the Volk archs.xml is correct, and it's looking for
> the correct bit in ECX to determine PNI/SSE3 capability. /proc/cpuinfo
> calls this "pni", or Prescott New Instructions, not SSE3.
>
> --n
>

Damn... I should have remembered that...

Tom


>
>
_______________________________________________
Discuss-gnuradio mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to