英特尔
® 
数学核心函数库 10.0 - 概述
打印发送电子邮件告知好友支持新闻简报RSSDigg thisdel.icio.us

LINPACK


免费评估版软件 ›

免费非商业下载 ›

购买产品 ›


概述

英特尔® 数学核心函数库(英特尔® MKL)可提供经过高度优化和广泛线程化的数学例程,专为需要极致性能的科学、工程及金融等领域的应用而设计。

英特尔® MKL 作为单独的产品提供,并配套有英特尔® 集群工具套件 或者英特尔® 编译器专业版

产品简介  [PDF 635KB ]

英特尔® 数学核心函数库 Flash 演示


亮点
  • 全新的 10.0 版现已发布!
    有关全新特性和性能提升列表,请参见以下内容。
  • 现在已支持 Debian* 和 Ubuntu*
    点击这里获得有关支持的操作系统、编译器和处理器的完整列表。
  • 英特尔® MKL 网络研讨会
    我们将在 12 月 11 日举行一场免费的网络研讨会“将线程化数学库用于高性能计算应用 ”。快来参加研讨会,了解如何利用英特尔® MKL 的众多高级线程特性吧!免费注册。 
特性
基于英特尔® 处理器的出色性能
利用专门面向基于英特尔® 安腾®、英特尔® 至强®、英特尔® 奔腾® 4 以及英特尔® 酷睿™2 双核处理器的系统而高度优化的数学函数库,实现卓越性能。我们对全新四核英特尔® 至强® 5300 系列处理器的多线程性能优化给予了特别的关注。英特尔® MKL 的性能可与非英特尔处理器上其它任何数学软件包的性能相媲美。

多核处理器就绪

  • 基于多路系统的出色可扩充性1
    使用英特尔® MKL 内置的并行处理机制在多路系统(包括最新双核和四核系统)上自动获取出色的可扩充性。英特尔® MKL 3 级 BLAS、快速傅立叶转换和矢量数学均的开发环境的特定配置。
  • 线程安全
    所有的英特尔® MKL 函数均具有线程安全性。此外,也可使用非线程化的英特尔® MKL 系列版本。

自动运行时处理器检测
执行运行时检查,以执行针对特定处理器优化的代码,从而确保您的应用无论在何种系统上执行都能实现最佳性能。

C 和 Fortran 接口支持
英特尔® MKL 与那些要求您购买多款产品才能获得 C 和 Fortran 接口的数学库不同——它将这两种接口都包含在内。

在一个封装内支持所有英特尔® 处理器
如果使用其它数学库,您需要购买多款产品来支持英特尔® 安腾® 2、英特尔® 至强® 以及英特尔® 奔腾® 4 处理器。而英特尔® MKL 在一个单独的、经济的封装中即可支持所有的这些处理器。

无需支付版税的发行权利
您可随软件无限量再发行运行时库。

用户论坛
在英特尔工程师主持的英特尔® MKL 技术论坛 上与其他用户分享经验。

英特尔® 卓越支持
购买英特尔® MKL 的用户均可获得一年的世界级技术支持。在这段时间内,您可以免费下载产品的升级包,包括发行的主要版本。如欲了解更多信息,请访问英特尔注册中心 

功能:
线性代数 - BLAS 和 LAPACK
在英特尔处理器中部署经过高度优化的 BLAS 和 LAPACK 例程,它们可提供显著的性能改进,远远超出其它实施所能达到的程度。英特尔® MKL 10.0 与全新 LAPACK 3.1 版本相兼容。

线性代数 - ScaLAPACK
ScaLAPACK 的英特尔® MKL 实施可提供显著的性能改进,远远超出标准 NETLIB 实施所能达到的程度。

线性代数 - 稀疏矩阵解算器
利用 PARDISO 直接稀疏矩阵解算器解算大型的稀疏线性方程组,该解算器获得了巴塞尔大学的授权,是一款易于使用、具备线程安全性、高性能的内存高效型软件库。英特尔® MKL 还包含共轭梯度解算器和 FGMRES 迭代稀疏矩阵解算器。

快速傅立叶变换 (FFT)
充分利用我们带有易于使用的新型 C/Fortran 接口的多维 FFT 子程序(从 1 维至 7 维)。英特尔® MKL 支持采用相同 API 的分布式内存集群,支持您将工作负载轻松地分布到大量处理器上,从而实现大幅的性能提升。此外,英特尔® MKL 还提供了一系列 C 语言例程(“wrapper”),这些例程可模拟 FFTW 2.x 和 3.0 接口,从而支持当前的 FFTW 用户将英特尔® MKL 集成到现有应用中。

