Harold,

I'm not using any protocol. This is just a GNURadio application.
It is important to me to know is there any way to optimize input/output
buffers of blocks to reduce latency as much as possible? Is the GNURadio
able to do so automatically?

Best,
Mostafa

On Sun, Sep 7, 2014 at 9:49 PM, Harold Daniel Moreno Urbina <
harol...@gmail.com> wrote:

> Hello,
>
> There is a mathematical relationship in the latency time? May be there is
> something related to Ethernet protocol to handle collicollisions.
> El 07/09/2014 09:39, "Mostafa Alizadeh" <m.alizade...@gmail.com> escribió:
>
> The second problem I encountered that I forgot to mention is:
>> when I send multiple of packets from a source block to a sink block and I
>> measure the latency for each packet, the latency is increasing constantly
>> as time advances. Why is this happening?
>>
>> Best,
>> Mostafa
>>
>>
>> On Sun, Sep 7, 2014 at 8:04 PM, Mostafa Alizadeh <m.alizade...@gmail.com>
>> wrote:
>>
>>> Hi Marcus,
>>>
>>> I did what you recommended for measuring latency which is defined as
>>> followed:
>>>
>>> "the traveling duration of a packet through blocks until some specified
>>> processing in one block is done".
>>>
>>> However, there are obstacles again. Firstly, how can optimize I/O
>>> buffers of my blocks to obtain a minimum latency. I tried to use
>>> "set_alignment" for output buffers. When I change them a little, the
>>> latency will change within a hundred of milliseconds. Although, the input
>>> buffers must be determined in an efficient manner but how to do so?
>>>
>>> This is important to mention that the latency here is just accounted for
>>> GNURadio latency which is not included other delays such as hardware and
>>> UHD delays.
>>>
>>> Thanks in advance,
>>> Mostafa
>>>
>>>
>>>
>>> On Fri, Sep 5, 2014 at 3:32 PM, Marcus Müller <marcus.muel...@ettus.com>
>>> wrote:
>>>
>>>>  Hi Mostafa,
>>>>
>>>> I never tire to say that such measurements are often meaningless, as a)
>>>> on general purpose processors and operating systems *anything* can happen,
>>>> stalling your flow graph, and b) as GNU Radio scales well on multiprocessor
>>>> platforms and algorithms are steadily optimized, you can expect no two
>>>> installations to exhibit the same latency. That being said, it's still a
>>>> helpful measurement when actually implementing something for a given system
>>>> configuration, so here's my advice:
>>>>
>>>> Just compare the nitems_written() of an upstream block with the
>>>> nitems_read() of a downstream block at singulare times, which will give you
>>>> the numbers of items "in the flow" between these two.
>>>> Also, take the nitems_read() of an upstream block, and measure the host
>>>> time passing until nitems_read() of a downstream block is greater or equal
>>>> that number. Apply statistics.
>>>> The easiest way to find out how long an item has been "in the flight"
>>>> would be adding a stream tag containing the current host time at an
>>>> upstream block, and reading that tag somewhere downstream, comparing the
>>>> contained timestamp with the now current system time.
>>>>
>>>> Also, since I bet this ends up on the Google search results for "GNU
>>>> Radio latency" sooner or later, a word to the uninitiated reader: Usually,
>>>> real time doesn't matter in DSP systems such as GNU Radio. Samples are not
>>>> processed at their "signal theoretical" speed, but at the rate that they
>>>> become available, limited by the speed at which the processor can process
>>>> them. In the GNU Radio case, this is even more evident because normally,
>>>> GNU Radio lets blocks process samples en bloc, meaning that you usually see
>>>> something like 4096 samples going into a block, which then processes them,
>>>> and outputs another chunk of samples (often of the same length), and then
>>>> goes to sleep, until its woken up to process another chunk of samples at
>>>> its input. Latency is thus strongly dependent on how big GNU Radio makes
>>>> these chunks, which is a thing that as developer/user you can configure,
>>>> but lowering buffer sizes usually decreases efficiency, and thus doesn't
>>>> necessarily reduce latency. Generally, if you try to optimize something for
>>>> throughput, just write your blocks as efficiently as possible and use GNU
>>>> Radio/volk optimized things as often as sensible; if you try to optimize
>>>> for latency, you need to put in more thought, optimize individual buffer
>>>> sizes, consider what optimal work chunk sizes are and if you want to go as
>>>> far as breaking up GNU Radios highly modular approach.
>>>>
>>>>
>>>> Greetings,
>>>> Marcus
>>>> On 05.09.2014 12:14, Mostafa Alizadeh wrote:
>>>>
>>>> Hi guys,
>>>>
>>>> In simulation, sometime we need to measure the latency of a packet in terms
>>>> of the duration is needed to perform some certain signal processing on the
>>>> packet. Assume that we have a source which generates packets with specific
>>>> lengths. I want to know how long does it take for the packet to go through
>>>> blocks and receive to a particular block?
>>>>
>>>> Is there any solution in GNURadio? I think it's possible with *performance
>>>> counters* but I don't know how?
>>>>
>>>> Best,
>>>> Mostafa
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Discuss-gnuradio mailing 
>>>> listDiscuss-gnuradio@gnu.orghttps://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Discuss-gnuradio mailing list
>>>> Discuss-gnuradio@gnu.org
>>>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>>>
>>>>
>>>
>>>
>>> --
>>> ***********************************************************
>>> Department of Electrical Engineering
>>> Aboureyhan Building
>>> MMWCL LAB
>>> Amirkabir University Of Technology
>>> Tehran
>>> IRAN
>>> Tel: +98 (919) 158-7730
>>> LAB: http://ele.aut.ac.ir/~mmwcl/?page_id=411
>>> Homepage: http://ele.aut.ac.ir/~alizadeh/
>>> ***********************************************************
>>>
>>
>>
>>
>> --
>> ***********************************************************
>> Department of Electrical Engineering
>> Aboureyhan Building
>> MMWCL LAB
>> Amirkabir University Of Technology
>> Tehran
>> IRAN
>> Tel: +98 (919) 158-7730
>> LAB: http://ele.aut.ac.ir/~mmwcl/?page_id=411
>> Homepage: http://ele.aut.ac.ir/~alizadeh/
>> ***********************************************************
>>
>


-- 
***********************************************************
Department of Electrical Engineering
Aboureyhan Building
MMWCL LAB
Amirkabir University Of Technology
Tehran
IRAN
Tel: +98 (919) 158-7730
LAB: http://ele.aut.ac.ir/~mmwcl/?page_id=411
Homepage: http://ele.aut.ac.ir/~alizadeh/
***********************************************************
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to