So this is having a single (Erlang VM) process run code on as many cores as it can? Is this designed for a sequential program so that you don't have to split it up into processes? I'm still learning Erlang/Elixir, so I apologize if this is a stupid question.
Not the author, but if you read the code of the library (~35 LOC) you will understand exactly what it does: it spawns a process (an Erlang process, not a system process) for each of the task, and then gather the results in an array.
Whether the code is executed on many cores or not is completely orthogonal to this library. Indeed it is a property of the Erlang VM: you can configure it to run on only one system process, or many.
That said, if you are looking for computing performances, Erlang/Elixir is probably not the language of choice: it is optimized for latency and fault tolerance, not to maximize raw cpu usage.