Ahoj,
náhodou jsem dneska dostal nápad, že bych si chtěl vypočítat Pí. Přeci jen, nedávno byl mezinárodní Pí den. Rozhodl jsem se, že se s vámi podělím a každý může dát svému PC trochu zabrat nad nějakým tím výpočtem. Kód jsem hodil na github zde: https://github.com/woody41/pi-calc
Stačí zkompilovat a spustit přes maven. Je tam jednou zajímavé nastavení a to _round. Tímto nastavujete z kolika desetiných míst se bude Pí počítat. Čím více desetiných míst, tím přesnější výsledek a tím náročnější výpočet. Bohužel se jedná o navazující výpočty, takže mě nenapadlo jak z toho udělat více vláknovou appku aby byl výpočet rychlejší na vícejaderných procesorech. Enjoy a klidně přidejte vlastní kód, třeba jako pull request, pokud to bude dávat smysl, approvnu. Dejte vědět jak rychle vám to běží, je tam i counter na čas!
private static final MathContext _round = new MathContext(10000);
Edit: Můj čas:
0.071s - 0.2s na 10 000 desetiných míst
2.825s na 100 000 desetiných míst
106s na 1 000 000 desetincýh míst
na každé desetiné místo je tedy potřeba cca o 3750% více výpočetního výkonu respektive času.