Proposal for new structure definition for compression algorithm

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/osmocom-net-gprs@lists.osmocom.org/.

Sangamesh Sajjan Sangamesh.Sajjan at radisys.com
Tue Mar 22 10:22:59 UTC 2016


Hi Neels,

Thanks for the suggestions.

On Friday, March 18, 2016 3:59 PM, Neels Hofmeyr wrote:

> though I'm not entirely familiar with the compression algorithm, I'm pretty sure that using an array of strings to store bits will make the code less efficient by magnitudes.

The proposed structures are being used in following scenario.
    1.	System Init (i.e. During system bootup) 
	*	Array of strings are used to form a tree, it is used only once during system bootup , hence it should not impact the performance. Let me know your opinion on this ?
    2.	Decoding of EGPRS packet downlink Ack/Nack
	*	While decoding there is no string comparison involved, we read every bit from the bitmap and traverse tree generated in init, hence only bit operation involved in decoding.
    3.	Encoding of packet uplink Ack/Nack
	*	 While encoding, first find the number of one's/zero's (i.e. run length of one's or zero's) consecutively and  find the corresponding code word by referring to the code word list
	*	This involves string comparison to find the code word, but based on your feedback we are planning to avoid string operations 
		and adopt existing (i.e. master ) approach to find the code word by using respective tables.

Hence to summarize, the tree based approach is more significant during the decoding of bitmap.
In current master code for decoding,  the function t4_rle_term is used to find the run length for each received code word, 
There could be multiple code words in the received bitmap and each require multiple iterations(i.e. maximum of 64 iterations) to find run length.
Instead if tree based approach is used multiple iterations can be avoided to find run length. 

Patches for the above modification will be sent further.

Thanks,
Sangamesh



More information about the osmocom-net-gprs mailing list