MPI在VS2008下的配置过程

MPI在VS2008下的配置过程
MPI在VS2008下的配置过程

MPI configuration with Visual C (Visual Studio 2008)

Mumtazimah binti Mohamad & Md Yazid Mohd Saman

Department Computer Science , Faculty of Science & Technology

Universiti Malaysia Terengganu

Email: mumtaz@https://www.360docs.net/doc/ee14047047.html,.my

1.0Introduction to Message Passing Interface and MPICH2

Message Passing Interface(MPI) is a specification for a standard library for message passing that was defined by the MPI Forum, a broadly based group of parallel computer vendors, library, writers, and applications specialists(Gropp et al., 1996). MPI is combine interface, the protocol and semantic specifications for how its features must behave in any implementation (such as a message buffering and message delivery progress requirement). MPI includes point-to-point message passing and collective (global) operations, all scoped to a user-specified group of processes.

MPICH is a freely available, complete implementation of the MPI specification, designed to be both portable and efficient. The “CH” in MPICH stands for “Chameleon”, symbol of adaptability to one’s environment and thus of portability. Chameleons are fast, and from the beginning a secondary goal was to give up as little efficiency as possible for the portability.

MPICH2 is extension of MPI1 with high performance and widely portable implementation of message passing interface (MPI) standard. It is developed by Argonne National Laboratory. The goal of MPICH2 are (1) to provide an MPI implementation that supports different computation and communication platforms including commodity clusters (desktop systems, shared-memory systems, multicore architectures), high-speed networks(e.g. infiniBand) and propriety high-end computing(e.g. Cray) (2) to enable cutting-edge research in MPI through an easy-to-extend modular framework for other derived implementations (ANL, 2005).

MPICH2 should be used instead of MPICH1 except for the case of clusters with heterogeneous data representations (e.g., different lengths for integers or different byte ordering). MPICH2 is distributed as source (with an open-source, freely available license). It has been tested on several platforms, including Linux (on IA32 and x86-64), Mac OS/X (PowerPC and Intel), Solaris (32- and 64-bit), and Windows. MPICH2 support Multiple Program Multiple Data(MPMD) and clusters on different platform and have C++ standard binding as previous MPICH1.

1.1Other windows-based MPI implementations.

There are other windows-based implementations such as:

i.WMPI1.3 works on Microsoft Windows95 and Windows NT.

ii.mp-mpich from RWTH: Scalable Computing, Aachen

i.Contact: mp-mpich@lfbs.rwth-aachen.de

iii.MPI-FM from University of Illinois, Concurrent Systems Architecture Group

i.Contact: fast-messages@https://www.360docs.net/doc/ee14047047.html,

iv.MPICH/NT from Mississippi State University

i.Contact: shane@https://www.360docs.net/doc/ee14047047.html, and boris@https://www.360docs.net/doc/ee14047047.html,

v.MSMPI from Microsoft

i.Source : https://www.360docs.net/doc/ee14047047.html,/en-us/library/cc720120%28WS.10%29.aspx vi.MPI/LAM - developed by Indiana, OSC, Notre Dame (freeware)

vii.MPI/Pro - commercial product

viii.Apple's X Grid

ix.OpenMPI - MPI-2 compliant, thread safe

The similarities in various implementations are:

?Source code compatibility (except parallel I/O)

?Programs should compile and run as it is

?Most of them support for heterogeneous parallel architectures such as clusters, groups of workstations, SMP computers and grids.

The various MPI implementations as above list maybe differs in commands for compiling and linking, MPI program launching, parallel I/O (start from MPI-2) and also debugging. Approaches of programming in most MPI windows-based implementation can be Single Program Multiple Data(SPMD) where the same program is on all processors and Multiple Program Multiple Data ( MPMD) where the different programs is located on different processors.

2.0 Configuration of MPICH and Visual C++ in Visual Studio 2008

In order to support MPI programming for multiprocessor and parallel computing, we have to have the MPI implementation standard. Note that this configuration is done unto Windows Vista Home Premium 32 bit operating system. The installation should also applied to Windows XP.

We need:

?Visual C++ from Visual Studio 2005 or visual Studio 2008 as a compiler.

?MPICH2 for MPI library component for MPI windows-based implementations

2.1Visual Studio 2008

Both the express and professional editions can be used. The express edition can be downloaded from Internet at https://www.360docs.net/doc/ee14047047.html,/od/learnc/ss/vc2008_2.htm . The incoming configuration also can be applied on Visual Studio 2003 and Visual Studio 2005 where it has been tested to be similar. The use of Visual Studio 2010 is yet to be tested.

2.2 Configuring MPI with MPICH2

The MPICH2 setup can be downloaded at https://www.360docs.net/doc/ee14047047.html,/research/projects/mpich2/ . This version is 32bit edition.

i.Double click on downloaded setup then it will automatically install on the machine. Figure

1.1 shows the setup wizard for installation.

Figure 1.1 : The installation windows

There is a step that the process manager setup remind the user to remember the passphrase given. The default value of the passphrase is “behappy” as shown in figure 1.2. This passphrase will be used during SMPD service that capable to make processes from variety of platform.

Figure 1.2 : Step 2 of the installation: Passphrase

ii.Edit the system path

After the mpich2 installation is done. Add the following to system path (in Vista: right click My Computer/Properties/Advanced System Settings/ Advanced/ Environment Variables) C:\Program Files\MPICH2\bin

Edit the path variable for either the system or user variables. This also works on XP but the advanced setting does not exist.

Figure 1.3 : Editing the system path

iii.Add the following exceptions to your firewall:

C:\Program Files\MPICH2\bin\mpiexec.exe

C:\Program Files\MPICH2\bin\smpd.exe

Usually, you will receive a message to unblock these programs. But in case you don't, you have to add them manually.

iv.Register a user account with MPI. Go to

C:\Program Files\MPICH2\bin\wmpiregister

and type in the user account and password that will be used to start MPI jobs. You should

have the same user account and password on all your cluster machines

v.Open port 8676. Go to

C:\Program Files\MPICH2\bin\wmpiconfig

and select "port" at the top of the list

