From 044af0d06d7fd166897bbb7dcf8c309ed51b7c53 Mon Sep 17 00:00:00 2001 From: f4exb Date: Fri, 19 Aug 2022 06:35:45 +0200 Subject: [PATCH] LimeSDR: reduced LimeSDR stream FIFO size to 256k to improve latency --- plugins/samplemimo/limesdrmimo/limesdrmimo.cpp | 4 ++-- plugins/samplesink/limesdroutput/limesdroutput.cpp | 2 +- plugins/samplesource/limesdrinput/limesdrinput.cpp | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/samplemimo/limesdrmimo/limesdrmimo.cpp b/plugins/samplemimo/limesdrmimo/limesdrmimo.cpp index bf86067cd..4bca71d1d 100644 --- a/plugins/samplemimo/limesdrmimo/limesdrmimo.cpp +++ b/plugins/samplemimo/limesdrmimo/limesdrmimo.cpp @@ -181,7 +181,7 @@ bool LimeSDRMIMO::setupRxStream(unsigned int channel) // set up the stream m_rxStreams[channel].channel = channel | LMS_ALIGN_CH_PHASE; // channel number - m_rxStreams[channel].fifoSize = 10 * 1024 * 1024; // fifo size in samples (SR / 10 take ~5MS/s) + m_rxStreams[channel].fifoSize = 1024 * 256; // fifo size in samples m_rxStreams[channel].throughputVsLatency = 0.5; // optimize for min latency m_rxStreams[channel].isTx = false; // RX channel m_rxStreams[channel].dataFmt = lms_stream_t::LMS_FMT_I12; // 12-bit integers @@ -220,7 +220,7 @@ bool LimeSDRMIMO::setupTxStream(unsigned int channel) // set up the stream m_txStreams[channel].channel = channel | LMS_ALIGN_CH_PHASE; // channel number - m_txStreams[channel].fifoSize = 1024 * 1024; // fifo size in samples (SR / 10 take ~5MS/s) + m_txStreams[channel].fifoSize = 1024 * 256; // fifo size in samples m_txStreams[channel].throughputVsLatency = 0.5; // optimize for min latency m_txStreams[channel].isTx = true; // TX channel m_txStreams[channel].dataFmt = lms_stream_t::LMS_FMT_I12; // 12-bit integers diff --git a/plugins/samplesink/limesdroutput/limesdroutput.cpp b/plugins/samplesink/limesdroutput/limesdroutput.cpp index 6c9695380..f70de2037 100644 --- a/plugins/samplesink/limesdroutput/limesdroutput.cpp +++ b/plugins/samplesink/limesdroutput/limesdroutput.cpp @@ -312,7 +312,7 @@ bool LimeSDROutput::acquireChannel() // set up the stream m_streamId.channel = m_deviceShared.m_channel; // channel number - m_streamId.fifoSize = 1024 * 1024; // fifo size in samples (SR / 10 take ~5MS/s) + m_streamId.fifoSize = 1024 * 256; // fifo size in samples m_streamId.throughputVsLatency = 0.5; // optimize for min latency m_streamId.isTx = true; // TX channel m_streamId.dataFmt = lms_stream_t::LMS_FMT_I12; // 12-bit integers diff --git a/plugins/samplesource/limesdrinput/limesdrinput.cpp b/plugins/samplesource/limesdrinput/limesdrinput.cpp index 01c62ec1d..bd3420297 100644 --- a/plugins/samplesource/limesdrinput/limesdrinput.cpp +++ b/plugins/samplesource/limesdrinput/limesdrinput.cpp @@ -338,7 +338,7 @@ bool LimeSDRInput::acquireChannel() // set up the stream m_streamId.channel = m_deviceShared.m_channel; // channel number - m_streamId.fifoSize = 1024 * 1024; // fifo size in samples (SR / 10 take ~5MS/s) + m_streamId.fifoSize = 1024 * 256; // fifo size in samples m_streamId.throughputVsLatency = 0.5; // optimize for min latency m_streamId.isTx = false; // RX channel m_streamId.dataFmt = lms_stream_t::LMS_FMT_I12; // 12-bit integers