自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Morizen的博客

一个特别懒的bo主

  • 博客(12)
  • 收藏
  • 关注

原创 【基础机器学习算法原理与实现】使用感知器算法LDA、最小二乘法LSM、Fisher线性判别分析与KNN算法实现鸢尾花数据集的二分类问题

本文设计并实现了PerceptronLA、PseudoIA、LeastSM、LinearDA、KNN等五个算法类,以及DataProcessor的数据处理类。对感知器算法LDA、最小二乘法LSM的伪逆法与梯度下降法、Fisher线性判别分析与KNN算法进行了实现与分析,其中前三种算法都是对一次线性回归的求解。鸢尾花数据集中第一类鸢尾花“Setosa”和第二类“Versicolor”、第三类“Virginica”的特征分离度非常的高,而第二类“Versicolor”和第三类“Virginica”的分离度很

2022-05-11 21:48:42 2426

原创 经典同步问题最易理解的解题思路(PV操作/操作系统/408)

信号量是操作系统用来解决并发中的互斥和同步问题的一种方法,具体的原理在此不做赘述。本文将从题目出发一步步的对同步问题(生产者消费者问题,读者写者问题,哲学家进餐问题)进行理解,并将以王道上的一道例题来验证解题思路。此处仅战术pv操作的逻辑,逻辑与程序一致,可以自行对其进行转换。一、生产者消费者问题问题描述:一组生产者进程和一组消费者进程共享一个初始为空、大小为n的缓冲区,只有缓冲区没满时,生产者才能把消息放入缓冲区,否则必须等待;只有缓冲区不空时,消费者才能从中取出消息,否则必须等待。由于缓冲区是.

2022-04-30 17:36:44 3078 1

原创 Cuda官方案例分析 clock 使用时钟功能准确测量内核程序内各部分性能

在本案例中,计算方法主要为创建clock_t变量进入内核函数内部记录时钟周期数,然后将每次记录得到的数据写入device memory中传回内存,最后计算平均值输出。我将案例中最主要的计时部分列了下来方便大家进行参考。 { clock_t *dtimer = NULL; clock_t timer[NUM_BLOCKS * 2];//numblocks即为块的个数 checkCudaErrors(cudaMalloc((void **)&dtimer, s.

2021-03-01 17:35:12 348

原创 Cuda官方案例分析 asyncAPI 两种测试内核函数运行时间的方法(CPU/GPU)

1、使用Cuda提供的Event进行计时 // create cuda event handles cudaEvent_t start, stop; checkCudaErrors(cudaEventCreate(&start)); checkCudaErrors(cudaEventCreate(&stop)); // record timestamp before and after running of kernel_function

2021-03-01 16:47:42 499

原创 vs2019添加cuda文件编译显示 无法打开文件“cudart.lib”

新版cuda不再支持x86,使用x64编译即可

2021-02-24 14:36:40 2111

原创 CUDA并行程序设计 GPU硬件架构与线程 学习笔记

GPU硬件架构GPU实际上是一个SM的阵列,每个SM包含若干个SP。一个SP可以执行一个thread,但是实际上并不是所有的thread能够在同一时刻执行。Nvidia把32个threads组成一个warp,warp是调度和运行的基本单元。warp中所有threads并行的执行相同的指令。一个warp需要占用一个SM运行,多个warps需要轮流进入SM。由SM的硬件warp scheduler负责调度。目前每个warp包含32个threads(Nvida保留修改数量的权利)。所以,一个GPU上res

2021-02-23 16:53:28 820 2

原创 visual studio c++环境下应用mpi与openmp混合编程的简单程序

1 环境配置与安装 vs下的openmp只需去项目->属性->c/c++->openmp支持打开即可 而mpi的安装建议参考博文(一)MS-MPI入门及第一个程序_xinwuya_的博客-CSDN博客2 mpi与openmp混合编程混合编程首先要对两种都有一定的了解openmp是基于共享内存下的并行操作,采用openmp执行并行的程序优点在于可以不用给所有线程都给予它自己的内存空间来存储变量(但是请注意如果多个线程反复读写同一块区域会造成排队现象而大幅度的减少并行效..

2021-02-19 14:55:49 1702

原创 OpenMP基础知识与使用并行思想计算三维点阵两两之间的距离之和

1、编译器对OpenMP的支持 目前支持OpenMP的C/C++编译器主要有微软的VC和Intel的C/C++编译器。 在微软的VC8.0中,要将项目的属性对话框中“配置属性”下的“C/C++”下的“语言”页里,将“OpenMP支持”由否改为“是/(openmp)”即可。2、...

2021-02-03 14:23:24 282

原创 归并排序题目整理归并(hdu)

hdu2019数列有序 1 #include 2 using namespace std; 3 int A[101]; 4 int main() 5 { 6 int m,n; 7 void Merge(int p,int q,int r); 8 while(cin >> n >> m){ 9 if(n == 0&&m =

2017-10-25 09:36:20 1084

原创 从零开书学算法(导论)之归并排序

归并排序思想为将序列每相邻两个数字进行归并操作(merge),形成floor(n/2)个序列,排序后每个序列包含两个元素将上述序列再次归并,形成floor(n/4)个序列,每个序列包含四个元素重复步骤2,直到所有元素排序完毕。下列代码为单次归并的函数,可作为模板用于代码中。PS:其中前段为第p位到第q位,后段为第q+1位到第r位。 1 void Merge(int p,in

2017-10-24 18:46:17 222

原创 插入排序题目整理(hdu)

hdu1827 hdu1040 hdu2019

2017-10-16 20:38:34 1002

原创 从零开书学算法(导论)之插入排序

最近开始学习算法导论,用博客来记录一下学习历程和代码。//六个数的插入排序模板//INSERTION-SORT

2017-10-16 19:55:11 230

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除