高飞配件包

goofit的Python项目详细描述


goofit是一个高度并行的拟合框架,最初是为高能物理设计的。

安装基础知识

这个包可以与pip一起安装,但是使用scikit构建,并且在您的系统上进行了完全优化的构建。因此,在运行pip安装时有一些注意事项。在尝试安装之前,请确保已生成scikit(pip install scikit-build)。另外,如果您没有cmake的最新版本(建议使用3.8或更高版本),也可以运行pip install cmake。构建时,还应该使用pip的-v标志,以便可以看到它的构建(并观察 配置选项)。否则,您可能会在没有输出的情况下等待很长时间(特别是在找到cuda的情况下)。

安装:pip

使用PIP 10+:

pip install -v goofit

使用pip<;10:

pip install scikit-build
pip install -v goofit

goofit会自动寻找cuda,如果找到cuda,则会以gpu模式构建。您可以通过传递cmake选项(见下文)或通过设置环境变量,在构建之前选择特定版本。您可能希望使用openmp作为后端来构建以避免使用gpu,或者如果您在macos上使用anaconda,则可能需要cpp版本。以下是三种常见的后端:

GOOFIT_DEVICE=CUDA pip install -v goofit
GOOFIT_DEVICE=OMP pip install -v goofit
GOOFIT_DEVICE=CPP pip install -v goofit

如果要通过pip向cmake发送任意命令,则需要传递每个选项,从--选项开始。如果不传递选项,pip将尝试重用生成的版本,但是如果传递选项,pip将重新生成,因此这适用于重新生成,与上面的行不同。这是将omp设置为后端的方法:

pip install -v goofit –install-option=”–” –install-option=”-DGOOFIT_DEVICE=OMP”

安装:本地

如果您想将pdf添加到goofit,或者使用goofit pacakges,那么您应该使用git在本地目录中工作。在下面的示例中,我假设您已经使用github设置了ssh密钥;如果您愿意,可以使用https,方法是将url更改为https://github.com/GooFit/GooFit.git

git clone --recursive git@github.com:GooFit/GooFit.git
cd goofit

pipenv

您可以使用pipenv:

pipenv install --dev

然后激活该环境:

pipenv shell

局部pip

此处的正常安装工作正常,但与往常一样,您应该包括详细的输出:

pip install -v .

您可以将选项传递给build命令,例如:

pip install -v . --install-options="--" --install-options="-DGOOFIT_PACKAGES=OFF"

从git构建源代码包

仅供开发人员使用:

要制作源代码包,请从一个干净的(例如新的)git goofit包开始,并签出所有子模块:

git clone --branch=master --recursive --depth=10 git@github.com:GooFit/GooFit.git
cd goofit
python setup.py sdist
python -m twine upload dist/*

要制作二进制软件包,请改用:

python setup.py bdist_wheel -- -DGOOFIT_OPTI="-march=core2"

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java静态键入和编写一个简单的矩阵库   java如何最小化层次结构的代码量   这是在Google云数据存储中使用Java按键查询的正确方法吗?   java Android php+mysql+json执行异步任务时出错   java Hadoop Hbase访问被拒绝异常   java如何在json中指定特定的对象路径   JavaSpringJPA/Hibernate在使用@modify和@Query进行特殊更新之前调用完整更新   java多个错误通知   java插入Linkedlist和Node   java将图像放在webview中并调整其宽度   Java没有真实属性的缺点是什么?   java“isGooglePlayServicesAvailable”(此)已被弃用   java托管HIPPO CMS   安卓 Java。网URI构造函数不是编码字符(&C)   java如何用hibernate映射Deque?   java传递枚举类型作为参数   java自由堆大小在Maven中不会增加   java如何使用hashmap和arraylist的循环逻辑?   java如何使用JDBC复制MySql数据库