Added a minimum size of packets to be looped to improve performance. Also a bug fix that led to incorrect timing between packets
This commit is contained in:
parent
210bdf11a9
commit
e9ea3d7934
@ -138,6 +138,7 @@ void AbstractPort::updatePacketList()
|
|||||||
|
|
||||||
void AbstractPort::updatePacketListSequential()
|
void AbstractPort::updatePacketListSequential()
|
||||||
{
|
{
|
||||||
|
const int kMinLoopSize = 16;
|
||||||
long sec = 0;
|
long sec = 0;
|
||||||
long nsec = 0;
|
long nsec = 0;
|
||||||
|
|
||||||
@ -189,6 +190,9 @@ void AbstractPort::updatePacketListSequential()
|
|||||||
break;
|
break;
|
||||||
case OstProto::StreamControl::e_su_packets:
|
case OstProto::StreamControl::e_su_packets:
|
||||||
x = frameVariableCount;
|
x = frameVariableCount;
|
||||||
|
n = 2;
|
||||||
|
while (x < kMinLoopSize)
|
||||||
|
x = frameVariableCount*n++;
|
||||||
n = streamList_[i]->numPackets() / x;
|
n = streamList_[i]->numPackets() / x;
|
||||||
y = streamList_[i]->numPackets() % x;
|
y = streamList_[i]->numPackets() % x;
|
||||||
burstSize = x + y;
|
burstSize = x + y;
|
||||||
|
@ -451,7 +451,7 @@ _restart:
|
|||||||
{
|
{
|
||||||
long usecs = packetSequenceList_.at(i+k)->usecDelay_
|
long usecs = packetSequenceList_.at(i+k)->usecDelay_
|
||||||
+ overHead;
|
+ overHead;
|
||||||
if (usecs)
|
if (usecs > 0)
|
||||||
{
|
{
|
||||||
udelay(usecs);
|
udelay(usecs);
|
||||||
overHead = 0;
|
overHead = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user