oneAPI

Deliver uncompromised performance for diverse workloads across multiple architectures.

并行共轭梯度算法的开发

URL: https://github.com/Csthyx/Conjugate_Gradient

Description:

共轭梯度算法也叫共轭斜量法。从理论上讲它是属于直接法,但在实际计算过程中,由于不可避免地会出现误差,所以常作为迭代法使用。该方法的最大特点是,当方程组的阶数很高时,往往只要经过比阶数小得多的迭代次数,就能得到满足精度要求的近似解。 使用openMP共轭梯度算法的串行以及并行版本,并统计在不同数据规模以及不同的并行线程数下,共轭梯度算法完成运算所耗费的时间并比较。

Posted:

DSP-parallel computing

URL: https://github.com/IowaBattleship/TSP-Problem

Description:

我们在此次项目名为:并行化解决旅行商问题的各种算法,包括:遗传算法、粒子群算法、蚁群算法。旅行商问题是给定一系列城市和每对城市之间的距离,求解访问每一座城市一次并回到起始城市的最短回路 。此类问题属于NP难问题,无法在线性时间内解决,所以我们决定采用智能优化搜索算法,即各种仿生群体算法(遗传算法、粒子群算法、蚁群算法)来解决该问题,此类算法具有隐含并行性,对求解目标进行合理表示之后便可获得较优解,并且比较适合采用并行算法进行优化。

Posted:

矩阵分块乘法的并行实现以及缓存优化

URL: https://gitee.com/mars0417/matrix_block_multiplication

Description:

矩阵乘法的一般形式是C=A*B,使用串行计算的矩阵乘法需要三层循环,操作次数为2*M*N*K。 为了减少矩阵乘法的计算成本,本实验决定对计算结果的矩阵C进行分块,分成大小相同的若干块,这些工作块的计算分别要用到矩阵A和矩阵B的部分行和列。由gpu并行进行工作块的计算,从而达到矩阵分块乘法的并行实现,提高矩阵乘法的效率。 在将矩阵分块计算的时候,读取内存的次数并没有改变,只是利用gpu并行计算将计算时间缩短。因此设置缓存块,在每一块的运算中,将工作块按照缓存块大小分割,单次循环缓存足以计算出缓存块大小的矩阵A和矩阵B的数据,减少迭代次数,从而减少访问内存的次数,实现矩阵分块乘法的缓存优化。

Posted:

面向TSP问题的改良遗传算法(GA)

URL: https://github.com/QuietHuihui/oneAPI_TSP

Description:

高性能计算与云计算实验4以及大作业 使用oneAPI将遗传算法进行部分并行以及加速改良,提高其解决旅行商问题的效率。

Posted:

方程组求解算法的并行化探讨

URL: https://gitee.com/hulakk/parallel-computing-public

Description:

从线性代数角度求解线性方程组有一个经典方法叫做高斯消元法,该方法的基本思路是将方程组的增广矩阵通过初等行变换转换为阶梯矩阵,进而通过迭代求解出方程的解。但高斯消元法有两个严重的缺陷:主元为0时无法求解和主元太小时求解误差过大。列主元消元法是对高斯消元法的一种优化方法,先通过列交换将主元替换为绝对值较大的元素,规避了高斯消元法的以上两个缺陷。本项目着眼于将高斯消元法和优化后的列主元消元法分别用串行、并行两种方式实现,并在Intel提供的DevMesh平台上部署代码,比较运行效率,体会程序并行化的方法及意义。

Posted:

基于oneAPI平台的SpMV算法研究

URL: https://github.com/jason-designer/SpMV-using-oneAPI

Description:

稀疏矩阵与密集向量的乘法(SpMV)是一种重要的科学运算,是许多应用的性能瓶颈,因此提高SpMV的计算速度有重要意义。目前对SpMV的研究多基于GPU平台或multicore平台,对于近年来Intel逐渐成熟的oneAPI高性能计算平台的研究则较少,虽然oneAPI平台提供了SpMV的算法库,但其性能较弱。因此本项目基于oneAPI平台实现了LightSpMV算法,并为了适应oneAPI平台对其进行性能调优,调优后的算法相比于oneAPI平台提供的SpMV算法性能提高了1.97倍。算法代码已整理完毕,开箱即用。LightSpMV性能调优代码也整理完成,若后续Intel提供的硬件有变更也可以使用

Posted:

OneAPI_homework

URL: https://github.com/Xiaozaichen/OneAPI_homework

Description:

使用intel oneAPI AI Analytics Toolkit对connect-4数据集加速使用支持向量机分类,connect-4数据集是记录了棋盘各种分布,并且带有输赢和平局的标签,使用该数据集训练SVM然后进行预测。 使用intel oneAPI HPC Toolkit对高斯消去法的矩阵计算加速

Posted:

oneApi-FFT

URL: https://github.com/lss-1138/oneapi-fft

Description:

快速傅里叶变换(Fast Fourier Transformation,FFT)是一种利用计算机计算离散傅里叶变换(DFT)的高效、快速计算方法。本项目计划将FFT时间抽取算法进行MPI并行实现。

Posted: