logo资料库

基于OpenMP_MPI并行编程模型的N体问题的优化实现.pdf

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
ComputerEngineeringandApplications计算机工程与应用2016,52(5)1引言N体问题是天文学领域中重要的研究课题,主要对宇宙空间的星体的运动轨迹及其相互作用的规律进行科学的计算模拟,进而探索星体之间的运动和相互作用的规律。在N体问题中,假设物理空间有N颗星体,每个星体都具有初始的位置和速度,在花费一定的时间步后,需要重新计算更新下每个星体相应的速度和位置,然而问题中还要考虑N-1个星体对它的引力作用,这样每一步更新的计算复杂度为O(N2)。通常情况下,天文学研究过程中需要对上千万个星体进行计算模拟,如此庞大的计算规模仅仅靠一台普通的计算机是难以完成的。在高性能计算机领域,多核集群系统的出现为解决如此复杂的科学计算问题提供了硬件基础。目前,主流的多核集群系统多是SMP集群,它是由多个SMP节点通过高速网络连接在一起的紧耦合集群架构。利用多核的SMP集群不仅可以实现节点内的并行计算,而且节点间也可以通过任务划分实现并行处理。然而,研究N体问题的并行计算不仅需要高性能的硬件基础,而且需要研究人员设计出在硬件环境下相匹配的并行算法[1]。基于此,本文在对SMP集群多层次化并行编程模型的研究基础上,实现N体问题算法的基于MPI/OpenMP的混合编程模型的设计,并采用块同步策略对该并行算法进行了性能优化。基于OpenMP/MPI并行编程模型的N体问题的优化实现祝永志,续士强,禹继国ZHUYongzhi,XUShiqiang,YUJiguo曲阜师范大学信息科学与工程学院,山东日照276826SchoolofInformationScienceandEngineering,QufuNormalUniversity,Rizhao,Shandong276826,ChinaZHUYongzhi,XUShiqiang,YUJiguo.OptimizedimplementationofN-bodyproblembasedonOpenMP/MPIpar-allelprogrammingmodel.ComputerEngineeringandApplications,2016,52(5):16-21.Abstract:Hierarchicalparallelprogrammingmodelofmulticoreclustershasbeenahotresearchinhighperformancecomputing.Forhardware,theSMPclustercanbedividedintotwolayersarchitecturebetweennodesandinternalnodes.Thispaperdescribestheimplementationofhierarchicalparallelprogramming,accordingtotheN-bodyproblemalgo-rithm,itconductsresearchonHybridparallelprogrammingmodel.Thispaperproposesanoptimizationblocksynchroni-zationofMPI/OpenMPfine-grainedN-bodyproblemalgorithm.BasedonDawningTC5000Acluster,executiontimeandspeedupofthisalgorithmandtraditionalN-bodyparallelalgorithmarecompared,severalsummariesofthespecificdis-cussionareobtained.Keywords:hybridprogrammingmodel;blocksynchronizationalgorithm;N-bodyproblem;performanceoptimization摘要:多核集群的层次化并行编程模型一直是高性能计算的研究热点。以SMP集群为例,从硬件上可分为节点间和节点内的两层架构。阐述了层次化并行编程的实现技术,针对N体问题算法进行了基于Hybrid并行编程模型的并行化研究。提出了一种块同步MPI/OpenMP细粒度N体问题的优化算法。基于曙光TC5000A集群,将该算法与传统的N体并行算法进行了执行时间与加速比的比较,得出了几句总结性具体论述。关键词:混合编程模型;块同步算法;N-体问题;性能优化文献标志码:A中图分类号:TP301doi:10.3778/j.issn.1002-8331.1507-0128基金项目:国家自然科学基金(No.61373027);山东省自然科学基金(No.ZR2013FL015);山东省研究生教育创新资助计划(No.SDYY12060)。作者简介:祝永志(1964—),男,教授,主要研究领域为网络与分布式系统,E-mail:rizhaozyz@126.com;续士强(1990—),男,硕士研究生,主要研究领域为网络与并行计算;禹继国(1972—),男,博士,教授,主要研究领域为分布式算法设计。收稿日期:2015-07-13修回日期:2015-10-08文章编号:1002-8331(2016)05-0016-06CNKI网络优先出版:2015-10-15,http://www.cnki.net/kcms/detail/11.2127.TP.20151015.1425.008.html16
2016,52(5)2多核集群体系结构处理器的主频是影响计算机性能的重要因素,但一味地追求主频的提高,不仅造成CPU功耗增大,设计复杂度也随之升高,通过提高主频来获取高性能是受限的。多核技术的出现不仅使得计算机性能有了质的飞跃,而且并行计算也成了算法优化的主流。当今主流的超级计算机几乎都采用多核架构,而SMP集群则是多核技术和集群技术的完美结合[2]。SMP集群架构一方面,节点内一般采用两个或以上的偶数个多核CPU,来保证单个节点的处理性能;另一方面,节点之间使用InfiniBand高速计算网络进行数据通信,延迟仅100ns,保证了节点间通信控制的实时性。很多高性能计算平台(HPC)采用具有层次结构的SMP集群系统。SMP集群节点间采用消息传递的分布式存储结构,集群节点内部采用共享存储模型。如图1所示。因此,SMP集群不仅兼顾了单个节点的强大的并行能力,而且具有分布式并行系统的高扩展性,强连通。3SMP集群并行计算模型基于多核SMP集群的多层次体系结构特点,可以实现MPI模式与OpenMP模式混合编程模式。3.1分布式存储编程模型MPI由于目前分布式并行计算机系统是通过高速的网络连接实现各个节点的通信,因此,基于消息传递实现的MPI函数库成功地运用在大规模并行处理机(MPP)和集群(Cluster)中。消息传递模型,在C、Fortran和C++等编程语言都有相应的函数库。开发人员在编写并行程序时,只要安装MPI的函数库,就可以方便地调用MPI的函数。MPI主要实现进程之间的通信,无论两个进程处在同一节点还是处于不同节点,消息传递和全局操作都会通过MPI函数进行数据访问。由于SMP集群节点内是基于共享内存的存储架构,如果线程级的并行操作交给MPI函数完成肯定引发大量数据通信,程序的并行效率反而因此降低。所以,MPI实现SMP集群节点之间的通信,才能发挥其应有的并行性能。3.2共享存储编程模型OpenMP与MPI应用分布式并行系统不同,OpenMP是一套专门基于共享存储模式的编译制导语句,主要应用于共享内存的并行系统的多线程程序设计。目前,OpenMP同样支持C、Fortran和C++等编程语言,而且这些编程语言都自带OpenMP标准的实现,因此开发人员只需要在源代码加入#pragmaomp的制导语句,编译器会自动将程序中循环等操作分配给多核处理器,实现并行化。支持OpenMP的编译器有SunCompiler,GNUCompiler和IntelCompiler等[3]。随着处理器核心的增加,OpenMP得到了更广泛的应用,不仅是SMP集群节点,即便拥有双核的普通PC机也能使用OpenMP实现程序的并行化。虽然OpenMP可以方便地提供线程级的并行实现,但是对于SMP集群节点之间的通信却无能为力。OpenMP只能在具有共享内存结构的处理机中实现并行;并行的线程数量还要受到实际系统的计算核心数的限制,否则会增加系统额外的线程切换开销,并行的效果会大打折扣。3.3多核集群SMP系统上Hybrid编程模型3.3.1共享存储模式与消息传递模式的融合SMP集群其实是一种分布式存储体系结构的并行计算机,各个计算节点采用紧耦合的方式使用高速的网络连接实现通信;而SMP集群节点是基于共享内存模式的多CPU多核的处理机,SMP集群在硬件架构具有节点间的分布式存储以及节点内共享内存的层次化结构。在并行编程模型选择上,SMP节点间可以采用基于消息传递如MPI编程模型进行并行程序设计,调用MPI函数可以轻易地实现SMP节点之间的数据访问;而SMP节点内采用基于共享变量的OpenMP编程模式。因此,SMP集群采用MPI/OpenMP混合的并行编程模型,称之为Hybrid并行编程模型,该模型既能从编程模型实现与硬件层次化结构的契合,又能发挥其层次化结构的性能优势[4]。由MPI/OpenMP组成的混合层次化并行编程模型,既可以利用MPI消息传递的特点,完成在SMP集群节点间任务的分配以及进程间通信等控制操作,实现任务级并行;又能够利用OpenMP共享变量的优势,在SMP集群节点内对程序中耗时的循环等操作进一步细化并行,实现线程级并行处理。3.3.2多核SMP集群层次化编程的效率评测当今商业集群中,多数是由多核SMP作为节点构成的集群。使用MPI/OpenMP编程在很多情况下较纯MPI编程可获得更高的执行效率[5]。混合编程可获取更高的加速比验证:评价并行算法的标准有很多,并行计算加速比(speedup)就是其一[6]。多核架构并行加速比指的是多核串行所需时间除以多核并行所需时间,它表明了在并行化后的效率提升情况。Amdahl定律是基于固定负载(计算总量恒定)时的量化标准。公式如下:CoreCore…L2CacheCoreCore…L2Cache…MemoryCMP0CMPn-1CommunicationNetwork:suchasInfiniband,Gigabit-Ethernet,etc.MulticoreSMPNode1…MulticoreSMPNoden-1CoreCore…L2CacheCoreCore…L2Cache…MemoryCMP0CMPn-1图1一种多核SMP集群系统结构祝永志,续士强,禹继国:基于OpenMP/MPI并行编程模型的N体问题的优化实现17
ComputerEngineeringandApplications计算机工程与应用2016,52(5)SpeedupAmdahl=1f+(1-f)/n(1)其中f是代码中串行部分所占的比例(0f1)n是可用的执行单元的数目(处理器数或者物理核心数)。串行比例:f=IsI=IsIs+Ip(2)其中,I表示程序的总的指令数,Is表示程序中串行代码的指令数,Ip表示程序中并行代码的指令数。Amdahl定律不是完美的,从式(1)可以看出,当处理器数无限增大,加速比的极限是1/f。为了研究层次化编程效率评测机制,提出了一种新的基于多核SMP集群的层次化编程模型的效率评测机制。定义1层次化纯MPI编程加速比:Speedupmpi=1f+(1-f)/n(3)定义2层次化混合编程加速比:Speeduphybrid=1f+(1-f)´(α/n+(1-α)/(kn))(4)其中,α为线程串行比,k为CPU核心数,n为物理CPU数,f为算法串行比。从定义1,定义2不难发现,多核技术可以缓解Amdahl定律加速比受限于1/f的不足。事实上,欲使Speeduphybrid>Speedupmpi只需(1-f)/n>(1-f)´(αn+1-αkn)即只需k>1即可。注此处暂不考虑额外开销及内存瓶颈问题。推论1在通常情况下,MPI并行编程模型较串行算法有加速,多核集群的Hybrid编程模型较纯MPI编程模型具有更高的加速比。验证设某一算法中20%的程序是必须串行执行的,采用上述曙光集群TC5000,总处理器数是12。采用纯MPI并行编程模式,因为只有进程级的并行,每一个进程对应一个CPU,由式(3)可得Amdahl加速比是:SpeedupAmdahl=10.2+(1-0.2)/12»3.75(5)采用MPI/OpenMP混合并行编程模式,因为每一个进程内部又生成并行执行的4个线程。假设每个进程部分中又有70%的程序可以完全由4个线程并行执行。由式(4)可得混合并行编程模式下Amdahl加速比是:SpeedupAmdahl=10.2+(1-0.2)´(0.3/12+0.7/48)»4.42(6)比较式(5)、式(6),可以看出,采用混合并行编程模式比采用纯MPI并行编程模式的加速比提高了17.86%。更多的验证性实验表明,相比较于串行算法,MPI也可加速,但有效的并行程序设计,可使得Hybrid编程模式获取更高的加速比。4N体问题Hybrid编程模型的优化设计与实现4.1多核集群混合编程模型优化技术4.1.1多核处理器功耗评估与优化SMP集群节点内是多CPU多核心的处理器,如果不考虑其硬件架构的特点,直接将算法程序利用MPI或者OpenMP编程模型并行化,并行效率有时不但没有提高反而比串行效率更低[7]。目前,对于评价多层次化架构的并行算法的并行效率尚缺少一套成熟的理论体系,并且算法并行的适用范围也尚未明确。因此,本文接下来针对N体问题的算法,利用MPI/OpenMP层次化编程模型设计并行算法,对算法的优化进行深入研究,从而提高N体问题算法在多核SMP集群的并行效率。4.1.2基于MPI并行优化技术(1)构造优化的通讯数据结构设计合理的进程间通讯数据结构及通讯模式,可以减少通讯次数、通讯量以及通讯CPU开销,提高并行程序可读性,方便通讯及计算的重叠[8]。(2)通讯与计算的重叠集群环境中MPI并行通讯模式有阻塞通讯、非阻塞通讯及组通讯。其中,阻塞通讯与非阻塞通讯都属于点对点通讯。在阻塞通讯中,MPI的标准发送及接收函数都是阻塞的,非阻塞通讯主要用于实现通讯与计算的重叠,它不必等到通讯操作完全完成便可返回,通讯操作交给特定通讯硬件去实现,此时处理器可以同时进行计算操作,实现了通讯与计算的重叠,从而提高整个程序的执行效率。组通讯一般实现三个功能:通讯、同步及计算,它不像点到点通讯只涉及发送方和接收方,它需要一个特定组内的所有进程同时参与通讯[9],此时应选择合理的通讯模式,以免造成网络拥塞。4.1.3基于线程并行优化技术在并行层次化编程模式中,基于共享存储OpenMP的并行优化方法虽不如MPI并行优化方法丰富,但对提升整体效率至关重要。它不仅涉及多核CMP的体系结构,尤其涉及对Cache一致性原理的理解[10]。4.2一种性能更优的N体问题块同步算法Hybrid编程模型大体可以分为MPI/OpenMP细粒度与MPI/OpenMP粗粒度两种[11]。本文基于N-Body并行算法提出了一种性能更优的块同步并行优化方法,更充分利用层次化编程模式的独特优势。即挖掘了程序中诸多并行循环部分的时间复杂度,将时间复杂度相近的循环合并,作为一个SPMD并行域;编译器经过分析消除时间复杂度较小的并行域和效率较低的同步障。实现了效率更高的块同步层次化并行算法。4.2.1实验环境实验硬件环境:曙光集群TC5000由6个CB65刀片作为计算节点,一台A620r-H作为管理登陆节点,一套18
2016,52(5)磁盘阵列提供存储。单个CB65刀片计算节点包含两颗AMDOpteron61282GHz四核处理器。集群额定功率5000W,整个集群的计算能力为5.7万亿次,配有144GB内存。实验软件环境:集群采用的操作系统SUSELinuxEnterpriseServer10SP2。网络协议为IPv4,集群系统安装的MPI标准是MPICH2。系统使用InfiniBand高速计算网络进行数据通信,提供NFS文件共享服务。通过千兆管理网络管理和提供用户登录。Windows客户端可以使用SSHSecureShellClient,Putty等远程登录软件访问曙光集群。4.2.2N-Body块同步并行算法的优化实现N体问题的串行算法的时间复杂度是O(N2)由于天体数目总是巨大的,所以这样的时间复杂度的串行算法的时间效率是非常低的,甚至是无法应用的。传统的N体问题并行算法是采用MPI/OpenMP粗粒度模式下的SPMD编程模型,由于基于消息传递的MPI模式带来了很大的网络延迟与额外开销,因此在迭代算法中并未获得理想的时间效率及加速比[12]。本文在对称多核SMP集群上,基于MPI/OpenMP的Hybrid编程模型,它使用MPI/OpenMP细粒度计算模型,在集群中的N个节点使用MPI消息传递模型,在每个节点内的M个核心中使用OpenMP共享变量模型,并采用块同步细粒度算法。本文块同步算法思想是:从文件data_input.in中读入天体的数目、质量、位置及速度,0节点主函数调用多个功能函数[13]。其中子函数voidcomputeForces()用来计算dt时间内每个天体受到的引力,voidleaveBodies()用来计算dt时间后,天体的位置及速度。主函数intmain()用来计时,向各个节点分配天体数目及并行调用上述功能函数。迭代结束,各个进程块同步,以提高计算效率。最后由0进程,收集结果并输出到数据文件data_input.out中,并计算出总的运行时间。为了提高计算效率,在节点传递过程中,优化了MPI的通信函数,在节点内线程间的共享模式中,运用多重循环技术实现块同步障设计,从而使整个N体问题运行时间较传统的层次化编程有较大的减少,加速比有较大程度的提高。本文给出的Hybrid编程模式的块同步并行算法如下:#include#include#include#include#include…structbody_s{};…typedefstructbody_sbody;…//insertbody…//readeachline…//computeforcesvoidcomputeforce(inti){…omp_set_num_threads(NUM_THREADS)#pragmaompparallelprivate(…)//节点内部线程间采用循环同步障for(i=privsStart[privs_rank];i
ComputerEngineeringandApplications计算机工程与应用2016,52(5)树等延迟受限的应用,使用超线程性能会得到一定的提高,而对于主存带宽受限的一些应用,当线程数等于物理核心数时,性能就难得到提高,甚至并行效率反而下降。在传统的MPI/OpenMP混合程序设计中,SMP节点内采用的线程数不宜过多,当线程数等于集群中物理CPU数时,加速比最好。当节点内的线程数小于集群中物理CPU数目时,SMP的加速潜力没有发挥到最大。而当线程数大于集群中物理CPU数时,系统会因为线程竞争总线带宽而导致性能下降[15]。需要说明的是,本文块同步算法采用的是MPI/OpenMP混合算法,节点间采用MPI消息传递技术,节点内部采用OpenMP循环块同步线程技术,而传统的纯MPI只采用节点间MPI进程技术。图2~图4以及表1的横坐标统一采用线程数(节点数)只是为了便于在一起进行对比,对纯MPI方式横坐标只关注节点数即可。另外,因本文实验采用SMP多核对称集群,所以横坐标的每个节点的线程数是一样的,比如32(2),表示使用2个节点,单个节点线程数均为16。已有的工作成果表明:当线程数等于机群中物理CPU数时,加速比最好;当节点内的线程数小于机群中物理CPU数目时,SMP的加速潜力没有发挥到最大;当线程数大于机群中物理CPU数时,系统因为线程竞争总线带宽等因素而导致性能下降[16]。从图2、图3可以看出本文提出的块同步Hybrid的N体并行算法与纯MPI并行算法相比,执行时间陡然降低。与已有的层次化混合编程模型相比有较大的并行效率的提高。即使在线程数为96个,超出物理核心数48时,块同步并行算法执行时间仍然在下降。改进的块同步Hybrid执行时间随着节点数、核心数不断增加,执行时间持续走低,在本集群环境中6节点96线程执行时间最短5.6518s。实验数据表明,本文的Hybrid并行编程更能充分发挥CPU的多核结构优势,具有更高的可扩放性。推论2在优化的Hybrid并行编程模型中,当线程数超出物理核心数时,时间效率仍可提高。从图4可以看出,在4.2.1节实验环境中,天体数目N=18000迭代次数70次时,优化后的块同步混合程序与纯MPI程序加速比相比,效率有较大提高。图4显示了取不同的节点数和线程数时本文改进的算法与纯MPI算法计算加速比的对比值。从整体来看,块同步混合编程都要高于纯MPI模式。6结束语本文对N体问题的并行化、多核集群体系结构、SMP集群并行编程模型等进行了深入的阐述。给出了线程数(节点数)96(6)48(6)80(5)40(5)64(4)32(4)48(3)24(3)32(2)16(2)16(1)8(1)1(1)纯MPI执行时间/s268.783241.347245.813248.132256.351280.651293.165348.206388.916490.727884.603923.5217577.425块同步混合执行时间/s5.65186.38216.84197.17278.58048.681310.294711.092913.330615.741522.306131.3098255.3321纯MPI执行加速比38.11907960031.39639192030.82597340030.53787903035.02375769026.99945840025.84696331021.76132806019.48344877015.4412229208.5659047058.204929828块同步混合加速比45.1771294140.0075367037.3188880335.5977665329.7575987129.4117355724.8022866123.0176148719.1538340416.2203157311.446738788.15502175表1块同步Hybrid编程模型线程(节点数)与执行时间、加速比16(1)32(2)48(3)64(4)80(5)96(6)线程数(节点数)3020100块同步Hybrid并行执行时间/s图3块同步编程模型线程数与执行时间之间的关系16(1)32(2)48(3)64(4)80(5)96(6)线程数(节点数)50454035302520151050加速比纯MPI块同步混合图4块同步Hybrid编程与纯MPI编程加速20
2016,52(5)层次化编程模型的相关定义、推论,并提出了一种基于块同步思想的Hybrid编程模型的N体并行程序。通过本文给出的块同步HybridN体并行算法较纯MPIN体并行算法以及传统的MPI/OpenMP混合算法都取得了较快的执行时间和较高的加速比。本文的所有理论与实践结果均在曙光TC5000A集群上加以验证。下一步将在N体问题规模可扩放方面加以研究,将基于Amdahl定律得到的算法优化结论推广到Gustafson定律环境中。多核对称SMP集群是目前高性能计算的主流计算环境[17]。研究此环境下的并行计算设计方法、访存优化、通讯性能,并获取最大的计算性能将是未来一段时间的科研与应用的热点。参考文献:[1]MikiY,TakahashiD,MoriM.Highlyscalableimplemen-tationofanN-bodycodeonaGPUcluster[J].ComputerPhysicsCommunications,2013,184:2159-2168.[2]涂碧波,邹明,詹剑峰,等.多核处理器集群Memory层次化并行计算模型研究[J].计算机学报,2008,31(11):1948-1955.[3]杨良怀,王靖,周为钢,等.XPSort——树形数据多核并行外存排序算法[J].电子学报,2014(2):292-300.[4]刘志强,宋君强,卢凤顺,等.基于线程的MPI通信加速器技术研究[J].计算机学报,2011,34(1):154-163.[5]LiuHandan,TaftiDK,LiTingwen.HybridparallelisminMFIXCFD-DEMusingOpenMP[J].PowderTechnology,2014,259:22-29.[6]PerlaF,ZanettiP.PerformanceanalysisofanhybridOpenMP/MPIALMsoftwareforlifeinsurancepoliciesonmulti-corearchitectures[C]//8thInternationalWorkshoponOpenMP,Rome,Italy,2012:250-253.[7]BullJM,EnrightJP,AmeerN.Amicrobenchmarksuiteformixed-modeOpenMP/MPI[C]//LNCS5568:IWOMP2009.Heidelberg:Springer,2009:118-131.[8]李文石,姚宗宝.基于阿姆达尔定律和兰特法则计算多核架构加速比[J].电子学报,2012,40(2):230-234.[9]FowlerR,GamblinT,PorterfiedA,etal.Performanceengi-neeringchallenges:theviewfromRENCI[J].JPhysics:ConfSer,2008,125(1):1-6.[10]谭国真,杨际祥,王凡,等.多核集群任务分配问题复杂性分析[J].电子学报,2012,40(2):241-246.[11]FedorovaA.Opratingssystemschedulingforchipmulti-processorarchitectures[D].[S.l.]:HarvardUniversity,2006.[12]BeckmannBM,WoodDA.Managingwiredelayinlargechip-multiprocessorcaches[C]//Proceedingsofthe37thInternationalSymposiumonMicroarchitecture,2004:319-330.[13]KananH,GuoF,ZhaoL,etal.FromchaostoQoS:casestudiesinCMPresourcemanagement[J].ACMSIGARCHComputerArchitectureNews,2007,35(1):21-30.[14]DiacuF.ThesolutionoftheN-Bodyproblem[J].Mathe-maticalIntelligencer,1996,18(3):66-70.[15]AversaR,DiMartinoB,MazzoccaN,etal.Perfor-manceanalysisofhybridOpenMP/MPIN-Bodyappli-cation[C]//LNCS3349:WOMPAT,2005:12-18.[16]祝永志,张丹丹,曹宝香,等.基于SMP集群的层次化并行编程技术的研究[J].电子学报,2012,40(11):2206-2210.[17]林宇斐.大规模并行计算通信可扩展性—分析、优化与模拟[D].长沙:国防科技大学,2013.[11]StracuzziD.Memoryorganizationandknowledgetrans-fer[C]//ICMLWorkshoponStructuralKnowledgeTrans-ferforMachineLearning,2006.[12]QuattoniA,CollinsM,DarrellT.Transferlearningforimageclassificationwithsparseprototyperepresenta-tions[C]//ProceedingsoftheIEEEConferenceonCom-puterVisionandPatternRecognition,2008:1-8.[13]许至杰.迁移学习理论与算法研究[D].上海:华东师范大学,2010.[14]HuangGB,SiewCK.Extremelearningmachine:RBFnetworkcase[C]//Proceedingsofthe8thInternationalConferenceonControl,Automation,RoboticsandVision(ICARCV2004),Kunming,China,2004.[15]ItoK,NakanoR.Optimizingsupportvectorregressionhyper-parametersbasedoncross-validation[C]//ProcIJCNN.Illinois:IEEEPress,2003:2077-2082.[16]HuangGB.Learningcapabilityandstoragecapacityoftwohidden-layerfeedforwardnetworks[J].IEEETransonNeuralNetworks,2003,14(2):274-281.[17]HuangGB.Learningcapabilityofneuralnetworks[D].Singapore:NanyangTechnologicalUniversity,1998.(上接10页)祝永志,续士强,禹继国:基于OpenMP/MPI并行编程模型的N体问题的优化实现21
分享到:
收藏