[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gnuradio-discuss
Subject:    Re: [Discuss-gnuradio] buffer sizes, timing and overflows
From:       Eric Blossom <eb () comsec ! com>
Date:       2007-09-24 19:21:26
Message-ID: 20070924192126.GB4012 () comsec ! com
[Download RAW message or body]

On Mon, Sep 17, 2007 at 08:59:35PM +0300, Juha Vierinen wrote:
> Hi,
> 
> I am writing a simple program that stores USRP sampled data and stores
> it on disk continuously in 1s sized files. I have made a new sink for
> this purpose, which is almost identical to gr_filesink, except that
> mine blocks in work() while the file is closed and a new one is
> created.
> 
> 
> 2) I have managed through trial and error  to get a fairly reliable
> 8MHz sampling system using the following parameters:
> fusb_nblocks=32768,fusb_block_size=1024. Is this a good way to make a
> large buffer or should I use some other gnuradio block to create a
> large buffer in RAM?

I wouldn't recommend this.
This forces the kernel to lock down 32MB of RAM, which seems like
total overkill.  Do you really need 1 second worth of locked down buffer?

Use something like fusb_nblocks=2048, fusb_block_size=4096.
Increasing the block size to 4k reduces the overhead; setting
nblocks to 2048 gives 8MB of buffer (== 250ms)

You could also enable real-time scheduling using
gr.enable_realtime_scheduling().

> I am hoping to write the data at 8MHz on a
> networked RAID array and this will cause even larger waiting times for
> my filesink, even though the average bandwidth is large enough.

This will probably work.

> 
> Gnuradio and USRP is great! I really prefer your system to labview.

Thanks!

Eric



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic