Setting buffer size when using UHD

Hi All,

How do I set the buffer size when using uhd::usrp::mimo_usrp ?

BR/
Per

The buffer size setting is used across all motherboards in the mimo
setup. So, if specified, its only specified once:
http://www.ettus.com/uhd_docs/manual/html/usrp2.html#resize-the-send-and-receive-buffers

If this is linux, I recommend setting sysctl and letting UHD
automatically pick the size.

sudo sysctl -w net.core.rmem_max=50000000

-Josh

I read the page you refer to but I don’t understand. Is this correct ?

uhd::device_addr_t dev_addr;
dev_addr[“addr”] = “192.168.10.11 192.168.20.11”;
dev_addr[“addr”] = “192.168.10.11 192.168.20.11”;
dev_addr[“recv_buff_size”] = “1e4”;
d_mdev=uhd::usrp::mimo_usrp::make(dev_addr);

If this is linux, I recommend setting sysctl and letting UHD
automatically pick the size.

sudo sysctl -w net.core.rmem_max=50000000

Yes. But then I need to do change this value when depending on which
application I about to run or … ?

BR/
Per

Is the receiver buffer size in bytes or samples ?


From: discuss-gnuradio-bounces+perz=removed_email_address@domain.invalid
[discuss-gnuradio-bounces+perz=removed_email_address@domain.invalid] on behalf of Josh B.
[[email protected]]
Sent: Monday, September 20, 2010 5:07 PM
To: [email protected]
Subject: Re: [Discuss-gnuradio] Setting buffer size when using UHD

The buffer size setting is used across all motherboards in the mimo
setup. So, if specified, its only specified once:
http://www.ettus.com/uhd_docs/manual/html/usrp2.html#resize-the-send-and-receive-buffers

If this is linux, I recommend setting sysctl and letting UHD
automatically pick the size.

sudo sysctl -w net.core.rmem_max=50000000

-Josh

On 09/20/2010 03:36 AM, Per Z. wrote:

Hi All,

How do I set the buffer size when using uhd::usrp::mimo_usrp ?

BR/
Per


Discuss-gnuradio mailing list
[email protected]
Discuss-gnuradio Info Page


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

On 09/22/2010 07:17 AM, Per Z. wrote:

Is the receiver buffer size in bytes or samples ?

bytes

Its a direct proxy for SO_REVBUF socket option.
http://www.boost.org/doc/libs/1_41_0/doc/html/boost_asio/reference/basic_datagram_socket/receive_buffer_size.html

-Josh

On 09/21/2010 01:30 AM, Per Z. wrote:

I read the page you refer to but I don’t understand. Is this correct ?

uhd::device_addr_t dev_addr;
dev_addr[“addr”] = “192.168.10.11 192.168.20.11”;
dev_addr[“addr”] = “192.168.10.11 192.168.20.11”;
dev_addr[“recv_buff_size”] = “1e4”;
d_mdev=uhd::usrp::mimo_usrp::make(dev_addr);

That should work, however, that is a very small buffer. Expect overflow.

If this is linux, I recommend setting sysctl and letting UHD
automatically pick the size.

sudo sysctl -w net.core.rmem_max=50000000

Yes. But then I need to do change this value when depending on which application I about to run or … ?

50MB is half a second of buffering at full rate. The default behavior of
the UHD is to resize recv buffers to 50 MB. I think that is sufficient
for most applications.

-Josh