Note that if you install the 32 bit MPICH2 on a 64 bit windows, the MPICH installation directory will be under "Program Files (x86)".

2.3Configuring Visual Studio 2005 or 2008

Now, to setup the environment in Visual Studio we have to tell the compiler where to find the MPI header files and libraries, do the following

a.Start Visual Studio and go to menu “Tools>”Options”>”Projects and Solutions”>”Visual

C++ Directories”.

In the platform list, select win32. At Show directories for dropdown list, choose “Include files”. Add the following path to list by click new list icon. It can be done by directly type or by browsing the lib file location as follows: “C:\Program Files\MPICH2\include”

b. Change directory to” Library Files” and add new path to the library files list as figure 1.5. add the following path: “C:\Program Files\MPICH2\lib”

This setting is configured once after installation of MPICH2.

Figure 1.4 : Configuring the include file of MPICH2 Figure 1.4 : Configuring the library file of MPICH2

2.4Configuring MPI project during coding

To develop a new project, click menu “File” and choose “New Project”. There will be a menu for setting a new project as in figure 1.6. Choose” Visual C++ “project type and click “Win32”. On the right, there will templates for win32 project, click on the “Win32 Console Application”. Name the project name and the location to be saved. Then click ‘OK’.

Figure 1.6 : Creating a new project of win32 console application Figure 1.7 appear afterwards and choose empty project and click ‘Finish’ button.

Figure 1.7: Setting the project

Before start writing any codes, each MPI project should have the following setting manually.

Click on project Name, and select menu “Project” and choose “Properties”. Click “Configuration Properties”, then choose C/C++ and click on “General”. On “Additional Include Directories”, add (or browse) the following entry:

C:\Program Files\MPICH2\include

Figure 1.8 : Setting the include file project

As figure 1.7, Select "Linker" tree menu and choose “Input”. In “Additional Library Directories” add the following entry:

C:\Program Files\MPICH2\lib

Figure 1.9 : Setting the library file project

The last one is by selecting “Linker”> “ Input”> on the left side. Choose “Additional Dependencies “ by add “mpi.lib” and click OK button as shown in Figure 1.10.

2.5 MPI Debugging with Visual Studio

Open your project properties, and go to “Configuration Properties” and choose “Debugging”. Set the the following properties:

1. MPIRun Command is the path and filename of your mpirun application (usually

mpiexec.exe or mpirun.exe), if the default path is "c:\Program Files\MPICH2\bin\mpiexec.exe" (do not forget the “”). Make sure the mpiexec file in the

located file.

Figure 1.10 : Setting the input library of project

Figure 1.11 : Setting the mpiexec

2. MPIRun Arguments are the arguments we want to pass to the mPIRun command, at very

least we have to tell mpi the number processes to spawn, so we use –n 2 (or –np 2) for 2

processes (change 2 as you wish).

3. MPIShim Location is the path and filename of your mpishim.exe file. Mpishim.exe is

different for every release of visual studio and platform you have. For example its location for Visual Studio 2008 and 2005 for 32bit platforms should be “C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\Remote Debugger\x86”

3 Configuring MPI project during coding Figure 1.13 : Setting the MPI properties Figure 1.12 : Setting the MPI application command

Debugging

Figure 1.14 : Setting the MPI properties

MPI program should define their library header which is “mpi.h” among all other libraries. To start debugging the MPI program, write some mpi code or, copy MPI “helloworld” program and paste into source file .cpp. Compile and run on command prompt where, the executable file is located Example:

C:\..\theProject\debug\mpiexec –np 3 exefile.exe

?mpiexec - mpirun command

?np for number processor syntax

? 3 is for numbers of processor include master

?exefile is file executable file of compiled program.

Figure 1.15 : Running on command prompt

4.0 Conclusion

Before programming make sure the following work was finished.

1.The windows cluster works well by configuration in

2.5.

2.The Visual Studio host computer (the one from which you are debugging) must has been

setted up as in 2.

3.MPICH2 must be installed and configured on each node of the cluster

4.The Visual Studio Remote Debugging Monitor (msvsmon.exe) must be installed on each

node in the cluster.

5.The MPIShim.exe file must be installed on each node in the cluster, and in the same location

on each node.

5.0 References

1.M. Y. Saman ;D. J. Evans, “Manual on System Setup for PC Cluster with WMPI and

Microsoft Visual C++”, 1994

2.https://www.360docs.net/doc/ee14047047.html,/posts/mpi-debugging-with-visual-studio/

3.A L. (2005). MPICH2: High-Performance and Widely Portable MPI. USA: Argonne

ational Laboratory.

4.Gropp, W., Lusk, E., Doss, ., & Skjellum, A. (1996). A high-performance, portable

implementation of the MPI message passing interface standard. Parallel Computing, 22(6), 789-828.

For more information, please contact:

Mumtazimah binti Mohamad1 & Md Yazid Mohd Saman2

1Email: mumtaz@https://www.360docs.net/doc/ee14047047.html,.my

2Department Computer Science , Faculty of Science & Technolog

Universiti Malaysia Terengganu

Date: October 2010-09-20

vs2008最简单可行的激活方法 破解 Win7下vs2008激活方法

vs2008最简单可行的激活方法破解Win7下vs2008激活方法 VS2008破解方法非常简单,在开始>设置>控制面版>添加或删除程序>卸载https://www.360docs.net/doc/ee14047047.html,2008>出现卸载界面>点击Next>输入上面CD-key ->出现成功画面即可完美将试用版升级成为正式版。 VS2008正式版序列号CDKEY:PYHYP-WXB3B-B2CCM-V9DX9-VDY8T、 你将会看到升级成功的绿色画面,恭喜你,你的变为正版了! ---------- 但是win7下次方法行不通,因为没有输入项, 只有通过此方法: 昨天安装一个VS2008,经过1个小时的安装,终于结束了。 可是按照先前在xp或者vista下的激活方法却没有成功。于是上网找了很多篇文章。得出的结论都是以前采用的方法在Windows XP和VISTA 上是可以实现的,但是在Win7上还是有些问题。所以,Windows7的用户,还是使用下面介绍的第一种方法激活为好。 激活VS2008的方法: 方法一、没有安装VS2008,把安装文件中setup文件夹下的setup.sdb用记事本打开,查找[Product Key],把T2CRQGDKBVW7KJR8C6CKXMW3D修改为PYHYPWXB3BB2CCMV9DX9VDY8T。然后就可以开始安装了,安装完就自动激活了。 方法二、在开始>设置>控制面版>添加或删除程序>卸载https://www.360docs.net/doc/ee14047047.html,2008>出现卸载界面>点击Next>输入上面CD- key ->出现成功画面即可完美将试用版升级成为正式版。普通程序都是点卸载后,就直接运行卸载,但是VS2008还有一个升级功能。但是Windows7上没有这个能力。

