`

cython的效果

阅读更多

我有个用py写的 crc-ccitt的验证程序(实现效率并不高)

 

这么个程序用cython简单转换一下。速度提高了70x ...

 

出于无聊,我把这段代码变为c++,用swig生成一个接口调用。

 

结果是:.... 这两者速度相差无几,可以忽略。。。。

 

再测试。。。直接拿boost的crc来用。用cython调用。

 

速度比py提高 大约 200x。是我自己写的校验 快 2.5x

 

左右。

 

这个现象说明啥?

 

1:如果像我这种半桶水的家伙,写的c++代码未必有cy生成的快

 

2: 写得好的c++确实很快,例如boost的crc。

 

出于好奇我看了一下它的实现,发觉甚为精妙,而且也不难读,比起lambda之类的hpp 自然容易上手许多。

 

继续努力............

分享到:
评论

相关推荐

    Cython-A-guide-for-Python-programmers.pdf.pdf

    Cython 是一个编程语言和编译器,可以将 Python 代码编译成 C 语言或 C++ 代码,进而优化性能。Cython 的目标是结合 Python 的表达能力和 C/...这些实际案例展示了 Cython 在性能关键的 Python 项目中的实际应用效果。

    Python库 | Cython-3.0a3-cp27-cp27m-win32.whl

    在实际开发中,Cython与NumPy、SciPy等科学计算库结合使用效果更佳,因为这些库通常已经提供了C/C++级别的底层实现,Cython可以方便地调用这些底层接口,进一步提高计算效率。同时,Cython也是诸如Pandas、Dask等大...

    ImSlow:基于numpy,并通过cython和pca面拟合适当加速。代码参照于javascript csg.js

    使用open3d本身的轻量化方式去除重复点,只是把轻量化要求提高,以实现三角面大致不变,重复尖端剔除的效果 使用cython加速 待完成在本地中尝试使用cython进行加速,替代成功。等待后续一步一步替换Cython或C ++代码...

    ray_tracing:Cython实现“一个周末进行射线追踪”的方法,作者:彼得·谢里(Peter Shirley)

    2. **颜色和光照模型**:学习如何通过颜色混合和光照模型来模拟不同材质的反射、折射和吸收效果,如Phong光照模型。 3. **Cython基础**:学习Cython语法,了解如何定义类型、使用C扩展以及优化Python代码。 4. **...

    pycocotools包文件,适用于python3.7

    2. **依赖库**:`pycocotools`依赖于`cython`和`numpy`,在安装前需确认这些库已正确安装。 3. **编译问题**:在某些环境下,`pycocotools`的编译可能会遇到问题,这时可能需要手动编译或调整环境。 总的来说,`...

    Python-face3d用于处理3D人脸的Python工具

    同时,通过控制光源的位置和强度,可以创建出各种光照效果,如阴影、高光等,从而增加3D模型的视觉真实感。 ### 4. 渲染技术 渲染是将3D模型转化为2D图像的过程,Python-face3d 提供了基础的渲染引擎,能够将3D...

    Go-icp算法(python格式)

    Python实现的Go-ICP算法通常会结合NumPy库进行向量运算,SciPy库用于距离计算和矩阵操作,以及可能使用Cython等工具进行性能优化。 4. **Cython优化**: "go-icp_cython-master"这个文件名表明此版本的Go-ICP算法...

    Python技术如何处理性能瓶颈问题.docx

    - **Cython**:通过使用 Cython,开发者可以将关键部分的代码用 Cython 重写,并在 Python 中调用这些经过编译的模块。这种方法尤其适用于那些需要高度优化且频繁执行的代码片段。 #### 七、总结 综上所述,Python...

    YOLOv7数据预处理部分代码(bbox归一化及数据路径生成).zip

    它采用了多尺度预测、自注意力机制、模型微调等技术来提升检测效果。在数据预处理阶段,这些特性需要被充分考虑,以确保输入数据与模型的预期输入格式一致。 总的来说,这个项目实践提供了YOLOv7数据预处理的实例,...

    renQualizer:RenPy和bass.dll中带有声音的一些有趣的事情

    在本项目中,开发者利用Cython(Python的一个扩展)来与Bass.dll进行交互,这是一个跨平台的低级音频处理库,它支持多种音频格式和效果。 首先,我们来看一下Ren'Py。Ren'Py提供了一个易于使用的编程环境,让非...

    win11, python3.9, pycocotools

    - **结果可视化**:库提供了一些函数,可以将检测或分割的结果以图像形式展示出来,帮助直观理解模型的工作效果。 - **数据预处理**:在训练模型之前,可能需要使用PyCOCOTools来加载和预处理COCO数据集,以便适应...

    绩效提升工具的比较评估 Python.pdf

    - **简介**:Cython是一种扩展语言,基于Python,但允许调用C/C++函数,从而实现代码的静态编译。 - **优点**: - 显著提高了Python代码的执行速度。 - 提供了一种将现有C/C++代码集成到Python程序中的便捷方式。 ...

    对Python强大的可变参数传递机制详解

    在`func(*t)`的调用中,`*t`会将元组`t`的每个元素作为单独的参数传递给函数`func`,这正是作者想要实现的效果。这种方式不仅适用于元组,还可以接受任何可迭代对象,包括列表、字典或生成器。 例如,当有一个列表`...

    python 轻量级ORM peewee文档

    事务管理包括开启事务、提交事务以及回滚事务等操作,从而有效地控制数据库操作的范围和效果。 #### 八、Playhouse扩展模块 为了提供更多的扩展功能,Peewee维护了一个名为Playhouse的模块。Playhouse模块包含了...

    基于python pyd的shellcode免杀绕过+源代码+文档说明

    根据目前的测试效果,可以绕过360和火绒。 -------- 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! <项目介绍> 1、该资源内项目代码都经过测试...

    Object-and-Face-Detection-Gui-with-Python-and-PyQt:使用Python和PyQt的人脸和对象识别Gui-目前尚未从人脸检测转向人脸识别,但对象检测效果很好

    只需构建就位的Cython扩展即可。 注意:如果以这种方式安装,则必须在克隆的darkflow目录中使用./flow而不是flow因为未全局安装darkflow。 python3 setup.py build_ext --inplace 让pip在开发人员模式下全局安装...

    nlp 隐马尔可夫分词 python 程序

    此外,`scipy`库中的`linalg`模块可以帮助我们解决线性代数问题,对于更复杂的HMM实现,可能还需要引入`numba`或`cython`进行性能优化。 在实际应用中,我们不仅限于基本的HMM模型,还可以结合其他技术,如条件随机...

    Python Kivy手把手环境搭建教程

    安装Visual C++ Build Tools后如果没有明显效果,可能是由于版本不兼容或其他原因。建议检查安装过程中的细节。 #### 四、总结 通过以上步骤,您应该已经成功地在Windows环境下搭建了Python Kivy的开发环境。接下来...

    cocoapi-master修改后,使用Win10.zip

    - **可视化**:COCOAPI可以将检测结果直接绘制到原始图像上,帮助我们直观地了解模型的预测效果。 - **训练与优化**:COCOAPI可以作为训练目标检测模型的基础,通过其提供的接口,可以构建自己的训练框架,实现模型...

    Python技术使用优化方案.docx

    Python是一种流行的编程语言,因其简洁的语法和强大的功能而...通过以上策略,开发者可以针对不同场景优化Python程序,实现更高效、更快速的运行效果。在实际开发中,应时刻关注性能优化,提高代码质量,提升用户体验。

Global site tag (gtag.js) - Google Analytics