需要安装的组件与安装目录如表1所示。
算法包只需要在客户端安装,控制节点和计算节点不需要安装。
安装节点 |
安装目录 |
安装组件 |
---|---|---|
客户端 |
/home/test/ sophon/lib |
sophon-ml-acc_2.11-1.2.0.jar |
sophon-ml-core_2.11-1.2.0.jar |
||
sophon-ml-kernel-2.11-1.2.0-aarch_64.jar |
||
依赖的第三方开源加速库fastutil-8.3.1.jar |
||
/home/test/ sophon/ |
测试JAR包 |
|
任务提交shell脚本 |
安装步骤如下:
mkdir -p /home/test/sophon/lib
cd /home/test/sophon/lib
wget https://repo1.maven.org/maven2/it/unimi/dsi/fastutil/8.3.1/fastutil-8.3.1.jar
cp /opt/Spark-ml-algo-lib-1.2.0/ml-core/target/sophon-ml-core_2.11-1.2.0.jar /home/test/sophon/lib cp /opt/Spark-ml-algo-lib-1.2.0/ml-accelerator/target/sophon-ml-acc_2.11-1.2.0.jar /home/test/ sophon/lib cp /opt/sophon-ml-kernel-2.11-1.2.0-aarch_64.jar /home/test/sophon/lib
#!/bin/bash spark-submit \ --class com.bigdata.ml.RFMain \ --driver-class-path "./lib/*" \ --master yarn \ --deploy-mode client \ --driver-cores 36 \ --driver-memory 50g \ --jars "lib/fastutil-8.3.1.jar,lib/sophon-ml-acc_2.11-1.2.0.jar,lib/sophon-ml-core_2.11-1.2.0.jar,lib/sophon-mlkernel-2.11-1.2.0-aarch_64.jar" \ --conf "spark.executor.extraClassPath=fastutil-8.3.1.jar:sophon-ml-acc_2.11-1.2.0.jar:sophon-mlcore_2.11-1.2.0.jar:sophon-ml-kernel-2.11-1.2.0-aarch_64.jar" \ ./ml-test.jar
脚本中的语句含义如表2所示。
语句 |
含义 |
---|---|
spark-submit |
指明是以spark-submit的形式提交作业。 |
--class com.bigdata.ml.RFMain |
调用算法的测试程序入口函数。 |
--driver-class-path "./lib/*" |
指明需要用到的机器学习算法加速库、依赖的第三方开源加速库fastutil、算法的测试JAR包在客户端的存放地址。 机器学习算法需要用到的包:sophon-ml-acc_2.11-1.2.0.jar、sophon-mlcore_2.11-1.2.0.jar、sophon-mlkernel-2.11-1.2.0-aarch_64.jar、 fastutil-8.3.1.jar。 图算法需要用到的包:sophon-graph-kernel-2.11-1.2.0-aarch_64.jar、 fastutil-8.3.1.jar。 |
--conf "spark.executor.extraClassPath " |
指明需要用到的机器学习算法加速库、依赖的第三方开源加速库fastutil和算法所需的JAR包。 机器学习算法需要用到的包:sophon-ml-acc_2.11-1.2.0.jar、sophon-mlcore_2.11-1.2.0.jar、sophon-mlkernel-2.11-1.2.0-aarch_64.jar、 fastutil-8.3.1.jar。 图算法需要用到的包:sophon-graph-kernel-2.11-1.2.0-aarch_64.jar、 fastutil-8.3.1.jar。 |
--master yarn |
指明在Yarn集群上提交Spark任务。 |
--deploy-mode client |
指明提交Spark任务的模式是client形式的。 |
--driver-cores |
driver进程所用到的核数。 |
--driver-memory |
driver使用的内存,不可超过单机的总内存。 |
--jars |
指定算法所需JAR包。 |
./ml-test.jar |
指明作为测试程序的JAR包。 |