向量数学库
借助计算密集型核心数学函数(幂函数、三角函数、指数函数、双曲函数、对数函数等)的矢量实施显著提升应用速度。

矢量随机数生成器
利用我们的矢量随机数生成器加速模拟,从而实现远远高于标量随机数生成器的系统性能提升。

LINPACK 基准
英特尔通过免费提供 LINPACK 基准程序包,来帮您在基于英特尔架构的系统上获得最佳的性能指标评测结果。

返回页首

本版本新增内容
在本版英特尔® 数学核心函数库(英特尔® MKL)中,我们重点关注三个主要目标。第一个目标(也是我们一直以来的首要目标)就是为最新的英特尔® 处理器(四核英特尔® 至强® 5300 系列处理器及其“近亲”双核英特尔® 至强® 5100 系列处理器)提供优化的多线程处理性能。其次,我们重新设计了 英特尔® MKL 的架构,采用了一种全新的“分层式”架构以更好地支持用户的各种使用模式。最后,我们合并了标准版和集群版的英特尔® MKL,因此我们现在拥有了一个综合性的软件包。

针对全新四核英特尔® 至强® 5300 系列处理器的优化
如欲了解更多信息,请参见下文的“10.0 版本的性能提升”部分。

全新“分层式”架构
在 10.0 版的英特尔® MKL 中,我们将产品架构重新设计成提供多个层,从而使基本英特尔® MKL 软件包能够在一个软件包中支持多个接口、编译器和处理器的配置。许多其它函数库厂商都有一些必须根据您开发环境的特定配置,来查找、下载、安装和测试的特定版本。全新的英特尔® MKL 架构旨在针对我们不同用户的独特需求提供最大限度的支持,同时尽可能地减少获取和利用英特尔® MKL 的高性能所需的工作。如欲了解更多信息,请参阅英特尔 MKL 用户指南中的“使用英特尔® MKL 并行技术”部分。
  • 线程层
    所有英特尔® MKL 线程处理都被隔离到这一层。请链接到与您开发环境相匹配的该层版本,并确保英特尔® MKL 的线程处理与您应用中的线程没有兼容性问题。提供与该层的 Microsoft、GCC 和英特尔编译器线程处理独立版的完全兼容性,这些版本符合不同编译器(英特尔、MSFT、GCC)的要求,因此无论您的整体应用当前正使用何种开发环境,英特尔® MKL 都能与该环境中应用的线程处理机制完全兼容。- 英特尔® MKL 的系列版本,此外还提供了一种没有线程处理的线程处理层版本。如果您选择不在英特尔® MKL 中使用线程处理,便可确保英特尔® MKL 不会与您的应用发生冲突。
  • 接口层
    该层可支持 LP64、ILP64 接口,英特尔® MKL 的基本程序包中现已包含了一个 ILP64(64 位整数数据)接口(无需单独下载)。新的分层模式通过稍微增加产品包的大小便实现了这一点。——针对不同的编译器参数返回值惯例(英特尔、GCC、MSFT)提供了单独的层——支持 Cray 样式的命名惯例
  • 计算层
    英特尔® MKL 的核心。执行运行时检查,以执行针对特定处理器优化的代码。用户可以构建定制共享对象,以便仅将所需的特定代码包含在内,从而缩减该层的大小(如果存在大小问题)。

PARDISO 直接稀疏矩阵解算器
  • 新增对核外内存的支持

稀疏矩阵 BLAS
  • 基于稀疏矩阵 0 的索引
  • 添加了单精度支持
  • 级别 3 稀疏矩阵 BLAS 三角形解算器实现了线程处理。

迭代解算器预解算子
  • 适用于英特尔® MKL RCI 迭代解算器的 ILUT 加速器/预解算子

矢量数学函数
  • 新增 Mul、Conj、MulbyConj、CIS、Abs 函数。
  • 新增的“增强性能”模式(EP 模式)可用于数学函数准确性不会影响参数准确性的应用中(例如,Monte Carlo 模拟和媒体应用)
  • 所有 VML 函数都已实现了线程化

用户指南
  • 我们已对《英特尔® MKL 用户指南》进行了极大改进。该指南是使用英特尔® MKL 不可或缺的工具。请访问文档页面下载或在线查看该指南。

