中文
注册

概述

本文指导用户如何将Intel MKL或一些常用的数学库迁移至鲲鹏数学库以发挥鲲鹏平台更优性能。

广义上的数学库是指提供高性能标量、矢量计算的数学函数接口库,常见的数学库有英特尔数学内核库,以下简称Intel MKL(Intel Math Kernel Library)及一些开源数学库。鲲鹏数学库,以下简称 KML (Kunpeng Math Library)提供了基于鲲鹏平台优化的高性能数学函数。当用户将使用数学库函数的应用程序迁移到鲲鹏计算平台时,由于不同计算平台或不同数学库的函数定义差别,需要对程序重新适配开发。针对该问题,KML提供了鲲鹏数学库迁移指南。

本指南包含将Intel MKL中的一些数学库迁移至KML的步骤(请参见如何识别使用了Intel MKL),包括MKL的VML至 KML_VML ,MKL的BLAS至 KML_BLAS 等,同时也包含一些常用数学库迁移至KML的步骤(请参见可替换性)。通过迁移,用户可以在鲲鹏计算平台获得比一般开源数学库更优的计算性能。

迁移前后的数学库映射关系如表1所示。

表1 迁移前后的数学库映射关系

被迁移数学库

KML

名称

头文件

名称

头文件

icc-imf

math.h或mathimf.h

KML_MATH

km.h

MKL-VML

mkl.h或mkl_vml.h

KML_VML

kvml.h

MKL-BLAS

mkl.h或mkl_blas.h

KML_BLAS

kblas.h

MKL-SPBLAS

mkl.h或mkl_spblas.h

KML_SPBLAS

kspblas.h

MKL-FFT

mkl.h或mkl_dfti.h

KML_FFT

kfft.h

MKL-LAPACK

mkl.h或mkl_lapack.h

KML_LAPACK

klapack.h,kservice.h

MKL-SOLVER

mkl.h或mkl_rci.h

KML_SOLVER (迭代法)

kml_iss.h

MKL-PARDISO或PARDISO-cluster

mkl_pardiso.h或mkl_cluster_sparse_solver.h

KML_SOLVER(直接法)

kml_scadss.h

PETSc

petscksp.h

KML_SOLVER(迭代法)

kml_iss.h/kml_scaiss.h

MUMPs

dmumps_c.h,smumps_c.h,cmumps_c.h或zmumps_c.h

KML_SOLVER(直接法)

kml_scadss.h

OpenBLAS

cblas.h

KML_BLAS

kblas.h

FFTW

fftw3.h

KML_FFT

kfft.h

MKL-SCALAPACK

mkl.h或mkl_scalapack.h

KML_SCALAPACK

kscalapack.h,klapack.h,kservice.h

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词