[Cryptech Core] further improvements in RSA signing performance

Paul Selkirk paul at psgd.org
Tue Mar 17 00:47:53 UTC 2020


I realize I was wrong/misleading in one small way. In the first
table, I show the overall throughput in sigs/sec with 4 signers
(device performance under full load).

In the second table, I show the call chain, in ms/sig. However, in the
first line, I took the median signature time for that same run with 4
signers. In other words, there's a certain amount of task queueing and
task yielding included in that number.

The function call times (hal_rpc_pkey_sign and below) are measured
with a CLI "timing" command on an unloaded device. It's still running
with a tasker, and there are a certain number of task yields, but they
all quickly resolve to "no other task to yield to".

The reason I bring this up is that this is how I calculate the RPC
overhead - marshalling and unmarshalling data, serial I/O, dispatching
the RPC call to a task, even the potential latency of the MUX - all of
that is collectively lumped into "RPC overhead".

Anyway, here are the corrected measurements (and more consistent
values of RPC overhead).

                                       8        16        32
parallel-signatures                 43.718    36.116    32.764
RPC overhead                        23.362    23.322    23.334
hal_rpc_pkey_sign                   20.356    12.892     9.430

				paul


More information about the Core mailing list