参考:https://www.cnblogs.com/denny402/p/5076285.html

首先编译:

make -j8

make pycaffe

注:下面的--solver=.... 等价于 -solver ....

########################## -solver:必选参数 ###################
set -e
./build/tools/caffe train
--solver=examples/mnist/lenet_solver.prototxt -gpu 2
#gpu 2表示用第2块gpu运行,如果设置为"-gpu all"表示使用所有的gpu运行

######################-snapshot:可选参数,-gpu:可选参数 #############
#加上断点的训练
set -e
./build/tools/caffe train
--solver=examples/mnist/lenet_solver.prototxt \
--snapshot=examples/mnist/snapshot/lenet_solver_iter_400.solverstate

######################## -weights:可选参数 #################
#用预先训练好的权重来fine-tuning模型,需要一个caffemodel,不能和-snapshot同时使用
set -e
./build/tools/caffe train
--solver=examples/mnist/lenet_solver.prototxt \
#这里放训练好的模型参数caffemodel
--weights=models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel

########### test参数用在测试阶段,用于最终结果的输出,要配置模型中设定输入accuracy或loss,若我们在验证集中已训练好模型,则可以这么写(用caffe自带的测试方法)###################################

./build/tools/caffe test --model=examples/mnist/lenet_train_test.prototxt \
--weights=examples/mnist/lenet_iter_10000.caffemodel -gpu 0 -iterations 100

############## time参数在屏幕上显示程序运行时间 ##################
###########可以在屏幕上显示lenet模型迭代10次所用的时间,包括每次迭代的forward和backward所用的时间##############
############也包括每层forward和backward所用的平均时间###################
./build/tools/caffe time --model=examples/mnist/lenet_train_test.prototxt -gup 0 -iterations 10

########### 利用给定的权重,利用第一块gpu,迭代10次lenet模型所用的时间 #################
./build/tools/caffe time --model=examples/mnist/lenet_train_test.prototxt \
--weights=examples/mnist/lenet_iter_10000.caffemodel -gpu 0 -iterations 10

############### device_query参数诊断gpu信息 ##############
./build/tools/caffe device_query -gpu 0

################# 2个关于gpu的例子 #####################
./build/tools/caffe train --solver=examples/mnist/lenet_solver.prototxt -gpu 0,1
./build/tools/caffe train --solver=examples/mnist/lenet_solver.prototxt -gpu all
#这2个例子说明:用2块或多块GPU来平行运算,速度会快很多;但是如果只有1块或没有GPU,就不要加-gpu参数了,加了反而更慢

#######最后在linux下本身就有1个time命令,因此可以结合使用,因此运行mnist例子的最终命令(1块GPU)############
sudo time ./build/tools/caffe train --solver=examples/mnist/lenet_solver.prototxt

linux下caffe的命令运行脚本的更多相关文章

  1. Linux下的Source命令及脚本的执行方式解析

    Linux Source命令及脚本的执行方式解析 http://blog.csdn.net/wangyangkobe/article/details/6595143 当我修改了/etc/profile ...

  2. linux下实时监测命令运行结果工具:watch

    watch是一个非常实用的工具,可以实时监测一些经常变化的命令结果或文件,而不需要手动一次一次的输入命令. 语法: watch [选项] [命令参数] 选项: -n :指定刷新间隔时间,默认2秒. - ...

  3. 怎么在linux下创建一个可运行脚本?

    1.touch hello.sh 2.vim hello.sh键入i插入#!/bin/shecho hello world;键入:esc:wq3.chmod 700 hello.sh 4. 执行./h ...

  4. Linux下java nohup 后台运行关闭后进程停止的原因,不挂断后台运行命令

    Linux下java nohup 后台运行关闭后进程停止的原因,不挂断后台运行命令 今天写sh脚本发现一终止命令程序就停止运行了,检查了很久才发现后面少了个&字符导致的!错误写法:nohup ...

  5. Linux下使Shell 命令脱离终端在后台运行

    --Linux下使Shell 命令脱离终端在后台运行------------------------------------2014/02/14你是否遇到过这样的情况:从终端软件登录远程的Linux主 ...

  6. 【java】 linux下利用nohup后台运行jar文件包程序

    Linux 运行jar包命令如下: 方式一: java -jar XXX.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? 方式二 ...

  7. [转] 关于linux下通过shell命令(自动)修改用户密码

    关于linux下通过shell命令(自动)修改用户密码 2012-04-23 18:47:39 分类: 原文地址:关于linux下(自动)修改用户密码 作者:ubuntuer 本文章总结了如何手动.自 ...

  8. 将linux下的rm命令改造成移动文件至回收站【转】

    转自:http://blog.csdn.net/a3470194/article/details/16863803 [-] 将linux下的rm命令改造成移动文件至回收站 将AIX下的rm命令改造成移 ...

  9. 在linux下,查看一个运行中的程序, 占用了多少内存

    1. 在linux下,查看一个运行中的程序, 占用了多少内存, 一般的命令有 (1). ps aux: 其中  VSZ(或VSS)列 表示,程序占用了多少虚拟内存. RSS列 表示, 程序占用了多少物 ...

随机推荐

  1. weight(搜索对象的选取)

    题目链接: 就是大概这么个东西 根据题意,我们可以清楚的知道:这个题我不会,这个题需要先将2n个数进行排序 这样每对于一个小的前(后)缀和总会在队列最前或队列最后 设这个数为k 那么判断总的Sum(n ...

  2. JDBC 查询mysql数据库比客户端工具慢的解决办法

    在URL链接参数中配置rewriteBatchedStatements.useServerPrepStmts为true url="jdbc:mysql://****/dbName?useSS ...

  3. jmeter之分布式压测

    很多性能大牛说一台机器的压测其实不准确,于是搜索网上的分布式压测练习了一番 目录 1.环境准备 2.控制机和压测机配置 3.执行分布式压测 1.环境准备 1.1准备一台windows作为控制机(mas ...

  4. 小程序-web-view嵌入H5页面遇到的bug

    遇到的问题1:ios页面中,内容过多时有下滑真是功能,但是下滑的时候回看到底部的微信自带的灰色背景及H5的域名(ios的webview中上/下拉露出黑灰色背景问题) 解决办法:给body添加样式--- ...

  5. Codeforces 396C (DFS序+线段树)

    题面 传送门 题目大意: 给定一棵树,每个点都有权值,边的长度均为1,有两种操作 操作1:将节点u的值增加x,并且对于u的子树中的任意一个点v,将它的值增加x-dist(u,v)*k, dist(u, ...

  6. mysql索引与补充

    一, 什么是索引 为什么要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此 ...

  7. [ZJOI2009]取石子游戏

    瞪了题解两三天,直接下转第二篇题解就康懂了 首先我们令 : \(L[i][j]\) 表示当前 \([i,j]\) 区间左侧放置 \(L[i,j]\) 数量的石子后先手必败 \(R[i][j]\) 表示 ...

  8. 11-jQuery简介和选择器

    # jQuery > jQuery是一个是免费.开源的javascript库, 也是目前使用最广泛的javascript函数库.>> jQuery极大的方便你完成web前段的相关操作 ...

  9. Hibernate快速入门之CRUD

    一.Hibernate的基本概念 前言 Hibernate是一个ORM框架,ORM是Object Relational Mapping的缩写,即对象关系映射,也就是将面向对象思想的编程语言与关系型数据 ...

  10. vs code 同步

    vs code 同步需要在github上配置好gist id, 将gist id添加至setting.json中, 然后再在localsetting中设置access token,  gist id ...