nim-taskpools/benchmarks/bouncing_producer_consumer
Jacek Sieka 2067764521
fork std/tasks, stricter exceptions (#34)
2023-07-05 11:46:36 +02:00
..
README.md initial commit 2021-06-28 16:47:06 +02:00
taskpool_bpc.nim fork std/tasks, stricter exceptions (#34) 2023-07-05 11:46:36 +02:00

README.md

BPC (Bouncing Producer-Consumer)

From tasking-2.0 description

BPC, short for Bouncing Producer-Consumer benchmark, as far as I know, first described by [Dinan et al][1]. There are two types of tasks, producer and consumer tasks. Each producer task creates another producer task followed by n consumer tasks, until a certain depth d is reached. Consumer tasks run for t microseconds. The smaller the values of n and t, the harder it becomes to exploit the available parallelism. A solid contender for the most antagonistic microbenchmark.