最近遇到一个问题,用pytorch跑一个 不固定输入的模型inference,一张图片一张图片的测试。有两张图片分辨率相同,都是4032×3024,但是前一张图片可以跑,到后一张图片就报cuda out of memory的错误。原因是对于固定输入,pytorch会复用显存。而对于不固定输入的模型,pytorch存在显存释放不及时的问题,导致一直增长。解决方法是在每次inference后,手动释放显存
torch.cuda.empty_cache()
加上该语句之后就可以正常运行了
最近遇到一个问题,用pytorch跑一个 不固定输入的模型inference,一张图片一张图片的测试。有两张图片分辨率相同,都是4032×3024,但是前一张图片可以跑,到后一张图片就报cuda out of memory的错误。原因是对于固定输入,pytorch会复用显存。而对于不固定输入的模型,pytorch存在显存释放不及时的问题,导致一直增长。解决方法是在每次inference后,手动释放显存
torch.cuda.empty_cache()
加上该语句之后就可以正常运行了
windows的powershell中自带了校验工具certutil,可以生成文件的MD5值、SHA1值、SHA256值。具体命令如下:
certutil -hashfile xxx MD5
certutil -hashfile xxx SHA1
certutil -hashfile xxx SHA256
xxx表示文件路径
ubuntu下可以使用md5sum/sha256sum生成某待测文件的哈希值
md5sum xxx 或者 sha256sum xxx
tar
-c:建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
这五个是互斥的参数,必须用且仅能用其中一个,可以和其它参数连用。
-z: gzip相关
-j: bz2相关
-Z:compress相关
-v:显示所有过程
根据需要在压缩或者解压时选择
-f: 使用档案名字。该参数必须为最后一个参数。后面加上文件名
tar –xvf file.tar //解压 tar包
tar -xzvf file.tar.gz //解压tar.gz
tar -xjvf file.tar.bz2 //解压 tar.bz2
tar –xZvf file.tar.Z //解压tar.Z
unrar e file.rar //解压rar
unzip file.zip //解压zip
tar -cvf xx.tar *.txt //将目录里所有txt文件打包成xx.tar
tar -czf xx.tar.gz *.txt //将目录里所有txt文件打包并用gzip压缩,得到xx.tar.gz
tar -cjf xx.tar.bz2 *.txt //将目录里所有txt文件打包并用bzip2压缩,得到xx.tar.bz2
void * memset(void *buffer, int c, int count)
将buffer所指位置后面的count个字节用c代替,并返回buffer。c实际值应该在0到255之间
在一段内存块中填充某个给定的值,是对较大的结构体或者数组进行 清零操作的最快方法。
对一个数组清零示意
char buf[20]; mmset(buf, 0, sizeof(char)*20);

按照惯例,开局一个hello world!