caffeOnSpark

about

参考
cdw_FstLst的 Ubuntu配置Caffeonspark教程

Note

安装的总体流程请看cdw_FstLst同学的 Ubuntu配置Caffeonspark教程
在这里说明几点注意的,结合之一起看。

  • 0 在装CaffeOnSpark之前,请先确保已安装了Caffe, Hadoop, Spark, JDK,maven,其中需要安装maven的同学可以看过来ubuntu下安装maven

  • 1 在配置环境变量那里:

export HADOOP_HOME=/path/to/hadoop  #此处别瞎搬,为你自己的spark路径
export PATH=${HADOOP_HOME}/bin:${PATH}  
export SPARK_HOME=/path/to/spark            #此处别瞎搬,为你自己的spark路径
export PATH=${SPARK_HOME}/bin:${PATH}  
export MAVEN_HOME=/path/to//maven         #此处别瞎搬,为你自己的spark路径
export PATH=${MAVEN_HOME}/bin:${PATH}  

前面的

不知是什么鬼,所幸我直接删掉了,省事(然而后面也并没报错,反而加上去时在source ~/.bashrc时出了毛病)

  • 2 编译CaffeOnSpark
make build

同理,删掉

直接

$ make build

在编译时报错了,大概是这样的

error:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.7:run (proto) on project caffe-distri: An Ant BuildException has occured: exec returned: 2
[ERROR] around Ant part ...... @ 5:91 in /home/hadoop/CaffeOnSpark/caffe-distri/target/antrun/build-protoc.xml
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[ERROR] 
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn  -rf :caffe-distri
make: *** [build] Error 1

简而言之,就是一堆关于maven这东东的错误,
楼上cdw_FstLst博主说是网络问题,我也不清楚是不是,直接

$ make build

还是报错。
后来自行百度必应谷歌了一堆,最后发现StackOverflow这里有个不错的方法
简单说来,我只是把Caffe目录下的Makefile.config 文件拷贝到了CaffeOnSpark/caffe-public目录下,
然后执行

$ make clean make build        # make clear 清除上次编译失败的

然后郁闷地去洗了个澡,没报希望的点亮屏幕,竟然Build success了[不解][不解]
所以到最后,我也不知道是因为网络问题,还是那个Makefile.config问题,不过,照这个流程跑一遍,应该是可以okay的。

  • 4 测试
    在Running CaffeOnSpark in Standalone Spark Clusters测试的时候,出现了一先问题。下面的多少会和上面的步骤有些重叠,请愉快地略过吧。

按照流程来,第一步是:
1) Clone CaffeOnSpark code.
由于我已经安装了CaffeOnSpark,所以就没用git下载了,意思就是跳过这步

git clone https://github.com/yahoo/CaffeOnSpark.git --recursive

直接终端执行

~$ export CAFFE_ON_SPARK=$(pwd)/CaffeOnSpark     #~表示当前的工作目录为**home**

2) Install hadoop, spark
由于之前已经安装,并配好了环境变量,故此步跳过

3) Install caffe
由于之前装过,所以也时跳过

4) Create a CaffeOnSpark/caffe-public/Makefile.config
也可以直接像前面的做法那样,单独把Caffe目录下的Makefile.config文件拉进去,在Makefile.config里文件头加上

INCLUDE_DIRS += ${JAVA_HOME}/include

5) Build CaffeOnSpark
之前已经build success,不再解释。

6) Install mnist dataset
此处坑了我一下午。。。。
如果你在终端直接运行

${CAFFE_ON_SPARK}/scripts/setup-mnist.sh

那么可能出现以下错误

Downloading...
mv: target ‘data/mnist/’ is not a directory
/home/hadoop/CaffeOnSpark/scripts/setup-mnist.sh: line 13: examples/mnist/create_mnist.sh: No such file or directory
mv: cannot stat ‘examples/mnist/mnist_train_lmdb’: No such file or directory
mv: cannot stat ‘examples/mnist/mnist_test_lmdb’: No such file or directory

问题就是,我们忘了一个软连接!多么痛的领悟啊啊啊!!!

  • 待我喝口水,细细道来。
    首先,打开https://github.com/yahoo/CaffeOnSpark网页,是不是看到了这个:
    caffeOnSpark_第1张图片
    caffe-public.png
  • 注意到caffe-public@fc0a02e没?,就是这里,看看便察觉到和其他的文件夹不同,其实,这里是一个链接文件夹。一点进去,发现:
    caffeOnSpark_第2张图片
    caffe.png
  • 它调到caffe那个目录去了!!!
    但是接着看看我们自己下的CaffeOnSpark文件夹,点开caffe-publc,里面竟是什么都没有!!!(当然,如果有的话,那也只是刚刚我们自己添加了的Makefile.config文件。这不算数哈!)
    所以说,我们需要把caffe-public变为一个链接文件夹,链接到caffe那个文件目录。解决方法看看下面,上面一段其实就是简单的水了一下哈

解决方法:

$ cd CaffeOnSpark
$ rm -R caffe-public              #删掉原先的caffe-public
$ ln -s /home/alpha/caffe caffe-public      #建立新的caffe-public链接文件夹,链接到caffe

!Note:

  • 1 ,注意,/home/alpha应改成你自己的caffe目录
  • 2 这样一来,也便删除了原先的Makefile.config文件,记得再在Caffe目录下的Makefile.config修改一下哈(直接点击caffe-public就可以进去了,不用再把Makefile.config复制到caffe-public下了,现在它们本来就是在的啊)

再执行一遍

$ ${CAFFE_ON_SPARK}/scripts/setup-mnist.sh    #第一个$为终端Shell标识符,不用输入哈

后面的说什么需要两台机子一起搞Spark计算,我还没看懂,况且目前自己就一台笔记本,所以,有待日后更新,后会有期。

你可能感兴趣的:(caffeOnSpark)