用户使用(LinuxCluster部分)_第1页
用户使用(LinuxCluster部分)_第2页
用户使用(LinuxCluster部分)_第3页
用户使用(LinuxCluster部分)_第4页
用户使用(LinuxCluster部分)_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

个人收集整理

仅供参考学习一、

用户使用档LinuxCluster部分)Linux操作系统使LinuxAS包含Redhat分发的绝大部分的软件包,用户可以在安装Linux其它linux悉操作系统环境。参考书籍:UNIX程环境文本编辑器:用来编译代码的编译器主要有:等。此部分要求在使用前熟悉。二、

器本部分目的在于掌IntelCompiler使用此之前熟悉语言。IntelC/C++编译器接受遵守ANSI,ISOC/C++ASMforIA-32准的输入与linux下常用的gcc容并支持更大的C语言扩展,包括源文件、令行参数、目标文件。不支持的inline方式的汇编。例:intargc,argv[]){printf("HelloWorld!\n");0;}"hello.cpp"[dos]18L,-chello.ohello.o-ohello$./helloWorld!

编译链接执行注意,编译与链接都由icc完成,icc常用命令行参数:

输出文件命名-Iinclude路-Llib路-l

包含的名

个人收集整理

仅供参考学习-c仅生成目标文件(不接-On编器化选项n=0关编译器化n=3使最激进的优化-c99[-]打开关闭规的支持详细的请参照icc的Intel编译器支持标准并与VisualFortran)容。例:Hello.f90programhellostop[noeol][dos]4L,ifort-cifort-o$./HelloWorld!

编译链接执行编译与连接同样由ifort来完成,ifort常用命令行参数:输出文件命名-Iinclude路径-Llib路-l包的名-c仅生成目标文件(不接-On编器化选项n=0关编译器化n=3使最激进的优化-std90使用F90标准编译-std95使用F95标准编译-f77rtl编译使用F77运行方式的代码(用于解决特殊问题)三、核心数学库的用本节介绍MKL的使用IntelMKL数学库针对Intel系列处理器进行了专门的优化,主要包含的库有:1.基本线形代数运算(BLAS)向量与向量、向量与矩阵、矩阵与矩阵的运算2.稀疏线形代数运算3.快速傅立叶变换(单精度/双精度)

个人收集整理

仅供参考学习4.5.6.7.

LAPACK(求解线形方程组、最小方差、征值、方程等向量数学库(VML)向量统计学库(VSL)高级离散傅立叶变换例,计算NxN矩阵相乘,属于基本线性运算,查MKL手册BLAS章节可以使用的函数进行运算,假定计算双精度浮点则使用dgemm函数。C语言中的定义(CBLAS中):enum,TransA,constenumCBLAS_TRANSPOSETransB,constintM,constintconstintK,constconstdouble*A,intconstdouble*B,intldb,intldc);对应数学表达式cbeta*c,编写一个程序实现:文件:<stdlib.h>"mkl.h"intargc,argv[]){a[N][N]={……};b[N][N]={……};;……cblas_dgemm(CblasRowMajor,CblasNoTrans,N,N,N,a,0,c,N);……0;}编译:multi.c-I/opt/intel/mkl/include–L/intel/mkl/lib–lmpi_ipf

–o四、

MPI程序编译法:消息传递接口(MPI)并行程序设计模型程序的编译命令。

个人收集整理

仅供参考学习例:文件includemain(argc,intargc;{name[BUFSIZ];int&argv);MPI_Get_processor_name(name,&length);printf("%s:helloworld\n",name);MPI_Finalize();}编译与连接均使mpicc,参数mpicc中义的编译器相同与相同。mpicc–chello.cohello.ompicchello.o–ohello运行使用mpirun命令运行需要的节点定义在文件中并在-中制定。文件:node1node1node2node3运行:–machefilenodelist–np4./hellonode1:helloworldnode1:helloworldnode2:helloworldnode3:helloworld五、

32向64位的移植本节讲解32程序到位移植中应注意的常见问题:1.数据截断:由于long类型变量的运算(赋值、比较、移位等)产生。long定义

个人收集整理

仅供参考学习在x86上为在ia64上为64bits.容易在与int型变量运算时出现异常。处理方法:尽量避免不同类型变量间的运,避免将长度较长的变量赋值到较短的变量中,统一变量长度可以解决这个问题。简单的对于32转移到位可以将所有义转换为int定义。2.指针存储:在x86平台下,习惯使用int来存储指针,并将指针直接参与到型的运算中而位平台下指针大小为64bits,无存储到int对指针的运算也可能会因为数据长度的不一致导致异常。处理方法:修改用于存储传递指针的变量intptr_t类型定义,以保证平台兼容性3.不规范的结构:未命名或为指定数量的成员可能会出现异常处理方法:命名未命名的成员,声明类型符号,将long定义转为int。4.代码中的直接数直接使用16进制数字进行赋值时(一般会隐含假设该变量为位变量的前提)可能出现异常使用数字定义数据大小进行移位运算时会出现异常。处理方法查代码中的直接数字是否有表32有关的各种形式,如0x7fffffff,替换为宏定义。编写代码时注意可移植化:1.在32位与位下使用同样的头文件2.使用严禁的格式定义如用定义偏移量用fpos_t定义文件位置,intptr_t定义指针3.使用intypes.h>定义的整数类型,不使用int,long,longlong的传统定义方式。使用带有整形标示符参数的printf函数,不使用%d,%ld的格式化方式。4.使用固定宽度或宏定义的整数类型,数字,掩码5.对整形变量作边界检查。6.32与位进程共享内存操作时,使用位作为操作字长。六、

作业管理系统的使用本节主要介绍业管理系统的使用。1.作业的提交bsub[options][arguments]常用的bsub参数:-J

作业名称-ooutput_file重定向作业的标准输出errorput_file重定向作业的错误输出-iinput_file

重定向作业的标准输入

个人收集整理

仅供参考学习-q“queue_name…指定作业提交的队列,默认为-mmachine

制定作业运行到特定的节点[不建议]对于mpi业提交时:指定作业类型为mpi作业-n制定作业要求的最小[最大]CPU个数例:1.普通作业:一般运行:$./hello提交命令:$bsub–eerrfile2.MPI作业一般运行:$–4–machinefile./hello提交命令:$––n4–ooutfile–eerrfile./hello注意将由系统产生,在提交时不需要指定。如系统接纳此作业将返回作业ID,如不接纳将返回出错原因。2.作业监视与控制常用的作业控制命令查看作业历史信息查看当前作业信息bpeek查看未完成的作业的输出与错误输出bkill

杀死正在运行的作业七、

杀死并重新将作业排队挂起正在运行的作业恢复挂起的作业bswitch将一个作业换直另一个队列排队3.查看系统状况:查看当前系统各节点信息lsload查看当前系统各节点负载信息查看当前系统各队列信息常见问题1.:命令无法执行,出现”cannotbinaryfile错误A:请确改程序为ia64程序。使用file命令查看。32-bitLSBexecutable,Intel80386,version1(SYSV),

.应为64-bitLSBexecutable,IA-64version1(SYSV),.解决方法为使用IA64体系结构的版本或取得源代码重新编译2.Q:系统运行速度很慢,何使用多个CPU运算A:请使用bsub提交命令,参见本文档关于作业系统部分。3.Q:提交时系统提示”QueuedoeshaveJobnot”

个人

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论