Visual_Studio_2010_破解

VS2010 正式版破解方法详解 转载自:https://www.360docs.net/doc/ee14047047.html,/wjhuangjin/archive/2010/04/13/5482124.aspx 步骤1.下载VS2010 正式版,下载地址: 页面: https://www.360docs.net/doc/ee14047047.html,/downloads/details.aspx?displaylang=en&FamilyID=06a32b1c-80e9-41d f-ba0c-79d56cb823f7 直接ISO文件地址: https://www.360docs.net/doc/ee14047047.html,/download/2/4/7/24733615-AA11-42E9-8883-E28CDCA88ED5/X1 6-42552VS2010UltimTrial1.iso 步骤2.安装文件完成后,点击此处(如下图2.1和2.2): (图2.1) 在卸载向导中输入序列号(如图2.2): YCFHQ-9DWCY-DKV88-T2TMH-G7BHP VS2010 SN

(图2.2) 步骤3.破解成功(图3.1): 教程二: 步骤1.同教程一下步骤1,下载源文件。 步骤2.解压到源文件,并找到setup文件夹如下图所示:

步骤3:打开setup文件夹并找到setup.sdb文件,如下图所示: 步骤4.以记事本打开setup.sdb文件,并找到: [Product Key] YR3W8FCM2B7BKF9HMQFTCH7WK 并将key替换成: YCFHQ9DWCYDKV88T2TMHG7BHP 如下图:

步骤5.破解完成,关闭所有文件,点击setup.exe按常规步骤安装即可。

MPI并行程序设计实例教程

编辑推荐 ◆书中内容侧重于以MPI库为基础开发并行应用程序,对MP规范定义的各项功能和特征在阐述其特点基础上均配以实例加以说明和印证。 ◆书中所附实例尽量采用独立的功能划分,其中的代码片段可直接用于并行应用程序开发 ◆在讲述基本原理的同时,注重对各项消息传递和管理操作的功能及局限性、适用性进行分析从而使熟读此书的读者能够编写出适合应用特点,易维护、高效率的并行程序。 ◆与本书配套的电子教案可在清华大学出版社网站下载。 本书简介 本书旨在通过示例全面介绍MP1并行程序开发库的使用方法、程序设计技巧等方面的内容,力争完整讨论MP1规范所定义的各种特征。主要也括MPI环境下开发并行程序常用的方法、模式、技巧等 内容。在内容组织上力求全面综合地反映MPl-1和MPI-2规范。对MPI所定义的各种功能、特征分别

给出可验证和测试其工作细节的示例程序 目录 第1章 MPI并行环境及编程模型  1.1 MPICH2环境及安装和测试 1.1.1 编译及安装 1.1.2 配置及验汪 1.1.3 应用程序的编译、链接 1.1.4 运行及调试 1.1.5 MPD中的安全问题  1.2 MPI环境编程模型 1.2.1 并行系统介绍 1.2.2 并行编程模式 1.2.3 MPI程序工作模式  1.3 MPI消息传递通信的基本概念 1.3.1 消息 1.3.2 缓冲区 1.3.3 通信子 1.3.4 进样号和进程纰 1.3.5 通价胁议 1.3.6 隐形对象 第2章 点到点通信  2.1 阻糍通信 2.1.1 标准通信模式 2.1.2 缓冲通信模式 2.1.3 就绪通信模式 2.1.4 同步通信模式 2.1.5 小结  2.2 非阻塞通信 2.2.1 通信结束测试 2.2.2 非重复的非阻塞通信 2.2.3 可醺复的非阻塞通信 2.2.4 Probe和Cancel  2.3 组合发送接收 2.3.1 MPl_Send,MPI_RecvoMPl_Sendreev 2.3.2 MPI_Bsend←→MPl_Sendrecv 2.3.3 MPI_Rsend←→MPI_Sendrecv 2.3.4 MPl_Ssend←→MPl_Sendrecv 2.3.5 MPl_lsend←→MP1一Sendrecv 2.3.6 MPl_Ibsend←→MPI_Sendrecv 2.3.7 MPI_Irsend←→MPI_Sendrecv 2.3.8 MPl_Issend,MPI_Irecv←→MPI_Sendrecv 2.3.9 MPI Send_init←→MPl_Sendrecv 2.3.10 MPI一Bsendj init←→MPl_Sendrecv 2.3.11 MPI_Rsend_init←→MPI_Sendrecv 2.3.12 MPl_Ssend_init,MPl_Recv_init←→MPl_Sendrecv 2.4 点到点通信总结

Fortran软件安装大全

