草庐IT

pagerank_numpy

全部标签

python - 将 numpy 解决方案转换为 dask(numpy 索引在 dask 中不起作用)

我正在尝试将我的蒙特卡洛模拟从numpy转换为dask,因为有时数组太大,无法放入内存。因此,我在云中建立了一个计算机集群:我的dask集群由24个内核和94GB内存组成。我为这个问题准备了一个简化版的代码。我的原始numpy代码如下所示:defnumpy_way(sim_count,sim_days,hist_days):historical_data=np.random.normal(111.51,10,hist_days)historical_multidim=np.empty(shape=(1,1,sim_count,hist_days))historical_multidim

python - 将 numpy 解决方案转换为 dask(numpy 索引在 dask 中不起作用)

我正在尝试将我的蒙特卡洛模拟从numpy转换为dask,因为有时数组太大,无法放入内存。因此,我在云中建立了一个计算机集群:我的dask集群由24个内核和94GB内存组成。我为这个问题准备了一个简化版的代码。我的原始numpy代码如下所示:defnumpy_way(sim_count,sim_days,hist_days):historical_data=np.random.normal(111.51,10,hist_days)historical_multidim=np.empty(shape=(1,1,sim_count,hist_days))historical_multidim

python - 如何在没有 Python 调用开销的情况下直接从 Cython 调用 numpy/scipy C 函数?

我正在尝试在Cython中进行计算,这些计算严重依赖于一些numpy/scipy数学函数,例如numpy.log。我注意到如果我在Cython的循环中重复调用numpy/scipy函数,会产生巨大的开销成本,例如:importnumpyasnpcimportnumpyasnpnp.import_array()cimportcythondefmyloop(intnum_elts):cdefdoublevalue=0forninxrange(num_elts):#callnumpyfunctionvalue=np.log(2)这非常昂贵,大概是因为np.log通过Python而不是直接调用

python - 如何在没有 Python 调用开销的情况下直接从 Cython 调用 numpy/scipy C 函数?

我正在尝试在Cython中进行计算,这些计算严重依赖于一些numpy/scipy数学函数,例如numpy.log。我注意到如果我在Cython的循环中重复调用numpy/scipy函数,会产生巨大的开销成本,例如:importnumpyasnpcimportnumpyasnpnp.import_array()cimportcythondefmyloop(intnum_elts):cdefdoublevalue=0forninxrange(num_elts):#callnumpyfunctionvalue=np.log(2)这非常昂贵,大概是因为np.log通过Python而不是直接调用

python - Numpy 八倍精度 float 和 128 位整数。为什么以及如何?

这主要是出于好奇而提出的问题。我注意到numpy测试套件containstestsfor128bitintegers,和numerictypesmodule指的是int128、float256(octupleprecision?),以及其他似乎没有映射到我机器上的numpydtypes的类型。我的机器是64位的,但我可以使用四重128位float(butnotreally)。我想如果可以在软件中模拟四重float,理论上也可以模拟八重float和128位整数。另一方面,直到现在我以前从未听说过128位整数或八倍精度float。如果没有相应的dtype,为什么在numpy的numeric

python - Numpy 八倍精度 float 和 128 位整数。为什么以及如何?

这主要是出于好奇而提出的问题。我注意到numpy测试套件containstestsfor128bitintegers,和numerictypesmodule指的是int128、float256(octupleprecision?),以及其他似乎没有映射到我机器上的numpydtypes的类型。我的机器是64位的,但我可以使用四重128位float(butnotreally)。我想如果可以在软件中模拟四重float,理论上也可以模拟八重float和128位整数。另一方面,直到现在我以前从未听说过128位整数或八倍精度float。如果没有相应的dtype,为什么在numpy的numeric

python - 多核硬件上的 numpy

关于让numpy使用多核(在Intel硬件上)处理内部和外部向量积、向量矩阵乘法等事情的最新技术水平如何?我很乐意在必要时重建numpy,但此时我正在寻找无需更改代码即可加快速度的方法。作为引用,我的show_config()如下,我从来没有观察到numpy使用多个核心:atlas_threads_info:libraries=['lapack','ptf77blas','ptcblas','atlas']library_dirs=['/usr/local/atlas-3.9.16/lib']language=f77include_dirs=['/usr/local/atlas-3.9

python - 多核硬件上的 numpy

关于让numpy使用多核(在Intel硬件上)处理内部和外部向量积、向量矩阵乘法等事情的最新技术水平如何?我很乐意在必要时重建numpy,但此时我正在寻找无需更改代码即可加快速度的方法。作为引用,我的show_config()如下,我从来没有观察到numpy使用多个核心:atlas_threads_info:libraries=['lapack','ptf77blas','ptcblas','atlas']library_dirs=['/usr/local/atlas-3.9.16/lib']language=f77include_dirs=['/usr/local/atlas-3.9

python - 将 np.int8 数组与 127 相乘会根据平台产生不同的 numpy 数组类型

以下代码:>>>importnumpyasnp>>>np.arange(2).astype(np.int8)*127为numpy1.13.3生成#OnWindowsarray([0,127],dtype=int16)#OnLinuxarray([0,127],dtype=int8)但是,如果我将127更改为126,两者都会返回一个np.int8数组。如果我将127更改为128,两者都会返回一个np.int16数组。问题:这是预期的行为吗?为什么这一个案例的两个平台不同? 最佳答案 这是由于NumPyissue5917.instead

python - 将 np.int8 数组与 127 相乘会根据平台产生不同的 numpy 数组类型

以下代码:>>>importnumpyasnp>>>np.arange(2).astype(np.int8)*127为numpy1.13.3生成#OnWindowsarray([0,127],dtype=int16)#OnLinuxarray([0,127],dtype=int8)但是,如果我将127更改为126,两者都会返回一个np.int8数组。如果我将127更改为128,两者都会返回一个np.int16数组。问题:这是预期的行为吗?为什么这一个案例的两个平台不同? 最佳答案 这是由于NumPyissue5917.instead