基于多线程,大数框架decimal.js和webworker 圆周率计算

网友投稿 732 2022-10-13 20:56:02

基于多线程,大数框架decimal.js和webworker 圆周率计算

Pi-calculation-multithreading

Pi calculation, multithreading, based on large number frames decimal.js and webworker 圆周率计算,多线程,基于大数框架decimal.js和webworker 圆周率计算-可设置圆周率位数-可选择线程个数-多线程大数框架webworker输出useragent大数框架

圆周率计算多线程,使用 BigInteger.js和浏览器原生的BigInt之后速度得到巨大提升!

需要浏览器chrome68以上,才原生支持BigInt

BigInteger.js

BigInteger.js是Javascript的任意长度整数库,允许对无限大小的整数进行算术运算,尽管存在内存和时间限制。 更新(2018年12月2日):BigInt被添加为JavaScript的本机功能。 此库现在可用作polyfill:如果环境支持本机BigInt,则此库充当本机实现的瘦包装器。 建议升级浏览器到chrome68以上,才可支持原生BigInt. 如果浏览器原生支持BigInt,则运行速度有巨大提升!

圆周率计算多线程

计算运行速度排行:

1.原生BigInt最快,

2.BigInteger.js中速,

3.Decimal.js最慢。

线程数为4 圆周率计算6000位测试结果

firefox 66 测试 decimal.js 达到1倍速度

firefox 66 测试 BigInteger.js 达到2.163倍速度

chrome 75 测试 decimal.js 达到3.4375倍速度

chrome 75 测试 原生BigInt 达到74.038倍速度

线程数为4 圆周率计算10000位测试结果

firefox 66 测试 decimal.js 达到1倍速度

firefox 66 测试 BigInteger.js 达到2.066倍速度

chrome 75 测试 decimal.js 达到3.688倍速度

chrome 75 测试 原生BigInt 达到100.773倍速度

https://masx200.github.io/%E5%9C%86%E5%91%A8%E7%8E%87%E8%AE%A1%E7%AE%97-%E5%8F%AF%E8%AE%BE%E7%BD%AE%E5%9C%86%E5%91%A8%E7%8E%87%E4%BD%8D%E6%95%B0-%E5%8F%AF%E9%80%89%E6%8B%A9%E7%BA%BF%E7%A8%8B%E4%B8%AA%E6%95%B0-%E5%A4%9A%E7%BA%BF%E7%A8%8B%E5%A4%A7%E6%95%B0%E6%A1%86%E6%9E%B6webworker%E8%BE%93%E5%87%BAuseragent%E5%A4%A7%E6%95%B0%E6%A1%86%E6%9E%B6/index.html

可以测试浏览器的JavaScript运行引擎速度

建议在最新版本的chrome或者Firefox或者safari中运行,否则速度可能特别慢

UserAgent: Mozilla/5.0 (Linux; Android 9; MHA-AL00) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.136 Mobile Safari/537.36 开始圆周率多线程测试 线程数为8 圆周率计算1000位 计算圆周率中...... 计算完成,用时1.476秒第340次 圆周率1000位 3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067982148086513282306647093844609550582231725359408128481117450284102701938521105559644622948954930381964428810975665933446128475648233786783165271201909145648566923460348610454326648213393607260249141273724587006606315588174881520920962829254091715364367892590360011330530548820466521384146951941511609433057270365759591953092186117381932611793105118548074462379962749567351885752724891227938183011949129833673362440656643086021394946395224737190702179860943702770539217176293176752384674818467669405132000568127145263560827785771342757789609173637178721468440901224953430146549585371050792279689258923542019956112129021960864034418159813629774771309960518707211349999998372978049951059731732816096318595024459455346908302642522308253344685035261931188171010003137838752886587533208381420617177669147303598253490428755468731159562863882353787593751957781857780532171226806613001927876611195909216420199

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:TCP连接管理
下一篇:计算机网络专题复习(传输层)
相关文章