图像数据做并行规约时,如何确定共享内存和网格的大小

做并行规约时,如何确定共享内存和网格的大小

  • 1、为什么要确定共享内存和网格大小
  • 2、共享内存大小定义
  • 3、网格大小

注:1、这里记录使用笔记,不对cuda的名词做解释,没有详细数学原理和代码。
2、环境:cuda8.0,vs2013,GTX1650

3、理解错误请指出来

1、为什么要确定共享内存和网格大小

做并行规约时,可以使用共享内存和全局内存,如果使用共享内存,写代码之前,有两件事情需要确定一下,一是共享内存要多大,另一个是网格要多大。
在使用共享内存时,需要将全部的数据拷贝到共享内存中,才能进行并行规约,否则求出的结果只是部分数据的结果。

2、共享内存大小定义

个人理解,共享内存一般定义为一个块的大小。1650显卡,一个块有1024个线程,这里假设我们的块大小为32 * 32=1024个线程。
如果图像的大小为512 * 1024,需要512个block,定义块的大小为512 * 1 * 1。
通过运行安装例程,可直接查看设备的情况
进入到安装路径
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\1_Utilities\deviceQuery
运行工程
在这里插入图片描述
每个块中共享内存最大为49152个字节,如果数据为float,4*1024=4096,符合。

tid=blockDim.xthreadIdx.y+threadIdx.y,块内ID计算
bid=blockDim.x
blockDim.y*blockIdx.x+tid,全局ID计算
每一个块都会有一个共享内存副本,使用全局ID,将数据赋值到整个网格的共享内存中,每个块内的线程共享此块内的数据(整幅图的部分数据)
sdata[tid]=img[bid]

3、网格大小

我们的块数*块的大小应该大于图像的大小,这样在规约的时候,才能保证整幅图所有的像素值都被赋值到共享内存中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/566833.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

密码学 | Random Oracle 随机预言机

​ 🥑原文:究竟什么才是随机预言机呢? - 玄星的回答 🥑答主指出: 英文维基明明对 随机预言机 给出了两个完全不同的理解,但这两个理解之间的连接词却是 “Stated differently”,即 “换句话说…

STM32通过ESP8266(MQTT)连接新版ONENET(2024/4/23)(保姆级教程)附运行结果

⏩ 大家好哇!我是小光,想要成为系统架构师的嵌入式爱好者。 ⏩在各种嵌入式系统中我们经常会使用上位机去做显示,本文对STM32通过ESP8266连接最新版的ONENET做一个详细教程。 ⏩感谢你的阅读,不对的地方欢迎指正。 STM32通过ESP82…

【图说】VMware Ubuntu22.04 详细安装教程

前言 无论是从事 Linux 开发工作,还是希望电脑运行双系统,VMware 虚拟机都是我们日常工作不可或缺的工具。本章将会重点介绍 VMware 安装流程,以及在 VMware 上如何运行、使用 Ubuntu22.04 系统。 一、VMware 下载安装 1.1 VMware 官网下载…

如何查看西门子触摸屏的镜像版本?

如何查看西门子触摸屏的镜像版本? 当软件组态的设备版本和实际设备镜像之间版本不同时,那么在传输项目时就会出现兼容性冲突的提示。 镜像版本说明: 如何调整镜像版本(升级或降级)? 为了使用新功能以及提高面板的稳定性、可靠性和可用性,建议使用新的镜像版本。 一、 通…

目标检测算法是指什么?

一、目标检测算法是指什么? 目标检测算法是计算机视觉领域的一个重要分支,它旨在识别和定位图像中的目标对象。以下是目标检测算法的相关内容: 目标检测的核心问题:目标检测需要解决的两个核心问题是“目标是什么”和“目标在哪里…

【计算机网络】(三)物理层 - 通信基础

