【RPi PICO】 圆周率计算测试

树莓派 PICO 和 RP2040 相关应用讨论
回复
头像
shaoziyang
帖子: 3967
注册时间: 2019年 10月 21日 13:48

【RPi PICO】 圆周率计算测试

#1

帖子 shaoziyang »

测试程序:

Code: Select all

import gc
from utime import ticks_ms, ticks_diff

def pi(places=100):
# 3 + 3*(1/24) + 3*(1/24)*(9/80) + 3*(1/24)*(9/80)*(25/168)
# The numerators 1, 9, 25, ... are given by (2x + 1) ^ 2
# The denominators 24, 80, 168 are given by (16x^2 -24x + 8)
extra = 8
one = 10 ** (places+extra)
t, c, n, na, d, da = 3*one, 3*one, 1, 0, 0, 24

while t > 1:
n, na, d, da = n+na, na+8, d+da, da+32
t = t * n // d
c += t
return c // (10 ** extra)

def pi_t(n=1000):
gc.collect()
t1 = ticks_ms()
pi(n)
t2 = ticks_ms()
print(' ', ticks_diff(t2, t1), 'ms')

for i in (100, 500, 1000, 5000, 10000):
try:
print('\nCalc {} bits pi'.format(i))
pi_t(i)
except:
print('Calc error!')
运行结果:

代码: 全选

Calc 100 bits pi
17 ms

Calc 500 bits pi
190 ms

Calc 1000 bits pi
665 ms

Calc 5000 bits pi
19950 ms

Calc 10000 bits pi
74292 ms
 
 
 

头像
shaoziyang
帖子: 3967
注册时间: 2019年 10月 21日 13:48

Re: 【RPi PICO】 圆周率计算测试

#2

帖子 shaoziyang »

运行结果显示,125M主频下的RP2040,性能和STM32F411差不多。

回复

  • 随机主题
    回复总数
    阅读次数
    最新文章