Here is a bash script to spawn several parallel instances of GMP ECM to find one factor.
command rm out.* ; nproc=4 ; for i in $(seq 1 $nproc) ; do echo The_number_to_factor | nice -19 time -o out.time.$i ecm -c 0 -I $nproc -one 10000 > out.log.$i & done ; wait -n ; killall ecm
Notes:
Use the physical number of processors, not hyperthreaded ones. Probably bottlenecked by ALU, not memory access. But hyperthreading might be useful when large B2.
wait -n is a nice primitive: whoever finishes first wins.
Consider --disable-aprcl during the configure step to speed up final verification of prime factors. It is unfortunate that this cannot be disabled at run time.
No comments :
Post a Comment