Jason.decode/1 (native, spawned) vs NimblePool-based parser pool — 500 concurrent 1MB+ JSON payloads

From nimblepool README in their Github:

The downside of NimblePool is that, because all resources are under a single process, any resource management operation will happen on this single process, which is more likely to become a bottleneck. This can be addressed, however, by starting one NimblePool per scheduler and by doing scheduler-based dispatches.

I assume you have a single worker pool as you’ve provided an atom name for this process.