10.0 版中的性能提升
该函数库在各个方面都进行了性能优化。以下是测量得到的一些具体的性能提升。在“性能提升”页面上列有以前版本的英特尔® MKL 性能提升情况。每个产品领域的页面上都显示有性能图表((BLAS/LAPACK、FFT、VML 等)。

BLAS

  • DGEMM 的线程工作得到改善,实现了小型和中型的尺寸——产品轮廓尺寸缩减 10%,面积尺寸缩减 80%
  • DGEMM/SGEMM 大面积尺寸和大产品轮廓尺寸在运行 1 条线程时缩减了 4-5%,在运行 8 条线程时缩减了 10-15%。
  • DTRSM、DTRMM 和 DSYRK 性能提升了 5-30%。
  • 其它级别 3 实函数的大尺寸缩减了 2-4%。

LAPACK

  • 多个线性方程解算器(?spsv/?hpsv/?ppsv、?pbsv/?gbsv、?gtsv/?ptsv、?sysv/?hesv)的性能都得到了极大的提升。带状和压缩存储格式以及多右侧项情况的速度提升了高达 100 倍。
  • 所有对称 eigenSolver(?syev/?syev、?syevd/?heevd、?syevx/?heevx、?syevr/?heevr)的性能都得到了极大的提升,因为三对角线例程(?sytrd/?hetrd)的速度提升了高达 4 倍。
  • 所有压缩存储中的对称 EigenSolver(?spev/?hpev、?spevd/?hpevd、?spevx/?hpevx)都实现了极大的性能提升,因为压缩存储中的三对角线例程((?sptrd/?hptrd)的速度实现了高大 3 倍的提升。
  • 一些应用正交矩阵/单一变换的例程(?ormqr/?unmqr、?ormrq/?unmrq、?ormql/?unmql、?ormlq/?unmlq)实现了高达 2 倍的速度提升。

FFT

  • 2 次幂尺寸的复数 1 维 FFT 性能在运行 1 条线程时实现了高达 1.8 倍的性能提升。
  • 在采用了英特尔® 64 位内存扩展技术并以 64 位模式运行的系统上
  • 在英特尔® 安腾® 处理器中,运行 4 条线程时,大于 2^22 的单精度 1 维复数反向 FFT 速度提升高达 2 倍;运行 8 条线程时,速度提升高达 2.4 倍。

VML/VSL

  • VSL 函数的性能在非英特尔处理器上的性能平均提升了大约 2 倍
  • VML vdExp、vdSin 和 vdCos 函数的性能在非英特尔处理器上的性能平均提升了 18%
  • VSL 函数在 32 位英特尔® 处理器架构和 Intel® 64 架构上的性能平均提升了 7%

兼容性
操作系统

英特尔® MKL 10.0 支持 Linux*、Windows* 和 Mac OS X*。Linux 的各种版本包括:Red Hat*、Suse*、Debian*、Ubuntu*、Asianux* 以及其它 Linux Standard Base 3.1 版本。如欲了解完整列表,请参阅系统要求页面。


开发环境

英特尔® MKL 非常易于使用,并且可轻松集成到主流的开发工具与环境中,如 Microsoft Visual Studio*、Xcode*、Eclipse* 以及 GNU 编译器集 (GCC)。


处理器

英特尔® MKL 10.0 支持以下英特尔处理器家族:

  • 英特尔® 安腾® 处理器家族
  • 英特尔® 至强® 处理器家族
  • 英特尔® 酷睿™ 处理器家族
  • 英特尔® 奔腾® 处理器家族
  • AMD Opteron* 和 Athlon* 处理器家族

如欲了解完整列表,请参阅系统要求页面。

返回页首

技术支持
购买英特尔® 软件开发产品的所有用户均可获得一年的支持服务,在此期间他们可以访问英特尔卓越支持 在此期间他们可以访问英特尔卓越支持及所有产品更新信息。“英特尔® 卓越支持”支持您在线访问技术说明、应用说明和文档。安装产品后进行注册即可获得支持和产品更新信息。

返回页首

1性能测试和等级评定均使用特定的计算机系统和/或组件进行测量,这些测试反映了英特尔产品的大致性能。系统设计或配置的任何不同均可能影响实际性能。购买者应进行多方咨询,以评估他们考虑购买的系统或组件的性能。获取有关英特尔产品的性能测试和性能的更多信息



英特尔® 软件   
英特尔® 软件网络