最近偶尔看到modin.pandas 能提升效率,最近事情不多就开始验证一下。
1.首先需要的软件包:
Python-3.7.6.tgz
gcc-9.1.0.tar.gz
glibc-2.17.tar.gz
其他的比如pandas==0.25.3 , libffi-dev,xz-devel 等等。
2.安装python
首先最开始安装的是python3.8 由于后期安装 modin[ray] Ray 这个库的时候他最新支持python 3.7,
modin.pandas最新支持pandas=0.25.3 最新的pandas版本已经到1.0以上了。所以还是以3.7.6 来验证。
python安装:
tar -zxvf Python-3.7.6.tgz
./configure --prefix=/usr/local/python37 LDFLAGS='-L/opt/local/lib -R/opt/local/lib'
为什么要加 LDFLAGS='-L/opt/local/lib -R/opt/local/lib'
由于存在多版本的时候,会报出 No module named '_ctypes'需要重新编译,
yum install libffi-dev 这个安装了有时侯还是汇报,这边是重新编译安装python 成功。
make &&make install
3.安装 modin.pandas:
pip3 install pandas==0.25.3
pip3 install modin
pip3 install modin[ray] # Install Modin dependencies and Ray to run on Ray
pip3 install modin[dask] # Install Modin dependencies and Dask to run on Dask
问题 安装完成之后验证:
在python下执行 import ray 的时候报错。
/usr/lib64/libstdc++.so.6: version `CXXABI_1.3.5'
strings /usr/lib64/libstdc++.so.6|grep CXXABI 发现 支持到1.1.2 gcc 版本也比较老。
3.1 升级gcc :
一、下载gcc最新的源码包–>wget http://ftp.gnu.org/gnu/gcc/gcc-9.1.0/gcc-9.1.0.tar.gz
二、解压缩–>tar -xzvf gcc-9.1.0.tar.gz
三、进入解压缩后目录–>cd gcc-9.1.0
四、运行download_prerequisites脚本, ./contrib/download_prerequisites ,这个脚本会自动帮你下
载所需要的依赖文件和库
五、建立输出目录,将所有的中间文件都放到该目录
1)建立目录–>mkdir gcc-build-9.1.0
2) 进入目录–>cd gcc-build-9.1.0
六、执行–>…/configure -enable-checking=release -enable-languages=c,c++ -disable-multilib
–enable-languages表示你要让你的gcc支持那些语言,–disable-multilib不生成编译为其他平台可执行代码的交叉编译器。–disable-checking生成的编译器在编译过程中不做额外检查,也可以使用*–enable-checking=xxx*来增加一些检查
七、编译:make;注意此步和上一步,比较耗时,本机编译正真一下午。等的心都累了。
八、安装:make install (此操作需要root用户)
九、验证:gcc -v;或者g++ -v,如果显示的gcc版本仍是以前的版本,就需要重启系统;或者可以查看gcc的安装位置:which gcc;然后在查看版本 /usr/local/bin/gcc -v,通常gcc都安装在该处位置。
3.2 升级 libc
/lib64/libc.so.6: version `GLIBC_2.14' not found
wget http://ftp.gnu.org/gnu/glibc/glibc-2.17.tar.gz
tar -xvf glibc-2.17.tar.gz
mkdir glibc-2.17-build
/configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
make make install
3.3 安装 lzma
import pandas 的时候报错:
No module named '_lzma'
先安装 yum install xz-devel 有的说还要安装 yum install python-backports-lzma 但是我这边这个不需要安装。
然后 pip3 install backports.lzma
发现还是这样然后需要修改 /usr/local/lib/python37/lzma.py 下面 27行的
try:
from _lzma import *
from _lzma import _encode_filter_properties, _decode_filter_properties
except ImportError:
from backports.lzma import *
from backports.lzma import _encode_filter_properties, _decode_filter_properties
再次导入pandas 成功。
到目前为只安装成功。
然后验证 1个2.5G的文件
![]()
确实快了好多。
下载文件库比较慢的时间可以切换下载源
常用的有镜像有
清华大学镜像
https://pypi.tuna.tsinghua.edu.cn/simple/
阿里云
http://mirrors.aliyun.com/pypi/simple/
中科大镜像
https://pypi.mirrors.ustc.edu.cn/simple/
豆瓣镜像
http://pypi.douban.com/simple/
中科大镜像2
http://pypi.mirrors.ustc.edu.cn/simple/
参考:https://www.jianshu.com/p/198620bbc5a0
https://blog.youkuaiyun.com/weixin_42090356/article/details/90678158
https://github.com/modin-project/modin
896



被折叠的 条评论
为什么被折叠?



