Skip to content
ENExplore Calculators

Argon2 Parallelism Calculator

Choose the Argon2 lane count for your CPU, and check the minimum memory and per-lane allocation it forces.

About Argon2 Parallelism Calculator

Argon2 divides its memory matrix into p lanes and each lane into four segments, letting p threads work a segment at a time. Lanes above the thread count you can actually schedule add synchronisation overhead without adding cost for the attacker. Setting p higher than the cores you own slows your own logins while leaving attacker cost unchanged, and choosing p without checking the 8 × p memory minimum produces a configuration the library will simply reject.

Formula

Argon2 Parallelism

p = available hardware threads, capped at 16; each lane gets m ÷ p KiB split into 4 segments, and m must be ≥ 8 × p.

p
Argon2 parallelism (lane count)
m
Memory cost in KiB
segment
A quarter of a lane — the unit Argon2 threads synchronise on

Worked example

With the default values below, Argon2 Parallelism Calculator returns Recommended Lanes (p) of 12. Change any input above and every figure here is recalculated in your browser.

Inputs used

Physical CPU coresaccepts 1–256 cores
8 cores
Threads per coreaccepts 1–4 threads
2 threads
Threads reserved for other workaccepts 0–128 threads
4 threads
Memory costaccepts 1–4,096 MiB
64 MiB

Results

Recommended Lanes (p)
12
Threads Available for Hashing
12
Memory per Lane
5.33 MiB
Minimum Legal Memory
96 KiB
Blocks per Segment
1,365
Assessment
Use p=12 with m ≥ 96 KiB

Step by step

  1. 1Values used
  2. 2Argon2 Parallelism
  3. 3Recommended Lanes (p)= 12
  4. 4Threads Available for Hashing= 12
  5. 5Memory per Lane= 5.33 MiB
  6. 6Minimum Legal Memory= 96 KiB
  7. 7Blocks per Segment= 1,365
  8. 8Assessment= Use p=12 with m ≥ 96 KiB

Assumptions and limits

  • The result is derived only from the 4 inputs listed above. Anything not among them is not part of the calculation.
  • In particular, this calculator does not take inflation, tax or compounding frequency into account.
  • Figures are rounded for display to 2 decimal places, so totals built from several rounded parts can differ slightly from the unrounded arithmetic.

How these calculators are built and tested is described on the Methodology page. If a figure looks wrong, please report it.

Frequently Asked Questions

How is Argon2 Parallelism calculated?

p = available hardware threads, capped at 16; each lane gets m ÷ p KiB split into 4 segments, and m must be ≥ 8 × p. Argon2 divides its memory matrix into p lanes and each lane into four segments, letting p threads work a segment at a time. Lanes above the thread count you can actually schedule add synchronisation overhead without adding cost for the attacker.

Why does Argon2 Parallelism matter?

Setting p higher than the cores you own slows your own logins while leaving attacker cost unchanged, and choosing p without checking the 8 × p memory minimum produces a configuration the library will simply reject.

What values do I need to enter?

This calculator takes 4 inputs: Physical CPU cores, Threads per core, Threads reserved for other work, Memory cost. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.

Does higher parallelism make Argon2 weaker?

Not directly — total memory × passes is unchanged. But because p is recorded in the hash string, a verifier must be able to spawn p threads. Server deployments hashing many passwords at once usually set p=1 and rely on concurrency across requests instead.

Argon2 Parallelism Calculator | Calcrivo