Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1827392
  • 博文数量: 283
  • 博客积分: 10141
  • 博客等级: 上将
  • 技术积分: 2931
  • 用 户 组: 普通用户
  • 注册时间: 2005-12-21 14:33
文章分类

全部博文(283)

文章存档

2013年(2)

2012年(2)

2011年(17)

2010年(36)

2009年(17)

2008年(18)

2007年(66)

2006年(105)

2005年(20)

分类: 系统运维

2005-12-22 11:48:48

Myrinet 2000 M3-E*系列交换机工具软件 Mute 之编译
-------------------------------------------------------------
注:此文在依据官方文档实践过程中整理,仅为个人笔记,不当之处,
  欢迎各位指点。 谢谢
==============================================================
Introduction的URL:

简介:
    这是一个针对Myrinet-2000 M3-E*的图形界面的诊断监测工具。图形界面使用
GNOME/GTK。显然,依赖于gm驱动的一些工具。

下面主要说明依赖于GM-2的编译过程。

下载相关源码:gm-2.1.3_Linux(原有) m3-dist mute-1.9.6
m3-dist下载地址:
   
mute下载地址:
   

0.包依赖:
系统上已经安装了以下几个包:
  gnome-libs-devel
  gtk+-devel
  gtk+

1.说明,相关的几个变量
GM_SRC_HOME:编译GM驱动的目录
MUTE_M3_HOME:   放置Mute和m3-dist源码包的目录。
GM_INSTALL:   GM的安装目录

2.编译过程:
1)解压缩 tar -zvxf ...tar.gz
2)编译Mapper Tools
   cd {GM_SRC_HOME}/binary
   mkdir lib
   ln .gm_uninstalled_libs/lib/.libs/libgm.a lib/libgm.a
   cd ../mt
   make all gm
3)编译m3-dist
   cd $MUTE_M3_HOME/m3-dist
   make gmdir={GM_SRC_HOME} mtdir={GM_SRC_HOME}/mt host-no-snmp
4)编译Mute
   cd $MUTE_M3_HOME/mute-1.9.6
   修改makefile,包括gnome, gm, m3-dist的路径等。否则会因为找不到相关的头
  文件或者库而在编译或者链接的时候出错。

注意:官方文档里说明使用Gnu gcc 3.2或更新的版本时,编译m3-dist和Mute时候
      要把makefile里的gcc改成g++,但我下载到的版本里的makefile已经写明编译
   器用g++了,所以没动。顺利通过编译。

3.编译后的工作...

1) killall gm_mapper
  这样做是为了释放资源,否则的话后面做gm_mapper生成交换机信息文件的时候
   会报"gm_mapper_port open failed: busy"的错误
   同理,gm_board_info的进程也要kill掉。

2) 通过gm_mapper生成端口等设备信息的文件,具体的参数与Introduction里讲的
  有点差异,我在gm-2.1.3,mute-1.9.6的情况下,指定存储map file的路径是这
  样的:
  --map-file-0=
    Store map file for port 0 at .
  --map-file-1=
    Store map file for port 1 at .
eg: gm_mapper -v --level=10 --pause --map-file-0=~/mute/mute-prot0.map

    还要注意的一点是我遇到的,不要让gm_mapper把map file写在NFS上,否则
  的话是得不到map file的~~~;-)

    具体输出如下:
# gm_mapper -v --level=10 --pause --map-file-0=~/mute-prot0.map
I am host 00:60:dd:49:0e:8c (type 1)
55 hosts, 12 xbars per map message piece
longest route supported is 15 hops
2048 hosts and 1200 xbars max
going active on port 0
mapping port 0
created h0
looking for directly connected host
looking for first xbar
found xbar
created x0
connecting h0 port 0 to x0 port 0
looking for hosts on x0
looking for xbars on x0
found xbar on port -8
created x1
connecting x0 port -8 to x1 port 0
looking for hosts on x1
trying to match x1 timestamp 7
x1 is original
adding x1 to frontier
found xbar on port -7
created x2
connecting x0 port -7 to x2 port 0
looking for hosts on x2
trying to match x2 timestamp 9
x2 is original
adding x2 to frontier
found xbar on port -6
...............................
checking disconnected link 9 on x0
checking for new hosts on x0
checking for new hosts on x73
00:60:dd:49:0e:8c verifying port 0 (active)
在进入验证(verify)模式的时候就可以按Ctrl+C结束了。
个人建议看着*.map文件不再增大再按Ctrl+C,hehe.
这是生成的mute0.map文件:
------------------------------------------------------
; map_address 00:60:dd:49:0e:d0 map_version 4016432
h - h0
1
0 s - x0 9
address 00:60:dd:49:0e:d0
hostType 1

h - h1
1
0 s - x17 8
address 00:60:dd:49:0e:8c
hostType 1

h - h2
1
0 s - x105 8
address 00:60:dd:49:0e:05
hostType 1
...............................
--------------------------------------------------------

3) 如果你正在使用GM-2.0.6或者更新的版本,你可以在Mute显示中看到主机名。不
  过这需要额外做一些事情,因为GM-2的mapper不知道主机名。而在Gm-2.0.6或更
  新的版本中有{GM_SRC_HOME}/mt/tools/board_names.c的叫board_names的工具,
  它可以读到gm_board_info的输出的路由表信息来查找上一步生成的*.map文件中
  的mac地址并替换相应的主机名。
   cd  {GM_INSTALL}/bin
   ./gm_board_info > board_info.out
   cd {GM_SRC_HOME}/mt/tools/intel_linux/
   ./board_name mute0.map board_info.out > map.with.hostname.map
   注:mute0.map为上一步中用gm_mapper生成的映像文件。
   然后,mv map.with.hostnames.map mute.map,使用替换过的带主机名
  的map文件为Mute的map文件。

4) 建立mute.switches文件,其中包含了集群中每个Myrinet交换机的IP地
  址,一行一个IP地址。

5) 指定mute的工作目录(就是存放mute0.map的地方)这步就要求图形界面了.
   mute -w $WORK_DIR

6) 用Mute建立集群映像。
   a.把mute.switches放在刚才上一步指定的Mute的工作目录下,这个文件是监视
  卡的IP地址列表。这个文件以前是由"Find Switches"功能自动完成的,但由
  于大多数用户都没法正常使用,所以永久性地禁掉了。
   b.运行mute
   su -
   cd $MUTE_M3_HOME/mute-1.9.6
   ./mute
   之后会出现两个窗口,一个是建立网络图的,一个是Mute的,第一次运行Mute
   时,不允许用户去掉Run Mapper,Find Loopbacks,Write Routes,或在建立网
   络图中的Find Xbars。首先必须要初始化生成集群的映像图。

       运行Build,如果出错的话,先来这里找找吧。。。
   

    要保证运行Mute的节点能ping能你在mute.switches里的每一个IP。而且第一
  次运行要在装有Myrinet卡的节点上。以后可以跑在主管理节点上,只要与
    Myrinet交换机相连即可。
    当build完成后,会在工作目录下出现这几个文件:
    mute.map
    mute.hosts
    mute.switches
    mute.xbars
    mute.routes
    mute.state
    其中,后两个为可选的。

到此为止,不打算写具体的使用了。

阅读(1947) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~