为大家介绍fortran编译软件,和imsl库的使用,有些地址已失效,有些软件在群共享里VS破解用百度的序列号,ivf用crack文件里的许可文件(.lic)。 一.跟上时代的脚步:Visual studio2012+intel visual fortran2013, (兼容win7 64位32 位)目前是最新的组合,配合强大的vs2012编译器,全新的VS界面感触以及操作。仅这个可以跑在win8系统上。 https://www.360docs.net/doc/ee14047047.html,/d/iMuvAwLMJAC8l1tR9cd 二.推荐使用IVF2011+MVS2008(兼容win7 64位32 位) 下载方案地址:https://www.360docs.net/doc/ee14047047.html,/p/1536274172 mvs2008:https://www.360docs.net/doc/ee14047047.html,/topics/2743184/ ivf2011:https://www.360docs.net/doc/ee14047047.html,/topics/2901142/ 安装看页面评论, IVF版本自带MKL(Intel数学核心库) 三.通用版本:MVS2008+ivf11.0.061(兼容win7 64位32 位) mvs2008:https://www.360docs.net/doc/ee14047047.html,/topics/2743184/ ivf11.0.061 :https://www.360docs.net/doc/ee14047047.html,/topics/2746349/ 安装看页面评论, IVF版本自带MKL(Intel数学核心库) 四.IMSL6.0下载地址:https://www.360docs.net/doc/ee14047047.html,/post-310268.html(下载32位的IMSL库)安装方法:https://www.360docs.net/doc/ee14047047.html,/s/blog_6c7caddf0100n8up.html(仔细认真看) 安装参考:https://www.360docs.net/doc/ee14047047.html,/html/kaifa/281/2011/09/024*********.htm 这个imsl6.0只支持第三个fortran版本组合。 五.大名鼎鼎的CVF了,自带IMSL库,在群共享里,跑在xp上,win7可能不兼容。

Visual Studio 2010 Register Code

Visual Studio 2010 下载,安装,激活,序列号,注册码,下载地址(全集) 附Visual Studio 2008下载地址激活sp1下载 Visual Studio 2010 激活码Visual Studio 2010注册码 YCFHQ-9DWCY-DKV88-T2TMH-G7BHP 破解方式:Product Key为YCFHQ9DWCYDKV88T2TMHG7BHP,用这个key替换安装盘中setup目录中的setup.sdb中[Product Key]的内容,重新保存即可,这是针对Visual Studio 2010 Ultimate版,其他版本的应该也适用,之后的安装就一路顺风了 custom fabric 1、Microsoft Visual Studio 2010 Ultimate的安装与下载 标题:Microsoft Visual Studio 2010 Ultimate – ISO 文件名:X16-42552VS2010UltimTrial1.iso 容量:2283.0 MB SHA-1: 0×8371f6a8d090063fcc320617e94854374633df3c 网页地址:https://www.360docs.net/doc/ee14047047.html,/downloads/details.aspx?FamilyID=06a32b1c-80e9-41df-ba0c-79d56cb823f7&displaylang=en 下载地址:https://www.360docs.net/doc/ee14047047.html,/download/2/4/7/24733615-AA11-42E9-8883-E28CDCA88ED5/X16-42552VS2010UltimTrial1.iso 2、Microsoft Visual Studio 2010 Ultimate的注册与破解 Help->Register Product-> 注册码YCFHQ-9DWCY-DKV88-T2TMH-G7BHP Visual Studio 2010 下载地址Visual Studio 2010 下载Visual Studio 2010 中文下载 专业版(Professional) https://www.360docs.net/doc/ee14047047.html,/download/4/0/E/40EFE5F6-C7A5-48F7-8402-F3497FABF888/X16-42555VS2010ProTrial1.iso 高级版(Premium) https://www.360docs.net/doc/ee14047047.html,/download/F/F/8/FF8C8AF1-D520-4027-A844-8EC7BC0FB27C/X16-42546VS2010PremTrial1.iso 旗舰版(Ultimate) https://www.360docs.net/doc/ee14047047.html,/download/2/4/7/24733615-AA11-42E9-8883-E28CDCA88ED5/X16-42552VS2010UltimTrial1.iso 测试专业版(Test Professional) LicenseKey注册码=6F0510EB-FF8F-47ec-96E1-78FB4B955330 Visual Studio 2010 Professional 官方试用版内置序列号: [Product Key]序列号 Q49M2-C79JF-QP93Q-WX9GJ-6TKKD Visual Studio 2010 Professional 正式序列号:(已安装测试可用。Professional版与Ultimate版均测试通过!) YCFHQ-9DWCY-DKV88-T2TMH-G7BHP

Visual Studio 说明

Visual Studio Ultimate with MSDN Ultimate 代表着Visual Studio 所提供的最佳产品。专为企业级开发而创建,Visual Studio Ultimate with MSDN 可以帮助您的团队处理高可用性、性能、伸缩和复杂度等需求。它提供了提高工作效率和生成高质量应用程序所需的高级工具以及所有软件、服务和资源。 90 天免费试用 还等什么?马上下载Visual Studio Ultimate 2013,开始90 天免费试用。 立即获取 ?概述 ?功能 ?系统要求 ?定价 关键 IDE 功能 ?在上下文中快速获取所需信息 ?即使在生产中也能使用IntelliTrace 进行历史调试 ?在生产中进行测试以确保可伸缩性和性能 ?使用UML 图直观显示应用程序结构 ?说明并强制结构依赖关系 ?使用工具了解现有代码中的关系 Visual Studio Online

对于可添加到Visual Studio Online 帐户的Ultimate 用户没有数量限制。如果您没有Visual Studio Online 帐户,可以创建一个,这样就可以访问敏捷项目组合管理、Web 测试用例管理、团队聊天室和云负载测试等企业功能。 MSDN 权益 内含的MSDN 订阅使您能够访问数千种Microsoft 产品和额外的服务,为您提供在多种平台(包括Windows Azure)上设计、开发和测试应用程序的全部所需。 功能 在上下文中快速获取所需信息 CodeLens 在代码编辑器中提供了平视显示功能,您可以快速了解所处理的代码。一眼就可以看到您所修改或调查的方法是否打断了任何单元测试,您也可以联系代码作者,直观地了解引用和依赖关系,查看相关Bug 和最近所做的更改。所有答案都从一处获得,只需单击一次,无需切换上下文。 即使在生产中也能使用 IntelliTrace 进行历史调试 IntelliTrace 历史调试程序通过记录文件和注册表访问、异常、方法调用和其他状态信息,消除了“无法重现”的Bug 情景,即使错误已经发生,您也可以后退代码执行并重现精确的错误条件。此外,还可以将IntelliTrace 收集器部署到生产服务器中来快速诊断生产问题,您还可以从Microsoft System Center 2012 事件中导出收集器,创建丰富的可操作工作项来促进操作与部署之间的沟通。 在生产中进行测试以确保可伸缩性和性能 使用高级测试工具,您可以应用基于常量、步骤或目标的负载模式进行负载测试。以可以快速识别趋势和问题的多种方式分析和解释测试结果。不限数量的测试节点(包括支持不限数量虚拟浏览器的Web 应用程序),可以在企业规模进行测试。您可以使用现有基础结构,也可以连接Visual Studio Online,仅对所用资源支付费用。 使用 UML 图直观显示应用程序结构 UML 2.0 兼容的图有助于您设计、了解和讨论软件系统。Visual Studio Ultimate with MSDN 支持创建活动、用户用例、序列、类和组件图。您也可以创建定义系统结构的层关系图。 说明并强制结构依赖关系

