当前位置: 首页 > news >正文

Visual Studio 2022下配置 OpenMP 多线程编程环境与运行

目录

一创建项目时选择“创建新项目 -> 空项目 -> 下一步 -> 创建”

二右键“源文件 -> 添加 -> 新建项 -> 添加”

三配置 

       1. 测试程序:

        最开始的时候错误很多:

        2.将 “ include "stdafx.h" ” 删掉,添加 “ include ”

        结果: 但这时还不能正常并行处理程序

        3.右击 “项目” -> 点击属性,按图在“所有配置”和“所有平台”下,找到OpenMP按钮,更改为“是”,点击确定。

四重新运行,在步骤三全部完成后重新点击“ 开始执行(不调试) ”,此时程序成功实现并行处理。


一创建项目时选择“创建新项目 -> 空项目 -> 下一步 -> 创建”

二右键“源文件 -> 添加 -> 新建项 -> 添加”

三配置 

       1. 测试程序:

#include "stdafx.h"
#include "omp.h"
int _tmain(int argc, _TCHAR* argv[]) {
    printf("Hello from serial.\n");
    printf("Thread number = %d\n", omp_get_thread_num());  //串行执行
#pragma omp parallel num_threads(4) //开始并行执行
    {
        printf("Hello from parallel. Thread number = %d\n", omp_get_thread_num());
    }
    printf("Hello from serial again.\n");
    return 0;
}

        最开始的时候错误很多:

        2.将 “ include "stdafx.h" ” 删掉,添加 “ include <tchar.h> ”和“#include<stdio.h>”

#include<tchar.h>

#include<stdio.h>

        结果: 但这时还不能正常并行处理程序

 更改后代码:

//#include "stdafx.h"
#include<tchar.h>
#include<stdio.h>
#include <omp.h>
int _tmain(int argc, _TCHAR* argv[]) {printf("Hello from serial.\n");printf("Thread number = %d\n", omp_get_thread_num());  //串行执行
#pragma omp parallel num_threads(4) //开始并行执行{printf("Hello from parallel. Thread number = %d\n", omp_get_thread_num());}printf("Hello from serial again.\n");return 0;
}

        3.右击 “项目” -> 点击属性,按图在“所有配置”和“所有平台”下,找到OpenMP按钮,更改为“是”,点击确定。

四重新运行,在步骤三全部完成后重新点击“ 开始执行(不调试) ”,此时程序成功实现并行处理。

相关文章:

  • java.lang.ClassNotFoundException: kotlin.jvm.internal.Intrinsics
  • 计算机网络相关
  • 实战打靶集锦-027-SoSimple1
  • 【Redis】Redis常见原理和数据结构
  • AI开源概览及工具使用
  • PHP全新美化广告横幅在线制作源码
  • Qt-QDialog非模态置于窗口之上且操作主窗口不隐藏dialog的方法
  • npm run dev命令的执行顺序和原理
  • 【WEEK4】 【DAY1】整合SSM框架之基本环境搭建—第二部分【中文版】
  • 如何实现跨标签页通讯
  • Windows10无盘母盘制作-以云更新为例
  • Request failed with status code 504,Gateway time out
  • Spring Data访问Elasticsearch----CDI集成
  • 测试平台——前端框架
  • Springboot整合Mybatis的详细案例+图解+分析(一)
  • [译] React v16.8: 含有Hooks的版本
  • electron原来这么简单----打包你的react、VUE桌面应用程序
  • Flex布局到底解决了什么问题
  • Tornado学习笔记(1)
  • 道格拉斯-普克 抽稀算法 附javascript实现
  • 第三十一到第三十三天:我是精明的小卖家(一)
  • 对话:中国为什么有前途/ 写给中国的经济学
  • 关于Java中分层中遇到的一些问题
  • 简单基于spring的redis配置(单机和集群模式)
  • 让你的分享飞起来——极光推出社会化分享组件
  • 世界编程语言排行榜2008年06月(ActionScript 挺进20强)
  • 收藏好这篇,别再只说“数据劫持”了
  • 思维导图—你不知道的JavaScript中卷
  • 学习笔记TF060:图像语音结合,看图说话
  • 云栖大讲堂Java基础入门(三)- 阿里巴巴Java开发手册介绍
  • 走向全栈之MongoDB的使用
  • 阿里云ACE认证学习知识点梳理
  • 阿里云重庆大学大数据训练营落地分享
  • (12)Linux 常见的三种进程状态
  • (4)(4.6) Triducer
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (附源码)ssm智慧社区管理系统 毕业设计 101635
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (六)c52学习之旅-独立按键
  • (收藏)Git和Repo扫盲——如何取得Android源代码
  • (学习日记)2024.04.04:UCOSIII第三十二节:计数信号量实验
  • (轉貼) VS2005 快捷键 (初級) (.NET) (Visual Studio)
  • .NET 指南:抽象化实现的基类
  • .NET/C# 使用反射调用含 ref 或 out 参数的方法
  • .net企业级架构实战之7——Spring.net整合Asp.net mvc
  • .NET设计模式(11):组合模式(Composite Pattern)
  • .net与java建立WebService再互相调用
  • @autowired注解作用_Spring Boot进阶教程——注解大全(建议收藏!)
  • @GetMapping和@RequestMapping的区别
  • @软考考生,这份软考高分攻略你须知道
  • [ HTML + CSS + Javascript ] 复盘尝试制作 2048 小游戏时遇到的问题
  • [ vulhub漏洞复现篇 ] Celery <4.0 Redis未授权访问+Pickle反序列化利用
  • [.NET]桃源网络硬盘 v7.4
  • [04] Android逐帧动画(一)
  • [20190401]关于semtimedop函数调用.txt