📄 mpi83.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE> ICPSEP Content
</TITLE>
<META NAME="GENERATOR" CONTENT="Mozilla/3.0Gold (Win95; I) [Netscape]">
</HEAD>
<BODY BGCOLOR="#F0F8FF">
<TABLE WIDTH="100%" >
<TR>
<TD align=left>
<H2>8.3设计逻辑</H2>
</TD>
<TD align=right><A HREF="mpi82.htm" tppabs="http://arch.cs.pku.edu.cn/parallelprogramming/mpispec/mpi82.htm"><IMG SRC="backward.gif" tppabs="http://arch.cs.pku.edu.cn/image/backward.gif" ALT="BACKWARD" HEIGHT=32 WIDTH=32></A>
<A HREF="mpi841.htm" tppabs="http://arch.cs.pku.edu.cn/parallelprogramming/mpispec/mpi841.htm"><IMG SRC="forward.gif" tppabs="http://arch.cs.pku.edu.cn/image/forward.gif" ALT="FORWARD" HEIGHT=32 WIDTH=32></A></TD>
</TR>
</TABLE>
<P>
<HR WIDTH="100%"></P>
<P>假设MPI实现满足上述要求,剖析系统的实现者很可能截获所有由用户程序产生的MPI调用。然后能在调用底层MPI实现之前,收集所要求的任何信息,以达到所需的效果。</P>
<H3>8.3.1 多方面的剖析控制</H3>
<P>存在一个明确的要求,使得用户代码能在运行时间动态的控制剖析。这正常地用于下面的目的</P>
<UL>
<LI>使能和禁止依赖于计算状态的剖析。</LI>
<LI>计算中在非关键点上清除跟踪缓冲区。 </LI>
<LI>添加用户事件到跟踪文件。 </LI>
</UL>
<P>通过使用MPI_PCONTROL满足这些要求。 </P>
<P>MPI_PCONTROL(level, …)</P>
<UL>
<P>IN level 剖析级别</P>
</UL>
<P>int MPI_Pcontrol(const int level, …)</P>
<P>MPI_PCONTROL(LEVEL)</P>
<UL>
<P>INTEGER LEVEL, …</P>
</UL>
<P>MPI库自己没有利用这个例程,而且简单地立即返回用户代码。然而调用这个例程的存在允许用户明显的调用剖析包。
</P>
<P>由于MPI没有控制剖析代码的实现,我们不能精确说明通过调用MPI-PCONTROL所提供的文法。这种模糊延伸到对于函数和它们的数据类型的参数数目上。
</P>
<P>然而为了将一些用户代码的可移植性的级别提供给不同的剖析库,我们要求对于某级别值的含义如下。
</P>
<UL>
<LI>level == 0 禁止剖析</LI>
<LI>level == 1 在正常详细的缺省级上允许剖析。 </LI>
<LI>level == 2 清除剖析缓冲区。(在一些剖析中是无操作)。</LI>
<LI>level中所有其它的值是剖析库定义的有效的和附加的参数。 </LI>
</UL>
<P>我们也要求在调用MPI-INIT后,对于剖析缺省状态在正常的缺省级别上被使能。(例如,就象刚用参数1调用MPI-PCONTROL)。这允许用户链接剖析库,并且根本不用修改它们的源代码就能得到剖析输出。
</P>
<P>在标准MPI库中作为无操作而提供MPI-PCONTROL,允许它们修改源代码以得到更详细地剖析信息,
但仍能准确的连接同样的代码,而不是标准的MPI库。 </P>
<P>
<HR WIDTH="100%"></P>
<TABLE WIDTH="100%" >
<TR>
<TD align=left>Copyright: NPACT </TD>
<TD align=right><A HREF="mpi82.htm" tppabs="http://arch.cs.pku.edu.cn/parallelprogramming/mpispec/mpi82.htm"><IMG SRC="backward.gif" tppabs="http://arch.cs.pku.edu.cn/image/backward.gif" ALT="BACKWARD" HEIGHT=32 WIDTH=32></A>
<A HREF="mpi841.htm" tppabs="http://arch.cs.pku.edu.cn/parallelprogramming/mpispec/mpi841.htm"><IMG SRC="forward.gif" tppabs="http://arch.cs.pku.edu.cn/image/forward.gif" ALT="FORWARD" HEIGHT=32 WIDTH=32></A></TD>
</TR>
</TABLE>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -