常用AI框架GPU测试方法

现在工作中经常接触pytorch,tensorflow等AI框架,记录下安装注意事项GPU测试方法1.tensorflow可以在https://tensorflow.google.cn/install页面查看安装说明,注意GPU的机器需要先安装CUDA,每个版本的CUDA都有对应的tensorflow的版本pip install tensorflow==2.6.0不指定即安装最新版本,在2.0以后版本无需区分CPU版本和GPU版本如果是以前的版本需要这样安装GPU版本pip install rensorflow-g...

阅读全文

k8s调度策略nodename和nodeselector

在k8s中有几大核心组件,Scheduler调度器是其中的一个。调度器通过kubernetes的watch机制来发现集群中新创建且尚未被调度到Node上的Pod。调度器会将发现的每一个未调度的Pod调度到一个合适的Node上来运行。对每一个新创建的Pod或者是未被调度的Pod,kube-scheduler会选择一个最优的Node去运行这个Pod。然而,Pod内的每一个容器对资源都有不同的需求,而且Pod本身也有不同的资源需求。因此,Pod在被调度到Node上之前,根据这些特定的资源调度需求,需要对集群中的...

阅读全文

动态库和静态库的区别

静态库和动态库最本质的区别就是:该库是否被编译进目标(程序)内部。静态(函数)库一般扩展名为(.a或.lib),这类的函数库通常扩展名为libxxx.a或xxx.lib。这类库在编译的时候会直接整合到目标程序中,所以利用静态函数库编译成的文件会比较大,这类函数库最大的优点就是编译成功的可执行文件可以独立运行,而不再需要向外部要求读取函数库的内容;但是从升级难易度来看明显没有优势,如果函数库更新,需要重新编译。动态函数库动态函数库的扩展名一般为(.so或.dll),这类函数库通常名为libxxx.so或xxx.dll。与静态函数库被整个捕捉到程序中不同...

阅读全文

python中pathlib模块的使用方法

pathlib相对于os模块中的path更简洁,同时这个模块也是python内置模块,我们可以直接使用,下面我们来看看使用方法,使用起来也很简单#!/usr/bin/env python3#coding:utf-8from pathlib import Pathwork_dir = r'D:\\cmder\\Cmder.exe'p = Path(work_dir)print(p.name)print(p.stem)print(p...

阅读全文

python3安装Gunicorn以后无法使用命令

由于centos7中没有安装python3,我们安装python3以后使用pip3安装gunicorn发现无法直接使用gunicorn命令,需要做如下修改才能使用我们先去我们python3安装的目录查看下有没有gunicorn文件找到这个,换到/usr/local/python3/bin/目录下,我们可以查看下gunicorn的版本cd /usr/local/python3/bingunicorn -vgunicorn (version 20.1.0)然后我们做个软链接到/usr/bin/目录下就行了。ln...

阅读全文

centos7升级openssl

我们这里做一下openssl的升级记录首先我们安装依赖包yum -y install zlib zlib-devel openssl-devel libffi libffi-devel libpcap-devel ncurses-devel readline-devel gcc gcc-c++我们首先查看本地openssl版本openssl versionOpenSSL 1.0.2k-fips &nbs...

阅读全文

linux下fsck命令使用方法

fsck命令被用于检查并且试图修复文件系统中的错误。当文件系统发生错误四化,可用fsck指令尝试加以修复。fsck [选项] 分区设备文件名-a:自动修复文件系统,不询问任何问题; -A:依照/etc/fstab配置文件的内容,检查文件内所列的全部文件系统; -N:不执行指令,仅列出实际执行会进行的动作; -P:当搭配"-A"参数使用时,则会同时检查所有的文件系统; -r:采用互动模式,在执行修复时询问问题,让用户得以确认并决定处理方式; -...

阅读全文

horovod命令参数解析

Horovod是Uber于2017年发布的一个易于使用的高性能的分布式深度学习训练框架,支持TensorFlow、Keras、PyTorch和ApacheMXNet。Horovod的名字来自于俄国传统民间舞蹈,舞者手牵手围成一个圈跳舞,与分布式训练使用Horovod互相通信的场景很像。Horovod的发展吸取了Facebook"TrainingImageNetIn1Hour"与百度"RingAllreduce"的优点,在保证分布式训练性能的同时,兼顾了前端的简洁和对不同深度学习框架的支持,使用...

阅读全文

K8s配置管理configmap和secret

k8s中的secret和configmap是为了让POD和配置解耦,使得从集群外部可以想容器内部注入配置信息、环境变量等功能ConfigMap扮演了K8S集群中配置中心的角色,ConfigMap定义了Pod的配置信息,可以以存储卷的形式挂载至Pod中的应用程序配置文件目录,从ConfigMap中读取配置信息ConfigMap是明文保存的,如果用来保存数据库账号密码这类信息可以使用通过secret来保存,secret的功能和ConfigMap一样,不过secret是通过Base64的编码机制保存配置信息可以通过命令行的方式来创建configmap,如下ku...

阅读全文

k8s亲和性和反亲和性

k8s中的亲和性主要是用来做pod的调度策略,可以使pod调度到满足指定条件的节点通常我们还需要给node设置标签,pod通过设置的label标签相关的策略可以使pod关联到对应的label节点上我们先来看下测试环境的node标签kubectl get node --show-labelsNAME         STATUS   ROLES     &...

阅读全文