pphantom: (Default)
[personal profile] pphantom
Интереса ради попробовал соорудить параллелизацию на Прологе (точнее, на SWI Prolog), и в результате обнаружил забавное явление.

В эту реализацию "от рождения" встроена длинная арифметика, поэтому один из механизмов (мьютексы) я попробовал потестировать на программе вычисления факториала (простой, насколько это возможно). В итоге обнаружилось, что получившаяся поделка работает, мягко говоря, существенно быстрее, чем другие реализации того же, оказавшиеся под руками (Maxima и C/C++ с GMP). А именно:
1)  SWI Prolog систематически обгоняет GMP (неважно, C или C++) в два раза. При включении распараллеливания (и там, и там) коэффициент растет и доходит примерно до 3.
2) Maxima проигрывает SWI в несколько десятков раз (но уже факториал миллиона считать попросту отказывается).

Теперь сижу и думаю - с чего бы это...
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

pphantom: (Default)
pphantom

February 2017

S M T W T F S
   1234
56789 1011
12131415161718
19202122232425
262728    

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 5th, 2025 04:16 am
Powered by Dreamwidth Studios