我和LabVIEWword版——一个NI工程师十年的编程经验51-9464.LabVIEW 对多核 CPU 的支持.doc

我和LabVIEWword版——一个NI工程师十年的编程经验51-9464.LabVIEW 对多核 CPU 的支持.doc

ID:35997199

大小:247.50 KB

页数:4页

时间:2019-05-02

我和LabVIEWword版——一个NI工程师十年的编程经验51-9464.LabVIEW 对多核 CPU 的支持.doc_第1页
我和LabVIEWword版——一个NI工程师十年的编程经验51-9464.LabVIEW 对多核 CPU 的支持.doc_第2页
我和LabVIEWword版——一个NI工程师十年的编程经验51-9464.LabVIEW 对多核 CPU 的支持.doc_第3页
我和LabVIEWword版——一个NI工程师十年的编程经验51-9464.LabVIEW 对多核 CPU 的支持.doc_第4页
资源描述:

《我和LabVIEWword版——一个NI工程师十年的编程经验51-9464.LabVIEW 对多核 CPU 的支持.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、LabVIEW对多核CPU的支持  以前,在计算机领域有个摩尔定律,是说每一年半,CPU的主频都会提高一倍。但是近几年这个定律在CPU主频上已经失效了,我4年前用的计算机CPU主频是2G,我前几天换了一台新电脑,CPU主频还是2G。  现在主要两个CPU生产商都意识到单纯通过提高处理器主频来提升性能的办法行不通了。他们的新策略是通过增加CPU的内核来提升系统整体性能。  现在双核CPU是商用电脑的主流配置,也有高端电脑采用了四核CPU。Intel更是宣称他们用不了5年就会做出有80个核的CPU来。  多个CPU同时工作,效率固然是高。但

2、是,为了充分发挥多核的优势,为了发挥多核的威力,还要你的软件针对多核进行一定的优化才行。首先,你的程序至少是多线程运行的。  使用常用的文本语言,比如C++编写一个多线程的程序并不是一项简单的工作。除了要非常熟悉C++的基本编程方法,程序员还需要了解Windows多线程的运行机制,熟悉WindowsAPI的调用方法,或者MFC的架构等等。在C++上调试多线程程序,更是被许多程序员视为噩梦。  但如果使用LabVIEW编写多线程程序,情况就大为不同了。LabVIEW是自动多线程的编程语言,LabVIEW程序员可以不需要了解任何与多线程相关

3、概念与知识。只要他在VI的程序框图上,并排放上两段没有先后关系的代码,LabVIEW就会自动把这两段代码放在不同的线程中,并行运行。而在多核CPU的计算机上,操作系统会自动为这两个线程分配两个CPU内核。这样就有效地利用了多核CPU可以并行运算的优势。LabVIEW的程序员不知不觉中就完成了一段支持多核系统的程序。  有操作系统来分配CPU也许效率还不是最高的。  比如我现在有这样一个程序(图1),有数据采集、显示和分析三个模块。三个模块是并行执行的。我的电脑是双核的,于是操作系统分配CPU0先做数据采集,CPU1先做数据显示,等数据采

4、集做完了,CPU0又会去做数据处理(图2)。数据处理是个相对任务较为繁重的线程,而电脑一个CPU做数据处理时,另一个CPU却空闲在那里。这种负载不均衡就造成了程序对于整体系统的CPU利用率不高。    图1,2:操作系统为多线程程序自动分配CPU  对于效率要求极为苛刻的程序,还需要更高效的解决方案。LabVIEW8.5提供了一种解决方案,就是利用它的定时结构来有程序员人为指定CPU的分配方案。  定时结构包括定时循环结构(TimeLoop)和定时顺序结构(TimeSequence),他们的主要用于在程序中精确的定时执行某段代码,但是在

5、LabVIEW8.5中它们又多了一个新的功能,就是指定结构内的代码运行在哪一个CPU上。在图3中,定时顺序结构左边四边带小爪的黑方块所代表的接线柱就是用来指定哪一个CPU或CPU内核的。    图3:一个时间数序结构    图2:时间顺序结构的输入配置面板  这个CPU设置可以在配置面板(图2)中静态的指定好,也可以像图1这样,在程序运行时指定。执行图1所示的程序,在0和1之间切换结构内代码运行的CPU,就可以在系统监视器中看到指定的CPU被占用的情况了。  还是以刚才那段程序为例,这一次我手工为每个任务指定他们运行的CPU。    图

6、4:手工指定每个任务运行的CPU  这样一来,两个耗时较少的任务占用同一个CPU,耗时较多的任务单独占用一个CPU。不同CPU被分配到的任务比较均衡,程序整体运行速度大大加快,如图5所示:    图5:两个CPU负载均衡

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。