python提高计算速度的几种方法---学习笔记26

原创 2017年01月03日 00:00:52

原版方法:

loops=25000000

from math import*
a=range(1,loops)
def f(x):
    return 3*cos(x)+4*sin(x)**2
%timeit r=(f(x) for x in a)

效率:

1000000 loops, best of 3: 552 ns per loop

改进方法1、使用数组

import numpy as np
a = np.arange(1, loops)
%timeit r = 3 * np.cos(a) + np.sin(a)** 2

效率:

1 loop, best of 3: 3.87 s per loop

改进方法2、数字表达专用库

import numexpr as ne
ne.set_num_threads(1)
f = '3 * log(a) + cos(a) **2'
%timeit r = ne.evaluate(f)

效率:

1 loop, best of 3: 2.15 s per loop

改进方法3、多线程

ne.set_num_threads(4)
%timeit r = ne.evaluate(f) 

效率:

1 loop, best of 3: 1.14 s per loop

###########################################################

可以看得到,python的计算效率是有方法提高的。当面临效率问题的时候,可以采用某种适当的方法提高相应的效率




   

版权声明:本文为博主原创文章,转载请注明来源

python小技巧及速度提高

Python 3: 1. 列表推导式 你有一个list:bag = [1, 2, 3, 4, 5] 现在你想让所有元素翻倍,让它看起来是这个样子:[2, 4, 6, 8, 10]...
  • wangzhaotongalex
  • wangzhaotongalex
  • 2016年04月05日 22:32
  • 916

python 提高效率的几个小技巧

1.1. 最常见 一个最常见的速度陷坑(至少是俺在没看到网上这篇介绍时陷进去 过好些次的) 是: 许多短字串并成长字串时, 大家通常会用: Toggle line numbers    1...
  • Vincent_czz
  • Vincent_czz
  • 2012年06月29日 17:54
  • 8356

Python Numpy的一些操作可以极大的加快你的code运行速度

So,想让你的code运行速度大大滴加快么?快使用Numpy自带的一些函数把!
  • zhangxinyu11021130
  • zhangxinyu11021130
  • 2017年08月05日 22:21
  • 707

【Python - GPU】基于Python的GPU加速并行计算 -- pyCUDA

Python实现的CUDA – pyCUDANvidia的CUDA 架构为我们提供了一种便捷的方式来直接操纵GPU 并进行编程,但是基于 C语言的CUDA实现较为复杂,开发周期较长。而python ...
  • u014636245
  • u014636245
  • 2016年10月31日 20:05
  • 13382

Python内置函数与numPy运算速度对比

Python自己带了几个函数,主要是sum,max,min,同时numPy中也有几个类似的
  • Yeuing
  • Yeuing
  • 2014年07月21日 16:07
  • 1962

python 耗时效率统计

原文地址:http://www.cnblogs.com/moinmoin/archive/2011/03/18/python-runtime-measuring.html Python 社区...
  • l1905
  • l1905
  • 2013年12月25日 09:28
  • 1573

使用Spyder进行Python调试

相对于PyDev、PyCharm、PTVS这些软件,spyder对内存的需求要小很多,而且也很简单易学。下面做一些简单的介绍。 1、首先是建立工程: 单击    file-----NewProje...
  • wjtcwwjtcw
  • wjtcwwjtcw
  • 2017年04月23日 09:32
  • 16372

Python算法性能提升的几种方式

1、优化原本算法:在算法中尽量降低算法复杂度,充分利用已生成的数据作为缓存,用于下次。 2、使用Numpy:Numpy是专门用于计算数值的库,由于Numpy创建一个大的对象时需要大的内存开销,需要兼...
  • qq_16234613
  • qq_16234613
  • 2017年08月11日 20:53
  • 191

Python性能优化的20条建议

Python性能优化的20条建议 优化算法时间复杂度 算法的时间复杂度对程序的执行效率影响最大,在Python中可以通过选择合适的数据结构来优化时间复杂度,如list和set查找某...
  • u010159842
  • u010159842
  • 2017年01月16日 13:11
  • 2059

比较一下numpy.math和Python标准库的math.sin的计算速度

我用下面这个小程序,比较了一下numpy.math和Python标准库的math.sin的计算速度: import time import math import numpy as np x =...
  • yeyang911
  • yeyang911
  • 2013年09月26日 20:04
  • 3210
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python提高计算速度的几种方法---学习笔记26
举报原因:
原因补充:

(最多只允许输入30个字)