主要内容

解决常见问题

本节提供建议解决您可能遇到的问题MATLAB®并行服务器™软件。

许可错误

当开始一个MATLAB工人,一个许可问题可能导致消息

授权付款失败了。不存在这样的特性。许可证管理器错误5

有很多原因为什么你可能会收到这个错误:

  • 这个消息通常表明你想使用一个产品你不许可。看看你的license.datMATLAB安装文件位于您看如果你许可使用这种产品。

  • 如果你对该产品的许可,这个错误可能是由于额外的回车或标签在您的许可文件。为了避免这种情况,确保每一行开始#,服务器,守护进程,或增量

    在修理你的license.dat文件,重新启动网络许可管理器和MATLAB应正常工作。

  • 这个错误也可能是一个不正确的系统日期的结果。如果你的系统日期之前的日期,你的驾照,你会得到这个错误。

  • 如果你收到此错误当开始一个工人MATLAB并行服务器软件:

    • 你可能会调用startworker从一个安装命令,没有获得工作许可。例如,启动一个工人从客户机安装并行计算工具箱™产品导致以下错误:

      mj服务在主机的主机名返回下列错误:问题开始MATLAB工人。造成这个问题的原因是:= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =最有可能的是,MATLAB工人未能开始由于授权问题,或MATLAB在启动期间坠毁。检查日志文件/ tmp / mjs_user / node_node_worker_05-11-01_16-52-03_953工人。日志为更详细的信息。乔丹日志文件/ tmp / mjs_user / mjs-service。日志也可能包含一些额外的信息。= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

      在工作日志文件,您将看到以下信息:

      授权付款失败了。许可证管理器错误-15 MATLAB无法连接到许可服务器。检查许可证管理器已经启动,MATLAB客户机可以与许可证服务器通信。解决这个问题通过访问://www.tatmou.com/support/lme/R2009a/15诊断信息:金宝app特点:MATLAB_Distrib_Comp_Engine许可证路径:/应用程序/ matlab / etc /许可证。dat FLEXnet许可证错误:-15570。系统错误:115

    • 如果你只有并行计算工具箱安装产品,你正试图运行一个工人在同一台机器上,你会收到这个错误,因为MATLAB并行服务器产品没有安装,因此职工无法获得许可。

内存错误UNIX操作系统

如果流程创建的服务器服务的数量在一台计算机上运行一个UNIX®Linux操作系统(®或Macintosh)超过操作系统限制,服务失败和生成一个内存不足的错误。建议您调整您的系统限制。有关更多信息,请参见推荐系统限制mac和Linux(并行计算工具箱)

上运行服务器进程窗户网络安装

许多网络配置不允许LocalSystem访问UNC或映射网络股票。在这种情况下,乔丹过程运行在一个不同的用户登录服务的权利。看到设置用户

所需的港口

与作业管理器

BASE_PORT。mjs_def文件指定并描述了所需的港口作业管理器和所有工人。中看到以下文件用于每个集群的MATLAB安装过程:

  • matlabroot/工具箱/ / bin / mjs_def.sh平行(在UNIX操作系统)

  • matlabroot\工具箱\ \ bin \ mjs_def.bat平行(在Windows上®操作系统)

沟通工作。在工人的机器上运行一个UNIX操作系统,运行的所需的端口数量MPICH范围从沟通工作BASE_PORT + 1000BASE_PORT + 2000

与第三方调度器

工作过程开始之前,您可以控制使用的范围的港口工人交流工作通过定义环境变量MPICH_PORT_RANGE与价值minport: maxport

客户端端口

pctconfig(并行计算工具箱)功能,您指定客户端所使用的端口。如果不能使用默认端口,这个函数允许您配置端口分别与作业调度器的沟通和沟通与平行池。

短暂的TCP端口与作业管理器

如果你使用作业管理器的节点集群上运行Windows操作系统,您必须确保大量的短暂的TCP端口作业管理器机器上可用。默认情况下,最大有效短暂的TCP端口号在Windows操作系统是5000,但是传输大数据集可能会失败如果这个设置不增加。特别是,如果您的集群有32或更多的工人,你应该增加最大有效的TCP端口使用下列程序:

  1. 启动注册表编辑器。

  2. 在注册表中找到以下注册表子项,并点击参数:

    HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Tcpip \ \服务参数
  3. 在注册表编辑器窗口中,选择编辑>>DWORD值

  4. 在右边的列表条目,改变新值的名字MaxUserPort并按输入

  5. 右键单击MaxUserPort条目名称并选择修改

  6. 在编辑DWORD值对话框中,输入65534年值数据字段。选择小数基地价值。点击好吧

    该参数控制的最大使用端口号,当一个程序从系统中任何可用的用户端口的请求。通常,短暂的(短期)端口分配值之间的1024年和5000年的包容性。这个动作允许分配端口号65534。

  7. 退出注册表编辑器。

  8. 重新启动您的计算机。

主机通信问题

如果一个工人不能与MATLAB作业调度器,或如果一个客户机会话不能验证配置文件,使用调度程序,这可能表示节点之间的通信问题。

用命令行界面

首先,确保机器的IP的决议达成一致。金宝搏官方网站特定主机的IP地址应该是一样的为自己从另一个主机的角度。例如,如果一个过程hostB不能连接到一个玉簪属草本植物,发现玉簪属草本植物IP地址,然后看看的IP地址玉簪属草本植物是来自hostB。他们应该是相同的。

如果机器可以识别对方,nodestatus命令可以用于诊断问题之间的过程。使用函数来确定MATLAB并行服务器过程是在本地主机上运行,从远程主机访问。如果一个工人玉簪属草本植物不能以其作业管理器注册hostB、运行nodestatus在两个主机看看每个能看到什么hostB

hostB执行:

nodestatus应hostB

然后在玉簪属草本植物,运行相同的命令:

nodestatus应hostB

结果应该是一样的,相同的工作清单经理和工人。

如果输出显示问题,再次运行命令级别更高的信息得到更详细的信息:

nodestatus应hostB -infolevel 3

与管理中心GUI

您可以使用管理中心诊断一些沟通问题。

如果你不能成功地将主机添加到清单通过指定主机名称,您可以使用IP地址而不是(见添加主机)。如果你怀疑任何通信问题,在管理中心GUI点击测试连接(见测试连接)。这个测试验证节点可以互相识别,允许相互沟通的过程。

验证集群网络通信的发现

如果你想使用并行计算工具箱中的发现集群功能,必须配置您的网络至少有下列之一:

DNS SRV记录

当你使用DNS集群发现你需要每个域的DNS SRV记录。可以有多个DNS SRV记录多个MATLAB作业调度器。使用下面的一般形式为每个DNS SRV记录。

_mdcs._tcp。<域>< TTL >在SRV<优先><重量><口><主机名>。

构造一个DNS SRV记录的MATLAB作业调度器服务器使用以下部分。

  • <域>域名(如何company.comuniversity.edu),客户端机器搜索。

  • < TTL >表明多长时间(以秒为单位)可以缓存DNS记录。3600年建议。

  • 在SRV如图所示,表明这是一个服务记录。

  • <优先><重量>显示优先级和重量值。如果你创建多个DNS SRV记录,您可以指定这些字段的优先级。的值0建议为每个。较低的<优先>是,更高的优先级的主机。当两个有相同的记录<优先>,最高的记录<重量>第一次使用。使用<重量>值来指定服务器的偏好。

  • <口>是你连接到MATLAB的港口作业调度器服务器。默认端口是27350年。如果你改变为MATLAB作业调度器服务器端口,改变<口>相应的行动。

  • <主机名>的完全限定域名主机服务于MATLAB作业调度器。这台机器mjs-1在域company.com有一个完全限定域名乔丹- 1. company.com

一个有效的DNS SRV记录的company.com网络上运行MATLAB作业调度器的机器mjs-1可能像这样:

_mdcs._tcp.company.com SRV 0 0 27350 mj - 1. - 3600 company.com。

请注意

如果需要多个域定位集群,为每个域使用DNS SRV记录。如果通过VPN网络访问的用户有不同的DNS SRV记录你的内部网络,确保每个域的DNS SRV记录存在。

使用您的DNS系统的标准程序来创建适当的DNS SRV记录。您可以使用标准的公用事业等网路资讯查询命令来验证您的网络配置必要的DNS SRV记录。检查MATLAB作业调度器DNS SRV记录company.com域,使用以下命令。

网路资讯查询类型= SRV _mdcs._tcp.company.com

多播

使用多播,应在头节点上运行MATLAB作业调度器和在客户端系统。

多播,与TCP / IP或UDP,是一个基于订阅协议,网络上的机器数量显示特定数据包来自网络的兴趣,网络上的其他地方。相比之下,UDP和TCP数据包总是开往一台单独的机器,通常由其IP地址表示。

调查的主要工具这种类型的包是:

  • tcpdump对于UNIX操作系统

  • winpcap飘渺的为微软®Windows操作系统

  • 一个Java®并行计算中包含的类产品。下载188bet金宝搏

Java类com.mathworks.toolbox.distcomp.mjs.test.MulticastTester。它的静态的主要方法和构造函数需要两个输入参数:加入多播组和要使用的端口号。

这个Java类有很多简单的方法来试图加入一个多播组指定。一旦类已成功加入该组织,它有方法将消息发送到集团,集团监听消息,并显示接收。您可以使用这个类里面从命令行调用Java软件和MATLAB。

从一个shell提示符(假设java是在你的路径),类型

distcomp java - cp。jar com.mathworks.toolbox.distcomp.mjs.test.MulticastTester

您应该看到一个输出是这样的:

0:host1name: 0 1: host2name: 0

下面的例子展示了如何使用MATLAB中的Java类。

两台机器上开始MATLAB(例如,host1namehost2name你想要测试多播)。在每个MATLAB会话,输入以下命令:

m = com.mathworks.toolbox.distcomp.mjs.test.MulticastTester (239.1.1.1, 9999);m.startSendingThread;m.startListeningThread;

这些指令导致每个MATLAB会话问题多播流测试数据包,并监听测试包。如果多播之间的工作机器,你看到一个流的行如下:

0:host1name: 0 1: host2name: 0 2: host2name: 1 3: host2name: 2

左边的数字在每个字符向量是接收到的数据包的行号。中的文本中心主机接收到的数据包。在正确的数量发送主机发送的数据包数量。它是正常主机报告测试包本身。

如果机器没有收到测试数据包流,或如果远程主机不包括在流,那么多播通信无法正常操作。

终止测试流,在MATLAB会话执行以下:

m.stopSendingThread;m.stopListeningThread;