Skip to content

Benchmark of fgemv for Givaro::Integer in the field of RNS on a multicore server

ZHG2017 edited this page May 29, 2019 · 11 revisions

Note p = (0 for sequential, 1 for <RNSModulus, grain>, 2 for <RNSModulus, threads>, 3 for ParSeqHelper::Compose<ParSeqHelper::Parallel<FFLAS::CuttingStrategy::RNSModulus, grain>, ParSeqHelper::Parallel<rec, StrategyParameter::TwoDAdaptive>>)

Benchmark using OpenMP

OMP_NUM_THREADS=1

100 bits

Time method m(dimension m of the matrix) k(dimension k of the matrix) i(number of repetitions) s(seed)
4.70943 0 4000 4000 3 1020440166
18.9155 0 8000 8000 3 1020440166

200 bits

Time method m(dimension m of the matrix) k(dimension k of the matrix) i(number of repetitions) s(seed)
8.492 0 4000 4000 3 1020440166
33.7214 0 8000 8000 3 1020440166

OMP_NUM_THREADS=32

4000x4000 and 100 bits

Time method m(dimension m of the matrix) k(dimension k of the matrix) i(number of repetitions) s(seed)
3.54186 1 4000 4000 3 1020440166
3.27615 2 4000 4000 3 1020440166
3.50192 3 4000 4000 3 1020440166

4000x4000 and 200 bits

Time method m(dimension m of the matrix) k(dimension k of the matrix) i(number of repetitions) s(seed)
10.4996 1 4000 4000 3 1020440166
10.1195 2 4000 4000 3 1020440166
8.70186 3 4000 4000 3 1020440166

8000x8000 and 100 bits

Time method m(dimension m of the matrix) k(dimension k of the matrix) i(number of repetitions) s(seed)
13.6897 1 4000 4000 3 1020440166
12.7661 2 4000 4000 3 1020440166
14.1094 3 4000 4000 3 1020440166

8000x8000 and 200 bits

Time method m(dimension m of the matrix) k(dimension k of the matrix) i(number of repetitions) s(seed)
35.8733 1 4000 4000 3 1020440166
37.1161 2 4000 4000 3 1020440166
35.3029 3 4000 4000 3 1020440166

Vary GrainSize from 1 to 16 for 4000x4000 and 100 bits with OMP_NUM_THREADS=32

|Time | method | GrainSize | m(dimension m of the matrix) | k(dimension k of the matrix) | i(number of repetitions) | s(seed) | |---------|------|------|-------|-------|-------| | | 1 | 1 | 4000 | 4000 | 3 | 1020440166 | | | 1 | 2 | 4000 | 4000 | 3 | 1020440166 | | | 1 | 4 | 4000 | 4000 | 3 | 1020440166 | | | 1 | 8 | 4000 | 4000 | 3 | 1020440166 | | | 1 | 16 | 4000 | 4000 | 3 | 1020440166 |