I don't think it does. For example in a SIMD system there is parallelism, but no concurrency. Operations are being performed in parallel, but there is only a single program (SI..) and no concurrent tasks.
I think you have to add "Joint" Parallel as a definition of two separate cores that collaborate on the same data at the same time - that requires concurrent memory/disc access. That Erlang can't provide BTW.
Or the same single threaded executable running as two processes on different cores/cpus - there is parallelism but no concurrency within any of the processes?
As in they're independent of each other?
The answer would be no. Concurrency doesn't require parallelism but parallelism require concurrency.
The second answer to this quora link explains it way better than I can. https://www.quora.com/What-is-the-difference-between-concurr...