How to get the throughput of SPDZ?
Closed this issue · 1 comments
xiaolixiaoyi commented
I wanted to see the throughput of SPDZ. I tried to run some code with a large amount of independent basic operations (e.g., 5000 multiplications). For example:
for i in range(5000): c = a * b
But I observed that the SPDZ did not take full use of cpu and network.
Is there any options that enable SPDZ to run with multiple threads to make full use of cpu and network?
pascholl commented
You can use the for_range_multithread
construct from Compiler/library.py
:
@for_range_multithread(t, par, total)
def _(i):
c = a * b
This does total
multiplications across t
threads, where in each thread the communication for up to par
multiplications is merged into a single round.
Experimenting with different parameters should help maximize throughput for your setting.