文章目录 【计算机网络】(三)物理层 - 通信基础前言3.1 物理层的基本概念3.2 数据通信的基础知识3.2.1 数据、信号、码元3.2.2 信源、信宿、信道3.2.3 编码、调制3.2.3.1 基带调制(编码)3.2.3.2 带通调制(调制&#xf…

想搭建跨境电商网站?掌握这些源码关键点,助您轻松上线

随着全球化的发展和电子商务的兴盛,跨境电商已成为企业拓展国际市场的主要方式之一。然而,想要搭建一个成功的跨境电商网站并非易事,其中关键之一就是掌握跨境电商网站源码的要点。在本文中,我将为您深入探讨如何选择、优化和维护…

一个java项目中,如何使用sse协议,构造一个chatgpt的流式对话接口

前言 如何注册chatGPT,怎么和它交互,本文就不讲了;因为网上教程一大堆,而且你要使用的话,通常会再包一个算法服务,用来做一些数据训练和过滤处理之类的,业务服务基本不会直接与原生chatGPT交互。…

mysql-connector-java和spring-boot-starter-jdbc和mybatis-spring-boot-start

mysql-connector-java和spring-boot-starter-jdbc和mybatis-spring-boot-start JDBC是什么意思? JDBC是使用java语言操作mysql数据库的规范,java语言必须按照这个规范写才可以操作mysql数据库。 mysql-connector-java 在最开始的时候 程序中是不允许…

省级客运、货运量及周转量数据(1990-2022年)

1、数据介绍 客运量和货运量是衡量交通运输行业发展状况的重要指标,可以反映一个地区或国家的经济发展水平和人民生活水平。而周转量则是反映运输行业效率的指标,即货物或旅客被运输的总距离。 省级客运、货运量及周转量是衡量一个地区交通运输行业发展…

第⑮讲:Ceph集群管理与监控操作指南

文章目录 1.查看集群的状态信息2.动态的查看集群的状态信息3.查看集群的利用率4.查看OSD的资源利用率5.查看OSD的列表6.查看各组件的状态7.查看集群的仲裁信息8.查看/修改集群组件sock的配置参数 1.查看集群的状态信息 通过集群状态信息可以看到集群的健康状态、各个组件的运行…

uniapp app权限说明弹框2024.4.23更新

华为上架被拒绝 用uni-app开发的app,上架华为被拒,问题如下: 您的应用在运行时,未见向用户告知权限申请的目的,向用户索取(电话、相机、存储)等权限,不符合华为应用市场审核标准。…

Bingbong的回文路径

Here 利用回文串,从左往右与从右往左的hash值相同来判断从左往右,例:从右往左,例:由于在树上,考虑建两颗树,一颗根为最高位(up),一棵根为最低位(…

0 transformers入门,HuggingFace!

目录 1 了解 2 文本分类 1 了解 1 依赖安装 !pip install transformers -i https://pypi.tuna.tsinghua.edu.cn/simple some-package 2 了解transformers 能做什么 from transformers.pipelines import SUPPORTED_TASKS SUPPORTED_TASKS.items()2 文本分类 我没外网所以…

微信小程序 讯飞录音 点击按钮录音内容转文字

<page-meta page-style"{{ showPolish ? overflow: hidden; : }}" /> <view class"wrap"> <view class"header-tab" style"justify-content: {{typeList.length > 2 ? start : center}}"><view class&quo…

promise笔记

1.介绍 之前的异步编程都是回调函数&#xff08;数据库操作、ajax、定时器、fs读取文件 &#xff09; promise是es6异步编程新的解决方案&#xff0c;是一个构造函数 优点&#xff1a;支持链式调用&#xff0c;可以解决回调地狱&#xff0c;可以指定回调函数 2.使用 functio…

UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd7

安装mamba时报错 检查报错原因&#xff1a; file -i ~/.bashrc file -i ~/.profile发现bashrc的编码不正确 对编码格式进行修改 iconv -f ISO-8859-1 -t UTF-8 ~/.bashrc > ~/.bashrc.utf8 mv ~/.bashrc.utf8 ~/.bashrc cp ~/.bashrc ~/.bashrc.backup执行完指令之后再安…

SAM5916B 法国追梦DREAM 音频DSP芯片

法国追梦/DERAM SAM5504/5704/5716/5808音频DSP芯片,开发板&#xff0c;方案 可用于电子鼓、电子琴、电吉他、效果器、均衡器、啸叫抑制器等电声产品领域 一、全系列芯片&#xff1a; SAM2634 SAM2695 SAM5504B SAM5704B SAM5708B SAM5808B SAM5716B SAM5916B... 二、原厂开发套…

在matplotlib中控制colorbar的长度

在matplotlib中控制colorbar的长度 使用matplotlib绘制带颜色的箭头图&#xff0c;有时想直接把颜色条拿来当比例尺条&#xff0c;就需要控制颜色条的长度。 1. pyplot.colorbar()参数说明 pyplot.colorbar(mappable, ax, cax, **kwargs) mappable是一个ScalarMappble类型的…

【黑马头条】-day12项目部署和发布-jenkins

文章目录 1 持续集成2 软件开发模式2.1 瀑布模式2.2 敏捷开发2.2.1 迭代开发2.2.2 增量开发 3 Jenkins3.1 Jenkins安装3.1.1 导入镜像3.1.2 配置3.1.3 初始化设置 3.2 插件安装3.3 服务器环境准备3.3.1 Docker安装配置3.3.2 Git安装配置3.3.3 Maven安装配置 3.4 Jenkins工具配置…