vermaseren / form

The FORM project for symbolic manipulation of very big expressions
GNU General Public License v3.0
1.13k stars 135 forks source link

Parallelized O4? #226

Open tueda opened 7 years ago

tueda commented 7 years ago

Could it be possible to parallelize O4 of the formula optimization, both theoretically and practically? Because O3 is aware of the parallelization (though the optimization gets a bit worse) and O4 seems to use only one core, in practice O4 may not be so fast in a comparison with O3.

Here is a result of a benchmarking using a 13x13 (Sylvester) determinant (15 variables, 43166 terms) on a desktop PC with tform -w4:

# of operations time (FORM) [s]
O0 587880 3.8
O1 71262 4.3
O2 55685 22.8
O3 40329 114.5
O3 41737 115.2
O3 43821 116.5
O4 35419 127.8

where for O3 I put the numbers several times because it is not deterministic even with a fixed seed (my choice here was 1). With the sequential form, O3 gave me 38952 operations in 262 seconds.

benruijl commented 7 years ago

I thought O4 was already parallelized in the master branch. If it isn't, I have to see where I put the code.

Paralellization is very simple: just run the same code n times and take the minimum.

Op do 3 aug. 2017 06:16 schreef Takahiro Ueda notifications@github.com:

Could it be possible to parallelize O4 of the formula optimization, both theoretically and practically? Because O3 is aware of the parallelization (though the optimization gets a bit worse) and O4 seems to use only one core, in practice O4 may not be so fast in a comparison with O3.

Here is a result of a benchmarking using a 13x13 (Sylvester) determinant (15 variables, 43166 terms) on a desktop PC with tform -w4:

of operations time (FORM) [s]

O0 587880 3.8 O1 71262 4.3 O2 55685 22.8 O3 40329 114.5 O3 41737 115.2 O3 43821 116.5 O4 35419 127.8

where for O3 I put the numbers several times because it is not deterministic even with a fixed seed (my choice here was 1). With the sequential form, O3 gave me 38952 operations in 262 seconds.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/vermaseren/form/issues/226, or mute the thread https://github.com/notifications/unsubscribe-auth/AARGGeOT2SrWghjJS57097AFDYFqgMGwks5sUcglgaJpZM4OsbOV .