1.anacondaä¸pythonä»ä¹å
³ç³»
2.在windows11上编译opencv使用cuda加速
3.win10 + CUDA 9.0 + cuDNN 7.0 + tensorflow源码编译安装
4.libmagic文件类型识别库的源码使用
5.pythonç¨åªä¸ªè½¯ä»¶ç¼ç¨(pythonç¼ç¨ç¨ä»ä¹è½¯ä»¶å¥½)
6.TF-TRT使用环境搭建
anacondaä¸pythonä»ä¹å ³ç³»
anacondaå½ä¸å æ¬äºpythonã1ãAnacondaï¼
Anacondaæçæ¯ä¸ä¸ªå¼æºçPythonåè¡çæ¬ï¼å ¶å å«äºcondaãPythonçå¤ä¸ªç§å¦å åå ¶ä¾èµé¡¹ãå 为å å«äºå¤§éçç§å¦å ï¼Anaconda çä¸è½½æ件æ¯è¾å¤§ï¼å¦æåªéè¦æäºå ï¼æè éè¦èç带宽æåå¨ç©ºé´ï¼ä¹å¯ä»¥ä½¿ç¨Minicondaè¿ä¸ªè¾å°çåè¡çã
2ãPythonï¼
Pythonæ¯ä¸ç§è·¨å¹³å°ç计ç®æºç¨åºè®¾è®¡è¯è¨ã æ¯ä¸ä¸ªé«å±æ¬¡çç»åäºè§£éæ§ãç¼è¯æ§ãäºå¨æ§åé¢å对象çèæ¬è¯è¨ãæå被设计ç¨äºç¼åèªå¨åèæ¬ï¼éççæ¬çä¸ææ´æ°åè¯è¨æ°åè½çæ·»å ï¼è¶å¤è¢«ç¨äºç¬ç«çã大å项ç®çå¼åã
æ©å±èµæï¼
Pythonç设计å²å¦æ¯âä¼é âãâæç¡®âãâç®åâãå æ¤ï¼Perlè¯è¨ä¸âæ»æ¯æå¤ç§æ¹æ³æ¥ååä¸ä»¶äºâçç念å¨Pythonå¼åè ä¸é常æ¯é¾ä»¥å¿åçã
Pythonå¼åè çå²å¦æ¯âç¨ä¸ç§æ¹æ³ï¼æ好æ¯åªæä¸ç§æ¹æ³æ¥åä¸ä»¶äºâãå¨è®¾è®¡Pythonè¯è¨æ¶ï¼å¦æé¢ä¸´å¤ç§éæ©ï¼Pythonå¼åè ä¸è¬ä¼æç»è±ä¿çè¯æ³ï¼èéæ©æç¡®ç没ææè å¾å°ææ§ä¹çè¯æ³ã
ç±äºè¿ç§è®¾è®¡è§å¿µçå·®å¼ï¼Pythonæºä»£ç é常被认为æ¯Perlå ·å¤æ´å¥½çå¯è¯»æ§ï¼å¹¶ä¸è½å¤æ¯æ大è§æ¨¡ç软件å¼åãè¿äºåå被称为Pythonæ ¼è¨ãå¨Python解éå¨å è¿è¡import thiså¯ä»¥è·å¾å®æ´çå表ã
åèèµææ¥æºï¼ç¾åº¦ç¾ç§âPython
åèèµææ¥æºï¼ç¾åº¦ç¾ç§âanaconda
在windows上编译opencv使用cuda加速
在Windows 环境下,利用CUDA加速OpenCV的编译编译过程可以显著提升性能。以下是源码具体步骤的概述:
1. **环境与软件准备**:
- 安装Windows 、Visual Studio 、编译CMake-gui以及Anaconda(用于管理Python环境)。源码
- 确保已安装CUDA工具包、编译pdd风控源码Visual Studio编译器,源码还需下载OpenCV源码和opencv-contrib源码。编译
- 需要安装CUDA及CUDNN环境,源码确保Opencv与opencv-contrib版本匹配。编译
2. **安装步骤**:
- 下载并安装Visual Studio 和CMake-gui。源码
- 使用管理员权限打开CMake-gui,编译设置OpenCV源码路径,源码可能需要设置Python路径(如果安装在虚拟环境中)。编译
- 配置Visual Studio版本和平台(位)。源码
- 配置过程中,确保WITH_CUDA、OPENCV_DNN_CUDA、ENABLE_FAST_MATH等CUDA相关选项被选中,并勾选BUILD_opencv_python3和opencv_contrib模块。
3. **编译过程**:
- 打开CMake-gui,配置CUDA架构(根据显卡型号选择合适的算力)。
- 生成Visual Studio项目(OpenCV.sln),linux ab源码安装并选择对应版本的Visual Studio打开。
- 选择release版本和x平台进行编译,这可能需要几分钟。
- 完成第一个编译后,进行安装,将OpenCV安装到Anaconda环境中。
4. **测试与参考**:
- 编译成功后,可通过打印数值确认。编译教程参考了如下的博客:
- [opencv-python使用GPU资源](/lujx_/article/details/)
- [CMake编译OpenCV 4.5.5/4.6.0/4.7.0 GPU版及VS配置](/optimistwenshen/article/details/)
- [Windows上编译OpenCV使用CUDA加速DNN模型推理](/optimistwenshen/article/details/)
通过以上步骤,您可以在Windows 上利用CUDA为OpenCV编译加速,提升深度学习和计算机视觉任务的性能。
win + CUDA 9.0 + cuDNN 7.0 + tensorflow源码编译安装
在配置个人深度学习主机后,安装必备软件环境成为首要任务。使用Anaconda5.0.0 python3.6版本管理Win python环境,新建基于python3.5的tensorflow-gpu-py conda环境。直接使用conda安装tensorflow,会默认安装tensorflow-gpu 1.1.0并主动安装cudatoolkit8.0 + cudnn6.0。若需配置CUDA环境,需自行下载并安装cuda9.0 + cudnn7.0,配置环境变量。pip安装tensorflow,会默认安装最新版本tensorflow-gpu 1.3.0。微交易 整站源码配置不当导致import tensorflow时报错:'ModuleNotFoundError: No module named '_pywrap_tensorflow_internal'。尝试源码编译tensorflow解决此问题。
查阅tensorflow官网文档,了解cmake window build tensorflow方法。文档中提到,tensorflow源代码目录下有详细网页介绍Windows环境编译方法,包含重要信息。发现安装tensorflow-gpu版本、配置CUDA8.0 + cuDNN6.0/cuDNN5.1或CUDA9.0 + cuDNN7.0时,import tensorflow时报错。查阅错误信息,网上解答提及需要配置正确的CUDA和cuDNN版本。然而,尝试安装和配置后依然报错。安装tensorflow cpu版本无问题,确认CUDA环境配置错误。
决定源码编译tensorflow-gpu以解决问题。查阅文档,执行编译操作。在window环境下编译tensorflow源码,需要准备的软件包括Git、tensorflow源码、大屏幕 数钱 源码anaconda、swig、CMake、CUDA、cuDNN、Visual Studio 。在百度网盘下载相关软件。
配置过程中,修改CMakeLists.txt以适应CUDA 9.0 + cuDNN 7.0。在cmake目录下新建build文件夹,执行命令配置tensorflow。配置后进行编译,遇到问题如:cudnnSetRNNDescriptor参数不匹配、网络访问问题、编码问题、protobuf库下载问题、zlib.h文件不存在、下载链接失败、无法解决的错误等。
为解决这些问题,采取相应措施,如修改cuda_dnn.cc文件、jquery源码 on方法网络代理设置、文件编码转换、忽略警告信息、多次尝试下载、修改cmake配置文件等。遇到无法解决的问题,如CUDA编译器问题、特定源代码文件问题,提交至github tensorflow进行讨论。
完成源码编译后,安装tensorflow-gpu并进行验证。在下一步中继续讨论验证过程和可能遇到的后续问题。整个编译过程耗时、复杂,需要耐心和细心,希望未来能有官方解决方案以简化编译过程。
libmagic文件类型识别库的使用
使用libmagic库进行文件类型识别,其主要步骤包括获取libmagic库和了解其API使用方法。
获取libmagic库有两种方式:从anaconda.org/bioconda/l...网站下载或从github下载file命令源码并进行编译。具体操作为下载指定版本源码后,执行源码编译。
使用libmagic库需要包括magic.h头文件,静态库libmagic.a或动态库libmagic.so,以及数据库文件magic.mgc。以libmagic-5.为例,相关文件位于指定目录下。
编写测试源码file_test.c,通过编译并运行,如输入./file_test /tmp/1.png,可识别并打印出文件类型信息,此过程主要使用libmagic的四个API,如magic_buffer,其功能为识别一段缓冲区的内容,与magic_file方法相似。
libmagic库的使用相对简单,适用于直接使用库的场景,建议从anaconda.org/bioconda/l...下载。对于研究源码有兴趣的用户,可选择从github下载并进行深入学习。
pythonç¨åªä¸ªè½¯ä»¶ç¼ç¨(pythonç¼ç¨ç¨ä»ä¹è½¯ä»¶å¥½)
Pythonç¨ä»ä¹è½¯ä»¶å代ç
VSCodeï¼è¿æ¯ä¸ä¸ªå è´¹ãå¼æºã跨平å°ç代ç ç¼è¾å¨ï¼ç±å¾®è½¯èªä¸»è®¾è®¡ç åï¼çé¢é£æ ¼åVSç¸ä¼¼ï¼ä½æ²¡æVSé£ä¹åºå¤§èè¿ï¼è¿è¡é度快ãå ç¨å åå°ï¼æ¯æ常è§çèªå¨è¡¥å ¨ã代ç é«äº®ãè¯æ³æ示ãGITçåè½ï¼å®è£ Pythonæ件åï¼å¯ä»¥ç´æ¥ç¼è¾è¿è¡Pythonç¨åºã对äºPythonå ¥é¨å¼åè æ¥è¯´ï¼æ¯é常ä¸éçéæ©ã
SublimeTextï¼æ¯ä¸ä¸ªé常ä¸éç代ç ç¼è¾å¨ï¼ä¾çåºæ¬åè½åVSCodeå·®ä¸å¤ï¼è½»ä¾¿çµæ´»ãè¿è¡é度快ï¼ææ¬ç¼è¾åè½å¼ºå¤§ï¼å¸¸è§çèªå¨è¡¥å ¨ãè¯æ³æ£æ¥ãè¯æ³æ示åè½é½è½å¾å¥½æ¯æï¼é 置好æ¬å°Python解éå¨è·¯å²åï¼èåèä¹æ¯ä¸ä¸ªé常ä¸éçPythonå¼å软件ã
Atomï¼ä¹æ¯ä¸ä¸ªå è´¹ãå¼æºã跨平å°ç代ç ç¼è¾å¨ï¼ç±GitHubä¸é¨ä¸ºå¹¿å¤§ç¨åºå设计ç åï¼åºæ¬åè½åå2个ç¼è¾å¨å·®ä¸å¤ï¼æ¯æ常è§çæºè½è¡¥å ¨ã代ç é«äº®ãè¯æ³æ£æ¥çåè½ï¼å®è£ Pythonæ件åï¼ä¹å¯ä»¥ç´æ¥ç¼è¾è¿è¡Pythonç¨åºã
Vimï¼è¿æ¯Linuxç¯å¢ä¸ä½¿ç¨æå¤çææ¬ç¼è¾å¨ï¼è½»ä¾¿çµæ´»ãæ件æ©å±ä¼å¤ï¼å¯ä»¥èªå®ä¹é ç½®ç¯å¢ï¼ååç§ç¼ç¨è¯è¨é½è½æ··æï¼èä¸ææå¾å¥½ï¼å®è£ Pythonä¹åï¼å¯ä»¥ç´æ¥å½ä½ä¸ä¸ªé常ä¸åæ¥éçPythonå¼å软件æ¥ä½¿ç¨ã
VisualStudioï¼ç®å使ç¨æå¤çIDEç¯å¢ï¼éæäºé常å¤çå¼åç¯å¢ï¼æ°ççæ¬ä¹å¼å§æ¯æPythonå¼åï¼å¾éPythonä¹åï¼å¯ä»¥ç´æ¥ç¼è¾ãè°è¯ãè¿è¡Pythonç¨åºï¼åè½å¼ºå¤§ã
PyCharmï¼ä¸ä¸ªPythonä¸ç¨çå¼å软件ï¼å¨ä¸çé常æµè¡ï¼ä¹é常å欢è¿ï¼æ¯æ代ç éæã代ç åæãåå æµè¯çé«çº§åè½ï¼å æ¤å¼åãè°è¯ãè¿è¡æçå¾é«ï¼æ¬èº«èªå¸¦äºè®¸å¤å·¥ç¨æ¨¡åï¼å¯ä»¥å¿«éæ建flaskãDjangoçwebåºç¨ã
åªäºpythonçç¼ç¨è½¯ä»¶å¼å¾æ¨èï¼
ç¼åpythonæºä»£ç ç软件.é¦æ¨çPycharmã
PyCharmç¨äºbaiä¸è¬IDEå ·å¤çåè½ï¼æ¯å¦ï¼è°è¯ãè¯æ³é«äº®ãProject管çãdu代ç 跳转ãæºè½æ示ãèªå¨å®zhiæãåå æµææè¯ãçæ¬æ§å¶
å¦å¤ï¼PyCharmè¿æä¾äºä¸äºå¾å¥½çåè½ç¨äºDjangoå¼åï¼åæ¶æ¯æGoogleAppEngineï¼æ´é ·çæ¯ï¼PyCharmæ¯æIronPythonã
å ¶æ¬¡æ¯sublimetextï¼SublimeTextæ¯æå¤ç§ç¼ç¨è¯è¨çè¯æ³é«äº®ãæ¥æä¼ç§ç代ç èªå¨å®æåè½ï¼è¿æ¥æ©ææ代ç ç段(Snippetï¼çåè½ï¼å¯ä»¥å°å¸¸ç¨ç代ç ç段ä¿åèµ·æ¥ï¼å¨éè¦æ¶éæ¶è°ç¨åæ§ä¼ãæ¯æVIM模å¼ï¼å¯ä»¥ä½¿ç¨Vim模å¼ä¸çå¤æ°å½ä»¤ãæ¯æå®ï¼ç®åå°è¯´å°±æ¯ææä½å½å¶ä¸æ¥æè èªå·±ç¼åå½ä»¤ï¼ç¶åææ¾åæå½å¶çæä½æè å½ä»¤ã
è¿æJupyter,JupyterNotebook(æ¤å被称为IPythonnotebook)æ¯ä¸ä¸ªäº¤äºå¼ç¬è®°æ¬ï¼æ¯æè¿è¡å¤ç§ç¼ç¨è¯è¨ã
æåå°±æ¯æåºæ¬çnopad++ï¼æå¼å§çæ¶åæ¯å®ç¨è¿æ¬¾ä½ä¸ºå¼åå·¥å ·è¿è¡åºç¡ç»ä¹ ã
å¦pythonæ好ç¨ä»ä¹ç¼è¾å¨ï¼ä¸è¬ç¨åªæ¬¾ç¼è¾å¨æ¯è¾å¥½ï¼1ãPyCharm
PyCharmç±èå软件å¼åå ¬å¸JetBrainså¼åãå¨æ¶å人工æºè½åæºå¨å¦ä¹ æ¶ï¼å®è¢«è®¤ä¸ºæ¯æ好çPython
IDEãæéè¦çæ¯ï¼Pycharmå并äºå¤ä¸ªåºï¼å¸®å©å¼åè æ¢ç´¢æ´å¤å¯ç¨é项ã
å ¼å®¹æ§ï¼WindowsãMacOSãLinux
主è¦æ件ååè½ï¼
â å ç½®å¼åè å·¥å ·
â¡è¿ç¨å¼åè½å
â¢å®æ¶ç¼è¾æ¨¡å¼
â£IPythonNotebook
2ãVisualStudioCode
VisualStudioCodeææ¶ä¼ä¸VisualStudioIDEæ··æ·ï¼åè 并éPython使ç¨è 常ç¨çå·¥å ·ãVS
Codeæ¯å®æ´ç代ç ç¼è¾å¨ï¼å ·å¤å¾å¤ä¼ç§åè½ï¼è®¸å¤ç¨åºåç§°å ¶ä¸ºæ好çIDEç¼è¾å¨ã
å ¼å®¹æ§ï¼WindowsãLinuxãMacOS
主è¦æ件ååè½ï¼
â å ç½®git
â¡èªå®ä¹å·¥å ·æ©å±æ件
â¢æç¹è°è¯
â£äº¤äºå¼æ§å¶å°
3ãSublimeText
SublimeText被认为æ¯æ好çPythonç¼è¾å¨ï¼å 为å®ç®åæé¾å²ãéç¨ãæ¹ä¾¿ãå®ä½¿ç¨å¹¿æ³ï¼å¯ç¨äºä¸åçå¹³å°ã
å ¼å®¹æ§ï¼WindowsãLinuxãMacOS
主è¦æ件åçæ¼åè½ï¼
â ç®æ导èªï¼å®ç°é«æ§è½
â¡æ¯æä¸åå ï¼ä»¥èªå®ä¹ç¼è¾å¨
â¢åªéä¸ä¸ªå ³é®è¯ï¼å³å¯å¤å¶å¸¸è§ä»£ç 段
â£å³æ¶é¡¹ç®åæ¢ååå²ç¼è¾
4ãVI/VIM
vimä½åæ好çPythonIDEå·¥å ·å5åãå®æ¯ä¸ä¸ªmodal
editorï¼å¯ä»¥ä»æ件ç¼è¾ä¸åå²æå¤æ¿ä»¶ï¼ç¸æ¯æåçviï¼vimæäºå·¨å¤§çè¿æ¥ï¼åè½æ´å 强大ã
å ¼å®¹æ§ï¼WindowsãLinuxãMacOSãIOSãandroidãUnixãAmigaOSãMorphOS
主è¦æ件ååè½ï¼
â å ¶èæ¬å 许ç¨Pythonæ§è¡å ä¹ææç¼ç¨ä»»å¡
â¡ctagsï¼å¸®å©å®ç°æ´å¥½çæ 记导èª
â¢å ç½®åºç¡è¯æ±è¡¥å ¨
5ãGNUEmacs
GNU
Emacsä¹æ¯æ好Pythonç¼è¾å¨çæåç«äºè ãå®å¸¸è¢«æ述为å¯æ©å±ãèªææ¡£åãå®æ¶æ¾ç¤ºã尽管å®å¨ä¸ç并éææ°ï¼ä½å®ç»å¸¸å级æ¥æ»¡è¶³å¼åè çéæ±ã
å ¼å®¹æ§ï¼WindowsãLinuxãMacOSãIOSãAndroidãUNIXãAmigaOSãMorphOS
主è¦æ件ååè½ï¼
â 使ç¨Lispç¼ç¨è¯è¨
â¡è¯æ³çè²
â¢æ¯æUnicode
6ãIDLE
IDLE代ç ç¼è¾å¨æ·±åå¦ç欢è¿ï¼å®æ¯Pythonèªå¸¦ç¼è¾å¨ã该ç¼è¾å¨ä½¿ç¨ç®åãéç¨ï¼ä¸æ¯æä¸å设å¤ãå¨ä½¿ç¨å¤æå·¥å ·ä¹åï¼å¼åè å¯ä»¥éè¿IDLEå¦ä¹ åºç¡ç¥è¯ã
å ¼å®¹æ§ï¼WindowsãLinuxãMacOS
主è¦æ件ååè½ï¼
â tkinterGUIå·¥å ·å
â¡å¤çªå£çé¢
â¢å ·å¤å¯¹è¯æ¡ãæµè§å¨çé ç½®
pythonç¨ä»ä¹è½¯ä»¶åæ¯è¾å¥½(pythonç¨ä»ä¹è½¯ä»¶ç¼ç¨å¥½)éç¼åæå¼åç¯å¢ï¼IDEï¼IntegratedDevelopmentEnvironmentï¼æ¯ç¨äºæä¾ç¨åºå¼åç¯å¢çåºç¨ç¨åºï¼ä¸è¬å æ¬ä»£ç ç¼è¾å¨ãç¼è¯å¨ã
è°è¯å¨åå¾å½¢ç¨æ·çé¢çå·¥å ·ãéæäºä»£ç ç¼ååè½ãåæåè½ãç¼è¯åè½ãè°è¯åè½çä¸ä½åçå¼å软件æå¡å¥ãææå ·å¤è¿ä¸ç¹æ§ç
软件æè 软件å¥ï¼ç»ï¼é½å¯ä»¥å«éæå¼åç¯å¢ãå¦å¾®è½¯çVisualStudioç³»åï¼BorlandçCBuilderãDelphiç³»åçã该ç¨åºå¯ä»¥ç¬ç«
è¿è¡ï¼ä¹å¯ä»¥åå ¶å®ç¨åºå¹¶ç¨ãIDEå¤è¢«ç¨äºå¼åHTMLåºç¨è½¯å±æ件ãä¾å¦ï¼è®¸å¤äººå¨è®¾è®¡ç½ç«æ¶ä½¿ç¨IDEï¼å¦HomeSiteãDreamWeaver
çï¼ï¼å 为å¾å¤é¡¹ä»»å¡ä¼èªå¨çæã
Pythonçå¦ä¹ è¿ç¨å°ä¸äºIDEæè 代ç ç¼è¾å¨ï¼æè éæçå¼åç¼è¾å¨ï¼IDEï¼ãè¿äºPythonå¼åå·¥å ·å¸®å©å¼åè å 快使ç¨Python
å¼åçé度ï¼æé«æçãé«æç代ç ç¼è¾å¨æè IDEåºè¯¥ä¼æä¾æ件ï¼å·¥å ·çè½å¸®å©å¼åè é«æå¼åçç¹æ§ã
ä¸é¢æ¯å¸¸è§çPythonIDEï¼å¤§å®¶å¯ä»¥éæ©éåèªå·±çæ¥ä½¿ç¨ãï¼æ¨è使ç¨pycharmï¼
1.VimVimå¯ä»¥è¯´æ¯Pythonæ好çIDEãVimæ¯é«çº§ææ¬ç¼è¾å¨ï¼æ¨å¨æä¾å®é çUnixç¼è¾å¨âViâåè½ï¼æ¯ææ´å¤æ´å®åçç¹æ§
éãVimä¸éè¦è±è´¹å¤ªå¤çå¦ä¹ æ¶é´ï¼ä¸æ¦ä½ éè¦ä¸ä¸ªæ ç¼çç¼ç¨ä½éªï¼é£ä¹å°±ä¼æViméæå°ä½ çå·¥ä½æµä¸ã
2.EclipsewithPyDevEclipseæ¯é常æµè¡çIDEï¼èä¸å·²ç»æäºå¾ä¹ çåå²ãEclipsewithPydevå 许å¼åè å建æç¨å交äºå¼ç
Webåºç¨ãPyDevæ¯Eclipseå¼åPythonçIDEï¼æ¯æPythonï¼JythonåIronPythonçå¼åã
3.SublimeText
SublimeTextæ¯å¼åè ä¸ææµè¡çç¼è¾å¨ä¹ä¸ï¼å¤åè½ï¼æ¯æå¤ç§è¯è¨ï¼èä¸å¨å¼åè 社åºé常å欢è¿ãSublimeæèªå·±çå 管çå¨ï¼å¼åè å¯ä»¥ä½¿ç¨TAæ¥å®è£ ç»ä»¶ï¼æ件åé¢å¤çæ ·å¼ï¼ææè¿äºé½è½æåä½ çç¼ç ä½éªã
4.Emacs
GNUEmacsæ¯å¯æ©å±æ¡åªéï¼èªå®ä¹çææ¬ç¼è¾å¨ï¼çè³æ¯æ´å¤çåè½ãEmacsçæ ¸å¿æ¯EmacsLisp解æå¨ï¼ä½æ¯æ¯æææ¬ç¼è¾ãå¦æä½ å·²
ç»ä½¿ç¨è¿Vimï¼å¯ä»¥å°è¯ä¸ä¸Emacsã
5.KomodoEdit
KomodoEditæ¯é常干åï¼ä¸ä¸çPythonIDEã
6.PyCharm
PyCharmæ¯JetBrainså¼åçPythonIDEãPyCharmç¨äºä¸è¬IDEå ·å¤çåè½ï¼æ¯å¦ï¼è°è¯ãè¯æ³é«äº®ãProject管çã代ç 跳转ãæº
è½æ示ãèªå¨å®æãåå æµè¯ãçæ¬æ§å¶å¦å¤ï¼PyCharmè¿æä¾äºä¸äºå¾å¥½çåè½ç¨äºDjangoå¼åï¼åæ¶æ¯æGoogleApp
Engineï¼æ´é ·çæ¯ï¼PyCharmæ¯æIronPythonï¼
å¦ä¹ python,ç¨ä»ä¹è½¯ä»¶Pythonå¼å软件å¯æ ¹æ®å ¶ç¨éä¸åå为两ç§ï¼ä¸ç§æ¯Python代ç ç¼è¾å¨ï¼ä¸ç§æ¯Pythonéæå¼åå·¥å ·ï¼ä¸¤è çé å使ç¨å¯ä»¥æ大çæé«Pythonå¼å人åçç¼ç¨æçï¼ä»¥ä¸æ¯å¸¸ç¨çå 款Python代ç ç¼è¾å¨åPythonéæå¼åå·¥å ·ã
ä¸ãPython代ç ç¼è¾å¨
1.SublimeText
SublimeTextæ¯ä¸æ¬¾é常æµè¡ç代ç ç¼è¾å¨ï¼æ¯æPython代ç ç¼è¾ï¼åæ¶å ¼å®¹ææå¹³å°ï¼å¹¶ä¸ä¸°å¯çæ件æ©å±äºè¯æ³åç¼è¾åè½ï¼è¿ æ·å°å·§ï¼å ·æè¯å¥½çå ¼å®¹æ§ï¼å¾åç¼ç¨äººå£«çåç±ï¼
2.Vim
VimåViæ¯ä¸ç§æ¨¡åç¼è¾å¨ï¼å®å°ææ¬æ¥çä»ææ¬ç¼è¾ä¸å离ï¼VIMå¨åå§VIä¹ä¸åäºè¯¸å¤æ¹è¿ï¼å æ¬å¯æ¦ææ©å±æ¨¡ååå°±å°ä»£ç æ建ï¼VIMScriptså¯ç¨äºåç§Pythonå¼åä»»å¡ï¼
3.Atom
Atom被称为âä¸çºªå¯ç ´è§£çææ¬ç¼è¾å¨âï¼å¯ä»¥å ¼å®¹ææå¹³å°ï¼æ¥ææ¶å°ççé¢ãæ件系ç»æµè§å¨åæ©å±æ件å¸åºï¼ä½¿ç¨Electronæ建ï¼å ¶è¿è¡æ¶å®è£ çæ©å±æ件å¯æ¯æPythonè¯è¨ï¼
4.GNUEmacs
GNUEmacsæ¯ä¸æ¬¾ç»èº«å è´¹ä¸å ¼å®¹ä»»ä½å¹³å°ç代ç ç¼è¾å¨ï¼ä½¿ç¨å¼ºå¤§çLispç¼ç¨è¯è¨è¿è¡å®å¶ï¼å¹¶ä¸ºPythonå¼åæä¾åç§å®å¶èæ¬ï¼æ¯ä¸æ¬¾å¯æ©å±ãå¯å®å¶ãèªå¨è®°å½ãå®æ¶æ¾ç¤ºçç¼è¾å¨ï¼ä¸ç´è¦ç»å¨UNIXå¨å´ã
5.VisualStudioCode
VisualStudioCodeæ¯ä¸æ¬¾å ¼å®¹LinuxãMacOSXåWindowså¹³å°çå ¨åè½ä»£ç ç¼è¾å¨ï¼å¯æ©å±å¹¶ä¸å¯ä»¥å¯¹å ä¹ææä»»å¡è¿è¡é ç½®ï¼åå对äºPythonçæ¯æå¯ä»¥å¨VisualStudioCodeä¸å®è£ æ件ï¼åªéå¿«éç¹å»æé®å³å¯æåå®è£ ï¼ä¸å¯èªå¨è¯å«Pythonå®è£ ååºã
äºãPythonéæå¼åç¯å¢
1.PyCharm
PyCharmæ¯å¯ä¸ä¸æ¬¾ä¸é¨é¢åPythonçå ¨åè½éæå¼åç¯å¢ï¼åæ ·æ¥æä»è´¹çåå è´¹å¼æºçï¼PyCharmä¸è®ºæ¯å¨WindowsãMacOSXç³»ç»ä¸ï¼è¿æ¯å¨Linuxç³»ç»ä¸é½æ¯æå¿«éå®è£ å使ç¨ã
PyCharmç´æ¥æ¯æPythonå¼åç¯å¢ï¼æå¼ä¸ä¸ªæ°çæ件ç¶åå°±å¯ä»¥å¼å§ç¼å代ç ï¼ä¹å¯ä»¥å¨PyCharmä¸ç´æ¥è¿è¡åè°è¯Pythonç¨åºï¼å®è¿æ¯ææºç 管çå项ç®ï¼å¹¶ä¸å ¶æ¥ç®å¼ç¾¡æä¼å¤ä¾¿å©åæ¯æ社åºï¼è½å¤å¿«éææ¡å¦ä¹ 使ç¨ï¼
2.EclipsePyDev
PyDevæ¯Eclipseéæå¼åç¯å¢çä¸ä¸ªæ件ï¼æ¯æPythonè°è¯ã代ç è¡¥å ¨å交äºå¼Pythonæ§å¶å°çï¼å¨Eclipseä¸å®è£ PyDevé常便æ·ï¼åªéä»Eclipseä¸éæ©âHelpâç¹å»âEclipseMarketplaceâç¶åæç´¢PyDevï¼ç¹å»å®è£ ï¼å¿ è¦çæ¶åéå¯Eclipseå³å¯ï¼å¯¹äºèµæ·±Eclipseå¼åè æ¥è¯´ï¼PyDevå¯ä»¥å¾è½»æ¾ä¸æï¼
3.VisualStudio
VisualStudioæ¯ä¸æ¬¾å ¨åè½éæå¼åå¹³å°ï¼æä¾äºå è´¹çåä»è´¹çï¼å¯ä»¥æ¯æåç§å¹³å°çå¼åï¼ä¸é带äºèªå·±çæ©å±æ件å¸åºãå¨VisualStudioä¸å¯è¿è¡Pythonç¼ç¨ï¼å¹¶ä¸æ¯æPythonæºè½æç¥ãè°è¯åå ¶ä»å·¥å ·ï¼å¼å¾æ³¨æçæ¯VisualStudioä¸æ¯æLinuxå¹³å°ï¼
4.Spyder
Spyderæ¯ä¸æ¬¾ä¸ºäºæ°æ®ç§å¦å·¥ä½æµåäºä¼åçå¼æºPythonéæå¼åç¯å¢ï¼å®æ¯éå¨Anaconda软件å 管çå¨åè¡çä¸çï¼Spyderæ¥æ大é¨åéæå¼åç¯å¢è¯¥å ·å¤çåè½ï¼å¦å¼ºå¤§è¯æ³é«äº®åè½ç代ç ç¼è¾å¨ãPython代ç è¡¥å ¨ä»¥åéææ件æµè§å¨ï¼å ¶è¿å ·æå ¶ä»Pythonç¼è¾ç¯å¢ä¸æä¸å ·å¤çåéæµè§å¨åè½ï¼ååéå使ç¨Pythonçæ°æ®ç§å¦å®¶ä»¬ã
5.Thonny
Thonnyæ¯é对æ°æçä¸æ¬¾éæå¼åç¯å¢ï¼éç¨äºå ¨é¨ä¸»æµå¹³å°ï¼é»è®¤æ åµä¸ï¼Thonnyä¼åèªå¸¦æç»çPythonçæ¬ä¸èµ·å®è£ ï¼ååæ¹ä¾¿æ°æ使ç¨ï¼
TF-TRT使用环境搭建
TF-TRT,即TensorFlow与TensorRT的集成,是NVIDIA为加速深度学习推理应用而设计的工具。它简化了TensorFlow用户在GPU上利用TensorRT进行模型推理的流程。本文主要介绍如何在服务器上搭建TF-TRT的使用环境和编写相关代码。
首先,NVIDIA推荐的TF-TRT环境配置基于TensorRT 5.0RC,需要确保NVIDIA驱动程序版本.0以上,CUDA .0以及TensorRT。安装过程建议在Anaconda的虚拟环境中进行,从Tensorflow GitHub上下载1.版本源码,并通过bazel build工具生成pip安装包。在编译时,由于GCC 5.0可能与新版本兼容性问题,需添加特定编译选项。
对于服务器上直接安装,你需按照官方教程安装CUDA、CUDNN、NVIDIA Driver和TensorRT。在Tensorflow的configure文件中,根据你的硬件配置进行相应的调整。然后,通过pip安装生成的.whl文件,安装时需要注意选择nvcc编译器,cudnn 7.3以上版本,以及兼容性的GCC编译选项。
另一种方式是利用Docker容器,Tensorflow .容器需要nvidia driver +版本,并需要获取Nvidia GPU cloud的API密钥。安装完成后,你可以通过Docker拉取tensorflow:.-py3镜像,验证TensorRT与Tensorflow的集成是否成功。
无论是直接安装还是容器化,都需注意选择合适的驱动和软件版本,以确保TF-TRT的稳定运行。安装过程中,还可以根据实际需求在container中安装其他软件,以满足个性化需求。
MindSpore环境配置记录(一):centos 7.6 aarch 版本下安装Anaconda,升级GLIBC,make 升级,Gcc升级
在centos 7.6 aarch 版本下,安装Anaconda时遇到了最低要求GLIBC为2.的问题。初始版本的GNU libc为2.,这意味着需要进行升级。然而,直接升级GLIBC存在风险,可能导致系统崩溃,因此建议在个人环境中反复测试确保无误后再在生产环境操作,且不要直接从2.跳到2.,应逐版本升级。
尝试以root权限直接升级到2.失败,导致系统崩溃。遇到问题后,有人建议可以制作引导盘进行恢复,但尝试失败。因此,建议谨慎处理Glibc升级,最好逐版本升级,并在docker中进行测试。
在处理过程中,为了避免系统崩溃,先在新创建的用户MStest下进行GCC和Make的升级。首先,添加新用户并下载所需依赖到Downloads目录,然后验证并安装了Make 4.3。尽管Make升级成功,但gmake版本仍需更新。在确认需要升级GCC后,从GCC 4.8开始,通过下载源码、安装依赖并编译来完成升级。
尽管GCC升级过程复杂,还需要配置环境变量,但最终遇到的问题是升级glibc时,发现Python版本不匹配。解决Python和zlib问题后,编译glibc时仍然遇到了问题,尝试使用非root用户失败,导致系统崩溃。最后,由于一系列问题,只能选择重装系统。
总结教训:避免直接跨版本升级Glibc,尤其是作为root用户,务必在备份后进行,并考虑在低版本环境中编译应用或选择特定版本的安装包。更多详细步骤和经验可以在后续文章中找到。