WinXP+VS2008+qgis2.6.0源码调试笔记(离线安装)

WinXP+VS2008+qgis2.6.0源码调试笔记(离线安装) 时间:2014年11月22日 1.准备工作 1.1下载QGIS源码 Qgis源码可在官网https://www.360docs.net/doc/ee14047047.html,上下载,当前的最新版本是Qgis2.6.0版本。 1.2下在Visual Studio 2008 Pro 下载离线破解版 1.3下载Qgis编译所需的依赖工具 1.3.1 CMake Qgis跟大多数开源工程一样,也是采用Cmake编译的。CMake的版本要求 CMake >= 2.8.0,本人采用CMake2.8.12。 下载地址:https://www.360docs.net/doc/ee14047047.html,/files/v2.8/cmake-2.8.12.2-win32-x86.exe 1.3.2 flex&bison flex和bison目前提供的window安装包版本太老,截至2013年Windows 安装包flex 的版本是 2.5.4a(https://www.360docs.net/doc/ee14047047.html,/downlinks/flex.php),而最新的flex 版本是 2.5.37;Windows安装包bison的版本是 2.4.1(https://www.360docs.net/doc/ee14047047.html,/downlinks/bison.php),而现在最新的bison版本是3.0。对于Qgis2.6.0不能采用目前提供的flex和bison的windows 安装包(Qgis1.8.0之前的版本是可以的,编译的时候会出现问题,后面细说)。 既然flex和bison的windows 安装包不能用,那该怎么办呢?有两种解决思路: a)下载flex2.5.37和bison 3.0的源码,通过Cygwin或Mingw安装;(有点麻烦,本人 木有试~) b)从sourceforge上下载最新版的Win flex-bison安装包win_flex_bison-latest.zip,本人下载 的版本包含win_flex2.5.37和win_bison3.0,不需要安装,直接将安装包解压到指定目录,确保目 录中没有空格,本人的目录为C:\GnuWin32\win_flex_bison。(注意:最新的Win flex-bison在 vs2008中还不能直接使用,在vs2010中是可以直接使用的,由于本人安装了VS2008,所以还得进行一系列规则配置,后面细说) 1.4下载编译所依赖的库 第三方库是通过OSGEO4W提供的,首先下载OSGEO4W安装包 https://www.360docs.net/doc/ee14047047.html,/osgeo4w/osgeo4w-setup-x86.exe (32bit)

MPI并行编程环境及程序设计

第27卷 第3期河北理工学院学报Vol127 No13 2005年8月Journa l of Hebe i I n stitute of Technology Aug.2005 文章编号:100722829(2005)0320041203 MP I并行编程环境及程序设计 杨爱民1,陈一鸣2 (11河北理工大学理学院,河北唐山063009;21燕山大学理学院,河北秦皇岛066004)关键词:MP I;并行编程;消息传递 摘 要:通过对MP I原理和特点的研究,给出了并行MP I程序的基本设计思路和执行过程,并 实现了向量相加的并行计算。 中图分类号:TP316 文献标识码:A 0 引 言 近几十年来,大规模和超大规模的并行机取得了快速发展,由于各种原因,开发商对用户提供的必要支持,如它们各自专有的消息传递包NX、EU I、P VM等,虽然在特定平台上具有很优越的性能,但是从应用程序来看,可移植性差。1992年11月,在Supercomputi ong’92会议上,正式成立了一个旨在建立一个消息传递标准平台的MP I(Message Passing I nterface)论坛,该论坛不仅包括了许多P VM、Exp ress等的研制者及并行程序用户,还吸收了许多著名计算机厂商的代表。论坛于1994年5月,公布了MP I标准。MP I是一种为消息传递而开发的广泛使用的标准,它为消息传递建立了一个可移植的、高效、灵活的标准。 1 MP I的原理与特征 MP I是一个函数库,而不是一门语言,它是一种消息传递模型,它的最终目的是服务于进程间通信。MP I作为一个并行程序库的开发平台,为用户编写和运行程序提供了便利的条件。由于MP I是基于消息传递机制构建的系统,因此它在体系结构为分布存储的并行机中有很宽阔的应用空间,它可以应用在各种同构和异构的网络平台中。它的编程语言可以为Fortran77/90、C/C++。在Fortran77/90、C/C++语言中都可以对MP I的函数进行调用,它作为一种消息传递模式的并行编程环境,MP I并行程序要求将任务进行划分,同时启动多个进程并发的执行,而各个进程之间通过MP I的库函数来实现其中的消息传递。 MP I与其它并行编程环境相比,显著的特点有: (1)可移植性强,能同时支持同构和异构的并行计算; (2)可伸缩性强,允许并行结构中的节点任意增加或减少; (3)能很好的支持点对点通信和集体通信方式; (4)对C语言和Fortran语言的支持,使其能很好的满足各种大规模科学和工程计算的需要。 这样,以MP I作为公共消息传递接口的并行应用程序就可以不作任何改动的移植到不同种类和型号的并行机上,也能够正常运行,或者移到网络环境中也一样。 2 MP I的基本函数 MP I为消息传递和相关操作提供了功能强大的库函数,MPl-1中有128个,MP I-2中有287个库函数。但是从理论上来说,MP I的所有通信功能都可以用它的6个基本调用来完成,即使用这6个函数可以实现所有的消息传递并行程序。这六个函数分别为呼(Fortran77语言的调用格式来描述): (1)MP I初始化 MP I程序的初始化工作通过调用MPl l N I T(I ERROR)来实现,所有MP I程序的第一条可执行语句都是 收稿日期:2004210221 基金项目:河北省自然科学基金项目(E2004000245) 作者简介:杨爱民(19782),男,河北顺平人,河北理工大学理学院教师,硕士。

