建立 MPI 程序中三值光学计算机(ternary optical computer, TOC)和 CPU 在指令级别上协同工作的技术. 在该技术中, TOC 节点作为服务端, 运行等待连接的进程;CPU 上运行的 MPI 进程作为客户端, 使用以SHDX 为前缀的一类扩充指令来请求与TOC 连接. TOC 和 CPU 连接之后, MPI 进程将指令级别上的服务要求和数据一并发送给TOC 节点, TOC 发挥其处理器可构成复合运算器及数据位数众多的优势来处理数据, 并将计算结果回送给客户端的MPI 进程. 该过程实现了 CPU 在指令级别上调用TOC 来协同工作的目的. 目前, 设定一个超级计算机系统可以融入10 个TOC 节点, 每个TOC 节点可以打开8 个服务端口, 未来的版本可能扩大这两个限制. 实验结果证明了该技术的正确性.
张 茜1,2, 金 翊1,2,3, 宋 凯1,2, 高 桓1,2
. 三值光学计算机MPI编程技术在超算集群中的使用[J]. 上海大学学报(自然科学版), 2014
, 20(2)
: 180
-189
.
DOI: 10.3969/j.issn.1007-2861.2013.07.001
An MPI method is proposed to make the ternary optical computer (TOC) node cooperate with other general compute nodes in a cluster supercomputer in an MPI program. The TOC nodes work as servers, running a process to wait for connections. Any MPI process running on CPU works as a client side, using a series of expand instructions with the prefix of SHDX to contact the TOC node. After the TOC node gets contact with the MPI process on the CPU nodes, MPI process sends an operation request and data to the TOC in a connection. Then, TOC exerts the advantages of its reconfigurable processor and high data-bit-width to process the data and sends the results back to the MPI process. This method realizes using TOC on the instruction level. At present, there can be at most 10 TOC nodes in a supercomputer system, and each TOC node opens 8 ports. Future versions may break these restrictions. Experimental results show feasibility and practicality of the method.
[1] 金翊. 三值光计算机原理和结构 [D]. 西安: 西北工业大学, 2003: 29-30.
[2] Jin Y, He H C, Lu¨ Y T. Ternary optical computer principle [J]. Sci China Ser F: Inf Sci, 2003,46: 145-150.
[3] Jin Y, He H C, Lu¨ Y T. Ternary optical computer architecture [J]. Physica Scripta, 2005, 118:98-101.
[4] Yan J Y, Jin Y, Zuo K Z. Decrease-radix design principle for carrying/borrowing free multi- valued and application in ternary optical computer [J]. Sci China Ser F: Inf Sci, 2008, 51(10):
1415-1426.
[5] 严军勇. 降值设计理论 [D]. 上海: 上海大学, 2009.
[6] 金翊, 欧阳山, 彭俊杰, 等. 可重构的三值光学处理器: 中国, ZL01010584129. 3 [P]. 2010-12-13.
[7] Wang H J, Jin Y, Ouyang S. Design and implementation of a 1-bit reconfigurable ternary opti- cal processor [J/OL]. [2012-03-01]. 中国科技论文在线, http://www.paper.edu.cn/releasepaper/content/201203-21.
[8] Jin Y, Wang H J, Ouyang S, et al. Principles, structures, and implementation of reconfigurable ternary optical processors [J]. Sci China Ser F: Inf Sci, 2011, 54(11): 2236-2246.
[9] Song K, Jin Y, Ouyang S, et al. Reconfigurable ternary optical processor of double rotator structure [J]. Optics and Precision Engineering, 2012, 20(9): 1890-1898.
[10] Shen Y F, Jin Y, Peng J J. Simulation implementation of the computational principle of MSD adder for ternary optical computer [J]. High Performance Computing Technology, 2010(6): 5-10.
[11] 金翊, 沈云付, 彭俊杰, 等. 三值光学计算机中MSD 加法器的理论和结构 [J]. 中国科学: 信息科学,2011, 41(5): 541-551.
[12] 潘磊, 沈云付. 一种改进的三值光学计算机 MSD 无进位加法器的原理与实现 [J]. 计算机科学, 2011,38(12): 293-296.
[13] Peng J J, Shen R, Jin Y, et al. Design and implementation of modified signed-digit adder [J].IEEE Transactions on Computers, 2012, 7, DOI: 10.1109/TC.2012.285.
[14] Shen Y F, Pan L, Jin Y, et al. One-step binary MSD adder for ternary optical computer [J].Scientia Sinica Informations, 2012, 42(7): 869-881.
[15] 金翊. 三值光计算机高数据宽度的管理策略 [J]. 上海大学学报: 自然科学版, 2007, 13(5): 519-523.
[16] 金翊, 欧阳山, 宋凯, 等. 三值光学处理器的数据位管理理论和技术 [J]. 中国科学: 信息科学, 2013,43(3): 361-373.
[17] 金翊. 走近光学计算机 [J]. 上海大学学报: 自然科学版, 2011, 17(4): 401-411.
[18] 金翊, 王先超, 彭俊杰, 等. 三值光学计算机与高性能计算机系统融合的概念结构 [J]. 高性能计算技术, 2010, 6: 1-4.
[19] 都志辉. MPI并行程序设计 [M]. 北京: 清华大学出版社, 2001.
[20] Message Passing Interface Forum. MPI: A Message-Passing Interface Standard [G]. Version 2.2, High-Performance Computing Center, 2009.
[21] Gropp W, Lusk E, Ross R, et al. Using MPI-2: advanced features of the message passing interface [C]//2012 IEEE International Conference on Cluster Computing, p. xix, Fifth IEEE International Conference on Cluster Computing (CLUSTER’03), 2003.
[22] Gropp W, Lusk E. Ashton D, et al. MPICH2 installer’s guide [G]. Version 1.0.5, Mathematics and Computer Science Division Argonne National Laboratory, 2007.