cuda 编 程(五) c++版本demo
C++ 版本 Demo CUDA
2023-09-14 09:15:52 时间
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <iostream>
using namespace std;
const double EPSILON = 1.0e-15;
const double a = 1.23;
const double b = 2.34;
const double c = 3.57;
void add(const double *x, const double *y, double *z, const int N);
void check(const double *z, const int N);
int main(void)
{
const int N = 100000000;
const int M = sizeof(double) * N;
double *x = (double*) malloc(M);
double *y = (double*) malloc(M);
double *z = (double*) malloc(M);
for (int n = 0; n < N; ++n)
{
x[n] = a;
y[n] = b;
}
add(x, y, z, N);
check(z, N);
/***
for (int n = 0; n < N; ++n)
{
cout<<z[n]<<endl;
}
***/
free(x);
free(y);
free(z);
return 0;
}
void add(const double *x, const double *y, double *z, const int N)
{
for (int n = 0; n < N; ++n)
{
z[n] = x[n] + y[n];
}
}
void check(const double *z, const int N)
{
bool has_error = false;
for (int n = 0; n < N; ++n)
{
if (fabs(z[n] - c) > EPSILON)
{
has_error = true;
}
}
printf("%s\n", has_error ? "Has errors" : "No errors");
}
g++ add.cpp -o addo
./addo
相关文章
- C++类构造函数初始化列表
- opencv中,c和c++版本区别体验
- atitit.D&D drag&drop拖拽文件到界面功能 html5 web 跟个java swing c#.net c++ 的总结
- C++设计模式:装饰器模式
- Qt/C++ 加入轻便性能收集器
- C++ set总结
- 《C++ Primer》 第四版 第7章 函数
- C++学习心得与c语言到c++衔接技巧
- 解答私信@被c++折磨头秃的花季美少女 //C++ 利用指针数组输入10个单词,编写函数对10个单词进行排序并输出,要求判断是否有相同的单词,如果有相同的单词在输出时该单词只输出一次。
- 解答私信@被c++折磨头秃的花季美少女 //C++ 编写一个进阶版的进制转换程序,运行功能如下:请选择要输入的数字的进制(2、8、10、16):请输入该数字:请选择要转换成的进制(2、8。。。
- Microsoft Visual C++ Runtime Library Runtime Error的解决的方法
- yolov4视频目标检测:使用C++版本联合CUDA11.2的OpenCV 5.x编译生成opencv-python==5.x进行推理
- AI模型设计:安装C++版本的libtensorflow(1.10~2.6.0)以及TFC++ demo源码的实现
- OpenCV5(C++)版本docker容器服务器配置分享
- C++结构体可放在函数内部和外部
- 使用现代C++编写的读写json的库
- VC++ socket编程中设置socket选项的ioctlsocket、setsockopt和WSAIoctl函数的使用(附源码)
- PAT 1128 C++版
- C/C++学习笔记 各版本主要新增内容一览
- OpenCV5(C++)版本docker容器服务器配置分享
- 2021年完美安装配置YOLO教程:成功在Windows10下安装YOLO开发环境并成功完成目标检测测试「基于C/C++版本」
- C++使用技巧(九):ubuntu环境下Eigen线性代数库的简单使用(C++版本的numpy库))