VS2010序列号

YCFHQ-9DWCY-DKV88-T2TMH-G7BHP输入序列号就可以了 方法一:在控制面版的在卸载向导中输入序列号 YCFHQ-9D WCY-DKV88-T2TMH-G7BHP, 方法二:解压ISO后找到setup\setup.sdb,用笔记本打开,找到: [Product Key] YR3W8FCM2B7BKF9HMQFT CH7WK 并将key替换成: YCFHQ9D WCYDKV88T2TMHG7BHP VS2010破解版下载:visual studio2010简体中文正式旗舰版破解版下载(附序列号) 2010-12-30 11:16 MSDN VS2010 Ultimate 简体中文正式旗舰版破解版下载(附序列号) 下载方法:复制地址->在迅雷新建下载任务->粘贴->完成! visual studio 2010正式发布不久后,就已经有朋友放出了所有版本的下载,这些版本均已经破解,下载后直接安装即已激活。详细如下(使用迅雷或电驴等BT工具下载即可): MSDN Professional包含Key(简体中文版本): ed2k://|file|cn_visual_studio_2010_professional_x86_dvd_532145.iso|25 91844352|6001253431AFE573E4344F5A0B1D9CAC|/ MSDN Ultimate包含Key(简体中文版本)【此为旗舰版,推荐下载该版本】:ed2k://|file|cn_visual_studio_2010_ultimate_x86_dvd_532347.iso|268598 2720|4AE6228933DDE49D9BFA4C3467C831C2|/ MSDN Team Foundation Server包含Key(简体中文版本): ed2k://|file|cn_visual_studio_team_foundation_server_2010_x86_x64_dvd _531909.iso|1963589632|C9C77B2707DF100621B3FB653C285524|/ MSDN Team Foundation Server包含Key(繁體中文版本): ed2k://|file|ct_visual_studio_team_foundation_server_2010_x86_x64_dvd _531915.iso|1966714880|D6BD12D5B693E7EDA545D52FB54CC8E5|/ MSDN Ultimate包含Key(繁體中文版本): ed2k://|file|ct_visual_studio_2010_ultimate_x86_dvd_532348.iso|269133 0048|BF50926EAB061C7D0D92580F4132F9EA|/ MSDN Professional包含Key(英文版本): ed2k://|file|en_visual_studio_2010_professional_x86_dvd_509727.iso|23 51316992|D395B6381AC129209EE80D9BED4BA5F1|/ MSDN Ultimate包含Key(英文版本): ed2k://|file|en_visual_studio_2010_ultimate_x86_dvd_509116.iso|244695 0400|0694CFA0756D8C11499DE5B42E205410|/ MSDN Premium包含Key(英文版本): ed2k://|file|en_visual_studio_2010_premium_x86_dvd_509357.iso|2439485 440|C72F6195CAC0932AA5B6861AE863FDBC|/ MSDN Express包含Key(英文版本): ed2k://|file|en_visual_studio_2010_express_x86_dvd_510419.iso|7273512

消息传递并行编程环境MPI

国家973项目高性能计算环境支持讲座 MPI与PETSc 莫则尧 (北京应用物理与计算数学研究所)

个人介绍 莫则尧,男,汉族,1971年7月生,副研究员:●1992年国防科技大学应用数学专业本科毕业; ●1997年国防科技大学计算机应用专业并行算法 方向博士毕业; ●1999年北京应用物理与计算数学数学博士后流 动站出站,并留所工作; ●主要从事大规模科学与工程并行计算研究。

消息传递并行编程环境MPI 一、进程与消息传递 二、MPI环境的应用现状 三、MPI并行程序设计入门(程序例1) 四、初步的MPI消息传递函数 五、作业一 六、先进的MPI函数 七、MPI并行程序示例2(求解- u=f); 八、MPI环境的发展 九、作业二

一、进程与消息传递 1.单个进程(process ) ● 同时包含它的执行环境(内存、寄存器、程序计数器等),是操作系统中独立存在的可执行的基本程序单位; ● 通俗理解:串行应用程序编译形成的可执行代码,分为“指令”和“数据”两个部分,并在程序执行时“独立地申请和占有”内存空间,且所有计算均局限于该内存空间。 2.单机内多个进程: ● 多个进程可以同时存在于单机内同一操作系统:由操作系统负责调度分时共享处理机资源(CPU 、内存、存储、外设等); ● 进程间相互独立(内存空间不相交):在操作系统调度下各自独立地运行,例如多个串行应用程序在同一台计算机中运行; ● 进程间可以相互交换信息:例如数据交换、同步等待,内存

些信息在进程间的相互交换,是实现进程间通信的唯 一方式; ●最基本的消息传递操作:发送消息(send)、接受消 息(receive)、进程同步(barrier)、规约(reduction); ●消息传递的实现:共享内存或信号量,用户不必关心; 3.包含于通过网络联接的不同计算机的多个进程: ●进程独立存在:进程位于不同的计算机,由各自独立 的操作系统调度,享有独立的CPU和内存资源; ●进程间相互信息交换:消息传递; ●消息传递的实现:基于网络socket机制,用户不必关 心; 4.消息传递库函数: ●应用程序接口(API):提供给应用程序(FORTRAN、 C、C++语言)的可直接调用的完成进程间消息传递

MPI并行编程系列二快速排序

MPI并行编程系列二快速排序 阅读:63评论:0作者:飞得更高发表于2010-04-06 09:00原文链接在上一篇中对枚举排序的MPI并行算法进行了详细的描述和实现,算法相对简单,采用了并行编程模式中的单程序多数据流的并行编程模式。在本篇中,将对快速排序进行并行化分析和实现。本篇代码用到了上篇中的几个公用方法,在本篇中将不再做说明。 在本篇中,我们首先对快速排序算法进行描述和实现,并在此基础上分析此算法的并行性,确定并行编程模式,最后给出该算法的MPI实现。 一、快速排序算法说明 快速排序时一种最基本的排序算法,效率相对较高。其基本思想是:在当前无序数组R[1,n]中选取一个记录作为比较的"基准",即作为排序中的"轴"。经过一趟排序后,当前无序数组R[1,n]就会以这个轴为核心划分为两个无序的子区r1[1,i-1],r2[i,n]。其中左边的无序子区都会比"轴"小,右边的无序子区都会比"轴"大。这样下一趟排序,我们就可以对这两个子区用同样的方法进行划分排序,知道所有的无序子区中的记录均排好为止。 根据算法的说明,快速排序时一个典型的递归算法,算法描述如下: 无序数组R[1],R[2],.,R[n] quick_sort(R,start,end) if(start end) r=partion(R,start,end) quick_sort(R,start,r-1) quick_sort(R,r+1,end) endif end quick_sort方法partion的作用就是选取"轴",并将数组分为两个无序子区,并将该"轴"的最终位置返回,在这里我们选择数组的第一个元素为"轴",其算法描述为: partion(R,start,end) r=R[start] while(start end)

VS2008编译C语言程序详细步骤

