AEStream: Accelerated event-based processing with coroutines

12/21/2022
by   Jens Egholm Pedersen, et al.
0

Neuromorphic sensors imitate the sparse and event-based communication seen in biological sensory organs and brains. Today's sensors can emit many millions of asynchronous events per second, which is challenging to process on conventional computers. To avoid bottleneck effects, there is a need to apply and improve concurrent and parallel processing of events. We present AEStream: a library to efficiently stream asynchronous events from inputs to outputs on conventional computers. AEStream leverages cooperative multitasking primitives known as coroutines to concurrently process individual events, which dramatically simplifies the integration with event-based peripherals, such as event-based cameras and (neuromorphic) asynchronous hardware. We explore the effects of coroutines in concurrent settings by benchmarking them against conventional threading mechanisms, and find that AEStream provides at least twice the throughput. We then apply AEStream in a real-time edge detection task on a GPU and demonstrate 1.3 times faster processing with 5 times fewer memory operations.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset