我用COMP超标量实现了一个应用程序,结果任务失败了。查看标准错误文件(job1_NEW.err)文件,我得到了一个文件没有找到异常,但该文件存在于我的计算机中。
知道会有什么错误吗?
编辑:添加资源和项目文件
Resources.xml
<Resource Name="172.16.8.2">
<Capabilities>
<Host>
<TaskCount>0</TaskCount>
<Queue>short</Queue>
<Queue/>
</Host>
<Processor>
<Architecture>x86_64</Architecture>
<Speed>3.0</Speed>
<CoreCount>4</CoreCount>
</Processor>
<OS>
<OSType>Linux</OSType>
<MaxProcessesPerUser>32</MaxProcessesPerUser>
</OS>
<StorageElement>
<Size>8</Size>
</StorageElement>
<Memory>
<PhysicalSize>4</PhysicalSize>
<VirtualSize>8</VirtualSize>
</Memory>
<ApplicationSoftware>
<Software>Java</Software>
</ApplicationSoftware>
<Service/>
<VO/>
<Cluster/>
<FileSystem/>
<NetworkAdaptor/>
<JobPolicy/>
<AccessControlPolicy/>
</Capabilities>
<Requirements/>
<Adaptors>
<Adaptor name="integratedtoolkit.gat.master.GATAdaptor">
<BrokerAdaptor>sshtrilead</BrokerAdaptor>
</Adaptor>
</Adaptors>
</Resource>Project.xml
<Worker Name="172.16.8.2">
<InstallDir>/opt/COMPSs/Runtime/scripts/system/</InstallDir>
<WorkingDir>/home/user/test/wdir/</WorkingDir>
<AppDir>/home/user/test/java/matmul/jar/</AppDir>
<User>user</User>
</Worker>接口文件中的方法声明
@Method(declaringClass = "matmul.files.MatmulImpl")
void multiplyAccumulative(
@Parameter(direction = Direction.INOUT) String file1,
@Parameter() String file2,
@Parameter() String file3,
@Parameter() int bsize
);发布于 2016-03-04 16:00:57
如果您的参数确实是一个文件,则需要指定它的类型(即type=Type.FILE)。否则,COMPSs运行时无法区分字符串变量和文件(因为该文件实际上是一个具有路径的字符串)。您的界面应该如下所示:
@Method(declaringClass = "matmul.files.MatmulImpl")
void multiplyAccumulative(
@Parameter(direction = Direction.INOUT, type = Type.FILE) String file1,
@Parameter() String file2,
@Parameter() String file3,
@Parameter() int bsize
);https://stackoverflow.com/questions/35800035
复制相似问题