完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
TM 多核系统设计平台 Poly-PlatformTM Poly-PlatformTM是一套工具套件和运行时通讯引擎的集成,大大简化了针对多核平台的应用程序移植和开发进程。开发人员仅需要重点关注对应用热点和流程的分析。通过使用友好的GUI界面,应用的拓扑结构可以作为拓扑图定义并绘制出来。之后拓扑图就可以生成应用程序和运行时引擎(runtime engineer)的编程要素,这样就可以将拓扑结构的设计,软件building和运行串联起来。 应用Polycore软件降低研发成本,加快产品面世 开发效率—Poly-Platform能够显著提升开发效率。软件通过GUI向导自动生成MCAPI(Multicore Communication API,由Multicore Association组织定义)服务调用,建立通讯网络,通讯部分的程序模块可以由模型直接创建,这样开发周期可以从数月缩短到数周甚至几天。另外,通过对应用程序概括数据的分析检查和尽可能的调整拓扑结构以期获得最优效率的拓扑结构,可以大大优化应用程序的性能,同时,脚本的配置和应用的测试也可以在很短的时间完成。这样,无论是首次编写程序还是后续的一系列编程开发,都可以实现时间和成本的节省。 多核编程方法论 Polycore软件所采用的编程方法能够有效的把经过验证的函数封装模型和新增的基于标准的消息传递格式(message-passing paradigm)结合起来。产品经理、设计者和系统工程师可以建立基于MCAPI通讯机制的应用程序节点,使得相同的软件代码在单核、多核或多处理器平台上实现跨平台应用。上图描述了从入门级到高端应用的硬件平台覆盖范围,采用相同的应用程序源码,根据平台功能性能进行优化配置。类似的,也可以用一个单独的多核系统实现多个产品(应用),也就是根据某产品应用的需求配置一部分内核为该应用的节点。 简化多核设计 简化设计—Poly-Platform为开发人员进行定制化开发提供了方便灵活的多核移植方式。开发者通过Wizard、菜单项和编程辅助指导完成应用程序的拓扑结构建模,Topology Canvas提供了一套用于鼠标拖放操作的交互界面以快速创建和修改拓扑图,加速开发初期的配置和调整工作进程。同时,节点和通讯链路也需要拖到Canvas上。简而言之,应用Poly-Platform,开发多核应用将会非常容易完成。 l Analyze —通过进行交互的、图形化概要设计前端工具帮助开发者快速检查和分析应用程序行为,从应用程序的概要数据中辨识关键点; l Automate —采用基于向导的工具帮助开发者快速利用工业标准化MCAPI自动化完成编程工作,基于用户的选择,MCAPI代码可以由经验证的模板生成,加速开发进程,降低代码缺陷; l Design —基于GUI的灵活设计环境,快速创建验证正确的多核通讯拓扑结构。开发者利用向导建立拓扑模型,将同一源码部署到单核或多核处理器上。从初始拓扑布局和配置设计,到接下来的优化调整,直到最终的编程实现,Poly-Platform工具极大的简化了这些工作; l Build&Execute — 使用模块化的框架工具进行编译执行,为紧耦合分布式计算系统(单片多核或单板多处理器架构)提供标准化的通讯方式。MCAPI和Polycore软件联合应用,提供经验证的消息传递编程模板。 PolyCore Software提供基于标准的编程模型,极大的简化了多核软件开发工作,加速产品开发进程,降低风险和成本,也有效的保护了已发生的软件开发投入。PolyCore Software为多核系统平台提供运行时解决方案和工具,应用方向包括通讯设施设备,消费类电子,医疗,HPC,工业自动化,航空航天和国防等广泛领域。 软件工具包含Poly-PlatformTM,Poly-InspectorTM,Poly-TemplatesTM,Poly-MapperTM,Poly-GeneratorTM和Poly-Messenger®/MCAPI。 Poly-Messenger®/MCAPI MCAPI是一套由Multicore Association提出的标准化的通讯API,专门用于紧耦合分布式嵌入式计算系统。MCAPI提供了三类通讯模型: l ConnectionlessMessages l ConnectionOriented Packet Channels l ConnectionOriented Scalar Channels 针对消息和数据包均提供了阻塞式和非阻塞式通讯。 简化设计 Poly-Messenger/MCAPI将多核应用的通讯进行抽象,屏蔽了底层系统软件和硬件,比如操作系统,内核的数量和类型以及物理端口的类型等。用户仅需要针对目标系统选择合适的Poly-Messenger库组件即可快速完成设计。对于那些多个多核芯片的系统而言,由于存在不同的物理端口,可能还需要路由。Poly-Messenger则可以无障碍的处理路由和多类型传输端口。 性能 Poly-Messenger可以根据应用和目标系统非常容易的进行配置,用以帮助平衡性能和资源占用。强调性能指标的目的是最大化通讯链的吞吐量,然而同时还需要保持运行时通讯占用资源最小。Poly-Messenger的优势是能够在节点间始终保持通讯路径最短。 可移植性和可重用 当应用的复杂度增加或者多核平台发生变化时,Poly-Messenger/MCAPI表现出很好的可扩展性和可移植性。具有相同一致性的API和编程模型保证了应用程序从单核到同构多核或异构多核的扩展。 Poly-MapperTM 多核拓扑映射工具 拓扑结构图 拓扑网络的节点和连接关系在Canvas中进行设计展开,节点的属性和资源状况,连接和其他拓扑网络的组件可以方便的进行定义。Poly-Mapper建立并验证拓扑设计,生成基于XML的拓扑图(Topology-Map)。拓扑图包含了拓扑网络的结构和属性。针对紧耦合分布式目标系统的拓扑网络是固定不变的,因此拓扑图也是固定配置的,但可以进行验证和优化。 简化设计 利用向导(Wizards),GUI环境和缺省设定,可以很容易的创建拓扑网络,Topology-Canvas支持鼠标拖放方式建立和修改拓扑结构,使得修改和重新配置工作变得非常便捷快速。同样,节点和连接也以鼠标进行点选并进行属性查看和修改。 性能和资源占用 Poly-Mapper使用了基于Eclipse的图形及文本结合界面方式,能够对拓扑网络的设计和通讯资源分配进行快速重配置,这就使得开发人员能够便捷的尝试多种各种不同的映射和配置情况。因此更容易进行性能与目标系统资源约束之间的平衡。 精确性和可扩展性 拓扑图是基于模型的,因此能更快速、更准确的进行扩展设计。可验证性降低了在拓扑编码阶段和随后的调试阶段的出错概率。 虚拟多核开发 一旦开发人员建立了基于MCAPI的通讯框架,Poly-Mapper将帮助开发人员快速的设计拓扑网络模型,并根据自己的假设将应用分布到多核系统上。通过验证和重新配置,开发人员能够不断的对自己的假设进行修改和优化。也就是说,应用Poly-Mapper,开发人员可以实现在虚拟的数字环境中设计并验证自己的系统。之后,通过Poly-Generator,将设计具体实现为代码。 Poly-GeneratorTM Poly-GeneratorTM将Poly-Map转化生成基于拓扑定义的C语言,并使用Poly-Messenger/MCAPI作为通讯引擎。转换过程包含了拓扑关系的验证和节点间最短路径的计算,用以优化通讯性能。 Topology Definition, .c and .h 应用和拓扑网络分离 Poly-Mapper,Generator和Messenger/MCAPI结合起来工作可以完成多核应用程序和通讯拓扑网络的分离。在配置阶段,MCAPI所提供的功能模块被重新映射到不同的内核,在不需要修改应用程序源码的情况下,拓扑资源和配置就可以不断进行调整和优化。这就使得开发人员快速而准确的单独进行不同映射方式和配置关系的评估以在性能和资源占用之间取得平衡。 Poly-InspectorTM Poly-Inspector和多核移植 要想获得使用多核架构的巨大优势,第一步就是充分了解应用程序的行为。Poly-Inspector就是一个使用友好界面描述应用程序概貌、仿真和追踪信息的开发工具,用以快速识别应用程序运行流程和关键点。使用Poly-Inspector,开发团队将拥有足够的信息优化计算机资源分配,使应用程序性能最大化。Poly-Inspector提供性能分析工具,指导开发人员在几个不同核之间进行分步,极大的简化了这个进程。Poly-Inspector之所以重要,就在于它相当于给编程人员提供了一个虚拟的,交互式的报告,让开发者快速深入的了解程序运行流程,发现关键点。 Poly-Inspector可以单独使用测量应用程序的性能和行为,给出充分的决策依据。然而,与Poly-Mapper,Generator和Messenger/MCAPI结合使用会更有帮助,这种方式可以帮助开发者快速的利用分析结果,找出那些计算密集型函数映射到相应的若干节点上。 Poly-TemplatesTM Poly-Templates是一个基于Eclipse GUI界面的灵活易用工具,可以帮助开发人员快速利用行业标准化的多核通讯API。 MCAPI和Poly-TemplatesTM MCAPI提供了一套轻量级的标准化、可扩展编程模型,支持不同类型的内核、传输端口和操作系统。Poly-Templates进一步简化开发人员的工作,直接提供了基于向导Wizards和通讯拓扑网络的MCAPI源码模板。 Poly-PlatformTM和Poly-TemplatesTM Poly-Platform包含了Poly-Inspector,Poly-Mapper,Poly-Templates,Poly-Generator和Poly-Messenger/MCAPI,是一套灵活、高效的多核应用移植平台。应用Poly-Platform,开发人员能够很方便的进行应用程序分析,拓扑图创建,嵌入MCAPI通讯源码,以及生成一个优化的C语言拓扑网络定义。也就是说,应用程序和拓扑网络分别进行开发,然后通过标准的编译(Compile)和与Poly-Messenger/MCAPI运行时链接库链接(Link)结合起来,实现了应用程序与拓扑网络的清晰分割。
|
|
相关推荐
1 个讨论
|
|
你正在撰写讨论
如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。
1476 浏览 1 评论
1266 浏览 0 评论
矩阵4x4个按键,如何把识别结果按编号01-16(十进制)显示在两个七段数码管上?
1471 浏览 0 评论
920 浏览 0 评论
2272 浏览 0 评论
1450 浏览 35 评论
5638 浏览 113 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 18:05 , Processed in 0.538227 second(s), Total 47, Slave 36 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号