Я тестировал Pi на некоторых из моих кодов моделирования, по сравнению с парой ноутбуков, которые у меня есть. Мои коды, как правило, интенсивно работают с плавающей запятой, поэтому я использую Raspbian (который оказывается намного быстрее) из-за его поддержки с плавающей запятой. У меня один и тот же простой код на нескольких разных языках. Очевидно питон код медленнее , чем C код независимо от использования платформы I, но на Pi это , кажется, относительно более медленно, с коэффициентом около 3. Кто - нибудь знает , почему интерпретатор Python, вероятно, будет относительно медленным на Pi, и это то, что может быть исправлено?
Вот тест:
import random,math
def gibbs(N=50000,thin=1000):
x=0
y=0
print "Iter x y"
for i in range(N):
for j in range(thin):
x=random.gammavariate(3,1.0/(y*y+4))
y=random.gauss(1.0/(x+1),1.0/math.sqrt(2*x+2))
print i,x,y
gibbs()
Из этого сообщения в блоге об эксперименте.
performance
python
hard-float
raspbian
Даррен Уилкинсон
источник
источник
Ответы:
Я предполагаю, что интерпретатор Python просто не оптимизирован для ARM. Возможно, Python был оптимизирован для других платформ. По моему опыту, это верно для программного обеспечения, такого как OpenSSH, поэтому я предполагаю, что это похоже на Python.
источник
Python, вероятно, страдает от недостатка кэша процессора. Я не уверен, как вы можете измерить это легко, хотя
источник