2008(VS2008) xp,vista,win7(32, 都可运行, Visual Studio 2008(VS2008)编译 C 语言方法 xp,vista,win7(32,64 位)都可运行,效 果很好! 果很好!
2011-01-01 13:31 大家在学习 C 语言的时候接触的一般都是 VC6.0。但是 VC6.0 只能编译 C 或者 C++,不支持 C#,集成度不是很高。而且界 面并不十分友好,不能自动猜测关键字,函数的参数也不能自动标示。最关键的 是,编译的时候纠错信息是全英文的,对 于初学者十分不方便。在演示编译一些简单的 C 程序时 VC6.0 可以胜任,但是 在进行稍微复杂的程序编辑工作时,VC6.0 就 有点力不从心了。
现在微软的基于.NET 的开发软件已经更新至 Visual Studio 2010(VS2010) 但是 VS2010 版本还不是最完善,所以目前 为止, 最流行的还是 Visual Studio 2008 (内部代号 VC9.0, 以下简称 VS2008) 。 大家接触 VS2008 一般都是从 C#或者 VB 语言开始的, 其实 VS2008 作为一款集成度很高的编译软件, 其本身也是支持 C 语言的。大家可以用它来进行 C 语言的编 译。相较于 VC6.0,VS2008 更加的智能,更加人性化。而且 VS2008 还支持 windows7(VC6.0 不支持),所以很多装了 windows7 的朋友就不用头疼了。 下面,就向大家啊演示如何使用 VS2008 编译 C 程序,本文中使用 VS2008 professional 版本。 1.打开 VS2008,这就不用多说了吧 2.打开了 VS2008 的主界面,然后选择,文件→新建→项目 弹出如图对话框

安装VS2008和SQLserver等的过程记录

安装Visual Studio 2008和SQLServer2005的过程 (注:在WinX P 下进行的Visual Studio 2008和SQLServer2005的安装,但也适合Win2003下Visual Studio 2005和SQLServer2000的安装,并且考虑了开发Windows应用程序和Web应用程序等情况) (龙跃进2010-9-12) readme”文件和“VS2008正式版序列号”文件说明 Readme中的“Visual Studio 2008 自述文件”: 2、请注意以下内容: 1. 系统要求 1.1. 支持的体系结构 ?x86 ?x64 (WOW) 1.2. 支持的操作系统 ?Microsoft Windows X P(我的电脑是它) ?Microsoft Windows Server 2003(若要使用V isual Studio Tools for Office 中的SharePoint 工作流开发工具,就选择它,参下面的2.1.1) ?Windows Vista 1.3. 硬件要求 ?最低要求:1.6 GHz CPU、384 MB RAM、1024x768 显示器、5400 RPM 硬盘 ?建议配置:2.2 GHz 或速度更快的CPU、1024 MB 或更大容量的RAM、1280x1024 显示器、7200 RPM 或更高转速的硬盘 ?在Windows Vista 上:2.4 GHz CPU、768 MB RAM (注:要使用V isual Studio Tools for Office 中的SharePoint 工作流开发工具,就看看2.1.1,如果不使用可不看下面的2.1.1内容,但其安装思路可参考) 2.1.1. Visual Studio SharePoint 工作流功能具有特定的安装要求。 若要使用Visual Studio Tools for Office 中的SharePoint 工作流开发工具,请按照指定的顺序完成下列安装步骤。

MPI并行编程系列二快速排序

MPI 并行编程系列二快速排序 阅读:63 评论:0作者:飞得更高发表于2010-04-06 09 :00 原文链接 在上一篇中对枚举排序的MPI并行算法进行了详细的描述和实现,算法相对简单,采用了并行编程模式中的单程序多数据流的并行编程模式。在本篇中,将对快速排序进行并行化分析和实现。本篇代码用到了上篇中的几个公用方法,在本篇中将不再做说明。 在本篇中,我们首先对快速排序算法进行描述和实现,并在此基础上分析此 算法的并行性,确定并行编程模式,最后给出该算法的MPI实现。 一、快速排序算法说明 快速排序时一种最基本的排序算法,效率相对较高。其基本思想是:在当前 无序数组R[1,n] 中选取一个记录作为比较的"基准" ,即作为排序中的"轴" 。经过一趟排序后,当前无序数组R[1,n] 就会以这个轴为核心划分为两个无序的子区r1[1,i-1],r2[i,n] 。其中左边的无序子区都会比"轴"小,右边的无序子区都会比" 轴" 大。这样下一趟排序,我们就可以对这两个子区用同样的方法进行划分排序,知道所有的无序子区中的记录均排好为止。 根据算法的说明,快速排序时一个典型的递归算法,算法描述如下:无序数组R[1],R[2],.,R[n] quick_sort(R,start,end) if(start end) r=partion(R,start,end) quick_sort(R,start,r-1) quick_sort(R,r+1,end) endif end quick_sort 方法partion 的作用就是选取" 轴" ,并将数组分为两个

无序子区,并将该" 轴" 的最终位置返回,在这里我们选择数组的第一个元素为"轴" ,其算法描述为: partion(R,start,end) r=R[start] while(start end) while((R[end]=r)&&(start end)) end- end ehile R[start]=R[end] while((R[start]r)&&(start end)) start++ end wile R[end]=R[start] end while R[start]=r return start end partion 该排序算法的性能好坏主要取决于" 轴" 的选定,即无序数组的划分是否均衡。最好的情况下,无序数组每次都会被划为两个均等的无序子区,这是算法的负责度为o(nlogn) ;最坏的情况,无序数组每次划分都是左边n-1 个元素,右边0 个元素,这时算法的复杂度为 o(n A2)。在通常的情况下,该算法的复杂度会依然保持在o(nlogn) ,上只不过具有更高的常数因子。因此,选定一个有效地"轴",成为该算法的关键。一般情况下,会选定无序数组的第一个,中间或者是最后一个元素作为算法的"轴",我们可以对着三个元素进行比较,取大小居中的那个元素作为该算法的" 轴" 。 、快速排序算法的串行实现 确定在什么条件下终止递归操作。主函数代码如下: 1:void quick_sort_function(int*array,int start,int last){2

QTP10破解(已验证)

QTP10破解 1 破解步骤: 1.1 安装qtp,一路默认下来(一定要默认安装目录),到要求输入License的界面 1.2 .拷贝mgn-mqt8 2.exe(下载)到C:\Program Files\Mercury Interactive(自己手动创建,其实 不包含中文目录即可)文件夹下,如果是WIN7系统修改属性,勾选以“管理员运行此程序” 1.3 XP系统手动创建C:\Program Files\Common Files\Mercury Interactive\License Manager文件 夹 Win7系统手动创建C:\Program Files (x86)\Common Files\Mercury Interactive\License Manager文件夹

1.4 执行自己刚才创建的C:\Program Files\Mercury Interactive文件夹下的破解工具 mgn-mqt82.exe,会提示lservrc文件生成。 1.5 在对应目录下找到文件lservrc,用记事本打开,复制文件LSERVRC中#之前的字符串,那个就是注册码如下: 3QVWCPPOS5NGGFM6KPX64EQFSH6INFRJIVMC5WZ4XIIFIXX86UCPIP4M686DZKV9NANA9 BUP# "QuickTestPro" version "6.0", no expiration date, exclusiveJZ7F79F6YQQFVUWNG2V7AW22K537DOELQYNX6VSCNCZ9J8M2QW9OXO5DSEQ KUZA46X5BO# "FT-Unified" version "1.0", no expiration date, exclusive 就拷贝#号前的 3QVWCPPOS5NGGFM6KPX64EQFSH6INFRJIVMC5WZ4XIIFIXX86UCPIP4M686DZKV9NANA9 BUP 然后粘贴到license向导中的license输入的地方,点击确定,可以看到信息为无限制使用,也可以打开qtp,在help-about qtp--License对话框中可以看到该qtp已经显示为无限制使用了

基于MPI并行编程环境简述

并行计算课程报告 题目:MPI并行编程环境概要指导老师:阮幼林教授 学院:信息工程学院 班级:信息研1001班 姓名:余华 学号:104972102820 时间:2011年01-10

摘要 随着科技的发展,新一代的计算机,无论计算能力和计算速度,都比旧的计算机优越。但人类对高性能计算的需求,也不断提高.除了增强处理器本身的计算能力外,并行处理是一种提高计算能力的有效手段.从前,并行处理要采用昂贵的专用计算机,随着个人计算机及网络成本下降,现已广泛用分布式网络计算机系统进行并行处理。在分布网络计算机系统中,采用消息传递方法实现进程间的通讯。当前流行基于消息传递的并行编程环境是MPI(Message Passing Interface)。 关键词:消息传递;消息传递接口;并行编程; Abstract Because of the development of technology, the new generation of computer should be better than the former ones in the power and speed of computing. But the people's demand of high performance of computing is increasing too. In addition to enhancing the computing power of the processor, parallel processing is also an efficient way to enhance the power of computing. In the past, the parallel processing can only run on the expensive and special computers. As the cost of personal computers and networks decreased, and now, it is popular to process the parallel processing on the distributed network computing systems. In the distributed network computing systems, message passing is used for the communication between processes. MPI (Message Passing Interface) are common development environments of parallel processing based on message passing. Keyword:Message passing; Message passing interface; Parallel programming;

win7 Visual C++破解安装步骤

彻底解决兼容问题:Windows 7下载安装 Visual C++ 6.0(VC6) 全程图解 兼容, VC6, Windows7, Win7 网上成千上万的诸如“有没有Win7兼容的VC6的下载”、“Win7下Visual C++ 6.0不兼容问题” 之类的问题,多数意思是VC6和Win7不兼容,而现在不少学校或是考试用的还是Visual Studio套件,新的Win7或Vista系统下要安装怎么办? 说实话我也一直没有试过,所以也想当然的认为Win7下就不能安装VC6,压根就100%不兼容?一直使用高版本的VS(如VS2008和现在用的VS2010)的我今天亲身在Win7下安装一次试试。 为了说明问题,我这里下载了一个简体中文版的VC6.0:Visual C++ 6.0 简体中文企业版集成SP6完美版(文件夹中解压后就能看到) 运行setup.exe安装程序,会弹出如下的的程序兼容性助手提示框,这个是Win7在警告用户vc6存在兼容性问题:此程序存在已知的兼容性问题。如下图,选中不再显示此消息,点“运行程序”。(之后再有遇到“此程序存在已知的兼容性问题”的提示时候,也按这个做法处理!) 接着安装,进入选择安装类型这一步的时候,要注意。点“Custom”自定义安装类型:

Custom自定义安装里,点中Tools组件,更改选项:

把其中的OLE/Com Object Viewer取消,不选择: 再返回到组件选择的时候,Tools就变为灰色的勾了,因为里面我们取消了OLE/Com Object Viewer这一顶: 其他的就默认安装就可以了,要注意的上面已经都交代了,安装完成,出现安装成功的提示:

相关文档
最新文档