首页 > 其他分享 >一个nvcc编译的小问题

一个nvcc编译的小问题

时间:2024-09-20 22:12:55浏览次数:10  
标签:__ nvcc idx int ValueType 问题 编译 col

下面的cuda代码为什么指定compute capability = 8.0 后在A100上跑结果不对?

nvcc a.cu # 正确
nvcc a.cu -gencode arch=compute_80,code=sm_80 # 结果不正确
// a.cu
#include <cuda_runtime.h>
#include <stdio.h>
#include <stdlib.h>

using ValueType = float;

__constant__ ValueType col_idx[10];

__global__ void aa_kernel(ValueType *x) {
    int idx = threadIdx.x;
    printf("idx = %d\n", idx);
    if(idx < 10)
        x[idx] = col_idx[idx];
}

int main() {
  ValueType *col_h = new ValueType[10];
  col_h[0] = 1.0;
  for(int i=1; i<10; i++) col_h[i] = 2*col_h[i-1];

  ValueType * x_d;
  cudaError_t err = cudaSuccess;
  err = cudaMalloc(&x_d, 32*sizeof(ValueType));
  if(err != cudaSuccess) printf("error\n");
  cudaMemcpyToSymbol(col_idx, col_h, 10*sizeof(ValueType));
  cudaStream_t stream;
  cudaStreamCreate(&stream);

  aa_kernel<<<1, 32, 0, stream>>>(x_d);
  cudaDeviceSynchronize();

  ValueType x[32] = {0};

  cudaMemcpy(x, x_d, 32*sizeof(ValueType), cudaMemcpyDeviceToHost);
  for(int i=0; i<12; i++) printf("%f\n", x[i]);
  return 0;
}

标签:__,nvcc,idx,int,ValueType,问题,编译,col
From: https://www.cnblogs.com/zwlwf/p/18423384

相关文章

  • Nginx反向代理出现502 Bad Gateway问题的解决方案
    ......
  • 0x80070780解决问题
    概要当我们对Windows内的文件进行复制、删除、备份或者编辑时,出现“系统无法访问该文件”的提示,错误代码为0X80070780,应该如何解决呢?本文将针对此问题提供一些解决方法。此外,若出现了数据丢失的情况,也可参考本文介绍的数据恢复方法。目录CONTENTS一、关于Windows错误代码0X8007......
  • 亿级数据表多线程update锁表问题
    目录1、问题描述2、原因分析3、问题解决1、问题描述在pg数据库,某个业务,有一张数据表test,数据表结果如下:test(sjjbh,wlbid,gzmb,sfzg,zgsj,cjsj,xx...),这个表没有主键,会有很多重复数据。test表需要根据另外表(是多张表),动态更新sfzg字段, 加入另外表结构如下sjj_ckb1(......
  • 记录一次fs配置导致串线的问题
     概述freeswitch是一款简单好用的VOIP开源软交换平台。fs在实际的使用过程中也会经常碰到莫名其妙的问题,大部分都是配置问题。环境CentOS7.9freeswitch1.10.7docker26.1.1问题描述组网方案如下。其中的fs-reg是注册服务器,fs1和fs2是业务媒体服务器,B1B2是俩个B路中......
  • vue解决history路由模式刷新重定向问题(apache服务器)
    问题:vue文件打包后部署到apache服务器下,vue在history路由模式时,访问www.xx.com/about路径时刷新会导致notfount页面,这是因为www.xx.com/about目录不存在于服务器。解决:apche服务器重写路由到www.xx.com/下。然后刷新可正常访问到about页面apache开启路由重写1、配置文件......
  • docx4j转换pdf样式问题~Java Libreoffice转换pdf
    背景本篇文章主要是介绍我在使用docx4j过程中遇到的问题,并最终如何通过Libreoffice来实现pdf的转换。问题在使用docx4j转换pdf过程中发现word文档中表格、加粗样式无法实现,国内、国外都找了一遍也没找到解决办法,真实把人急坏了。如果有同学通过docx4j解决了下方问题的可以留言......
  • sentinle常见问题FAQ
    熔断和限流的区别上图的问题就是综合服务调用外部服务,当B服务出现工作线程出现阻塞导致大量请求排队,导致超时,进而影响了综合服务。我们从2个视角来看1.从外部服务的视角当工作线程出现阻塞是因为服务出现了超过自身能够处理的流量导致阻塞这个时候往往我们就需要限流。阻塞又......
  • 基于Q-learning算法和ε-greedy策略解决随机生成的方形迷宫问题(Matlab代码实现)
     ......
  • 编译安装nginx
    Nginx官方定义了Mainline、Stable、Legacy三种版本Mainlineversion(主线版本)该版本包含最新的功能和bug修复,被视为开发版,即正在活跃开发中的版本。其版本号通常为单数,这个版本的更新较快,可能会引入新的功能和修复,但也可能存在尚未解决的bug。Stableversion(稳定版本)最新稳......
  • 【Swagger】Swagger入门和一些常见的问题
    什么是Swaggerswagger(丝袜哥)是当下比较流行的实时接口文档生成工具。前后端分离后,前后端交流比较重要的东西,就是接口文档。离线文档,最大的弊端就是接口程序发生变动的时候,需要回过头来维护上面的内容,确实比较玛法。实时接口文档可以根据代码来自动生成相应的接口文档。根据代......