Ubuntu 22安装使用Codon高性能Python编译器记录
Codon 在官方 Ubuntu 存储库中没有直接的教程,但可以尝试如下方法进行安装。
一、更新系统
终端输入:
sudo apt update
以及
sudo apt upgrade
二、安装curl
输入指令:
sudo apt install curl
三、安装codon
输入指令:
/bin/bash -c "$(curl -fsSL https://exaloop.io/install.sh)"
四、配置
打开.bashrc文件,查看bashrc文件可以使用Ctrl+H按键,在根目录下查看bashrc文件,并在bashrc文件中添加:
export PATH=/home/user/.codon/bin:$PATH
其中user替换为自己的目录。按Ctrl+H后可以在根目录下直接看到.codon文件夹,查看文件夹属性也可以。
我的替换为:
export PATH=/home/cj/.codon/bin:$PATH
终端输入:
source .bashrc
五、验证
输入指令:
codon --version
输出版本信息
完成安装。
六、配置环境变量及代码运行
1.在系统路径下搜索libpython文件
找到的so文件如下
这里每个电脑的配置不一样,总之就是找到libpython x.x.so文件,再打开.bashrc,添加
export CODON_PYTHON=/path/to/libpython.X.Y.so
我的添加文件如下:
加入后输入:
source .bashrc
2.运行代码
尝试运行代码,在代码文件夹下打开终端输入:
codon run -release test.py
test.py为我自己的Python代码。会出现报错
test.py:2:8-14: error: no module named 'pandas'
time.codon:44:43-49: error: name 'stderr' is not defined
time.codon:225:8-12: error: name 'fabs' is not defined
test.py:9:8-19: error: no module named 'time'
解决方法:
输出问题应该是引用三方库时,出现部分引用问题。原始的python代码头部为:
import os
import pandas as pd
import time
修改为:
import os
from python import pandas as pd
from python import time
运行方式可以选择上面的指令:
codon run -release test.py
也可以使用指令生成二进制文件:
codon build -release -exe test.py
然后在终端输入:
./test
3.结果对比
本次代码为使用pandas库,对表格文件进行数据分析。原始代码用时为6.88s。
codon加速后用时2.36s。
差不多3倍左右的加速效果。