# Performance comparison # ## The base case ## Let's assume we have a secret of length _m_. The splitting takes _n_ evaluations of a polynomial of order _k_ (over Galois field 256) for each byte, leading to _O(n\*k\*m)_ finite field multiplications. Reconstruction of the constant parameters during joining first precomputes parts of the Lagrange polynomial and then reuses them for each byte, taking _O(k\*k + k\*m)_ multiplications. Benchmark results. The times for split and join mean _seconds per byte_ of the secret length:
Revision | Features | k / n parameters | Split | Join |
---|---|---|---|---|
a47ae3e113cc | - | 2 / 3 | 5.02e-06 | 4.12e-05 |
254 / 254 | 0.0125 | 0.00175 | ||
c6815615a077 | gfmul() caching | 2 / 3 | 5.38e-06 | 4.28e-05 |
254 / 254 | 0.00741 | 0.00156 |