Skip to content

remove generic thread pool abort and use 3GPP CRC to detect the segment is decoded

Thomas Laurent requested to merge remove-thread-pool-abort into develop

Replace the generic thread pool abort by a turbo/LDPC build-in abort

benefit:

  • faster because we break the running decoders after each iteration when a segment is not decodable
  • fix memory use after free #629 (closed) of wrong thread pool usage in develop
  • simplify the thread pool, to make easier replacement by other thread pools implementations (none of them have a abort feature)
  • fix a algo mistake in 5G: when we have multiple UEs in UL, we decode all UEs in // since this MR

Change the OAI Ran ldpc success detection from LDPC internal parity bits to 3GPP CRC
If the CRC24 is good, we can assume we decoded the packet, even if the LDPC parity bits are not all good. Anyway, we will drop these parity bits at the end of the decoding.
This is the same in 4G, with turbo code.
In 5G OAI, it was not working because the HARQ buffers were not cleared correctly, but this problem has been fixed before this MR

Edited by Thomas Laurent

Merge request reports