Skip to content

Draft: New threadpool, fixed in NR UE

Bartosz Podrygajlo requested to merge thread-pool-fixed into develop

This merge request is an attempt to fix the new thread pool implementation for use in NR UE and gNB (as well as eNB).

The new threadpool cannot be used with threads that are not run-to-completion. This was not a problem with the old threadpool though. It seems the three main threads of the UE were not run-to-completion.

To allow both gNB and UE to use the same threadpool implementation the NR UE threads that are not run-to-completion were removed from the thread pool. The construct used to replace it is the Actor (see https://en.wikipedia.org/wiki/Actor_model). Actor is a much simpler concept compared to threadpool - actor is a single queue and single worker - to achieve concurrency one needs to use more than one actor.

the new thread model is described in the following picture: image

Edited by Bartosz Podrygajlo

Merge request reports