实例介绍
MKL.NET是一个面向Intel MKL的简单跨平台.NET API,它尽可能地保持了与C开发者参考文档相近的语法。这个项目通过包装MKL的原生API,提供了一个.NET环境下的薄层封装,使得开发者可以在.NET应用程序中方便地调用MKL提供的强大数学计算功能。
MKL.NET支持多种运行时环境,包括Windows、Linux和OSX,同时提供了多个针对不同平台的预编译包,如MKL.NET.win-x64、MKL.NET.linux-x64等,以及一系列的库文件,如MKL.NET.Matrix、MKL.NET.Optimization和MKL.NET.Statistics等。
MKL.NET的设计理念是提供自由可用的Intel MKL包,重新打包以适应每个运行时环境。它是一个高性能、内存优化的矩阵代数库,通过优化矩阵表达式来进行中间计算,并重用内存,从而显著提高计算效率。
public static matrix Example(matrix ma, matrix mb, vector va, vector vb) { using matrix r = 0.5 * Matrix.Abs(1.0 - ma) * mb.T Math.PI * va.T * Vector.Sin(vb); ... }
MKL.NET还包括简单高性能的优化和根查找库,以及统计函数库,提供了求和、均值、中位数、四分位数等统计计算功能。这些丰富的功能使MKL.NET成为需要进行高性能数学计算的.NET开发者的理想选择。
【实例截图】
【核心代码】
文件清单
└── MKL.NET-8791cb30f76f930fbe85f6350fc7bc678a43f8a2
├── Directory.Build.props
├── LICENSE
├── matrix.png
├── MKL.NET
│ ├── Blas.cs
│ ├── Dfti.cs
│ ├── Feast.cs
│ ├── Lapack.cs
│ ├── MKL.cs
│ ├── MKL.NET.csproj
│ ├── Solve.cs
│ ├── Types.cs
│ ├── Vml.cs
│ └── Vsl.cs
├── MKL.NET.linux-x64
│ └── MKL.NET.linux-x64.csproj
├── MKL.NET.linux-x64.b
│ └── MKL.NET.linux-x64.b.csproj
├── MKL.NET.linux-x86
│ └── MKL.NET.linux-x86.csproj
├── MKL.NET.Matrix
│ ├── ArrayPool.cs
│ ├── DoubleMatrix.cs
│ ├── DoubleMatrixExpression.cs
│ ├── DoubleVector.cs
│ ├── DoubleVectorExpression.cs
│ ├── MKL.NET.Matrix.csproj
│ ├── SingleMatrix.cs
│ ├── SingleMatrixExpression.cs
│ ├── SingleVector.cs
│ ├── SingleVectorExpression.cs
│ └── ThrowHelper.cs
├── MKL.NET.Native
│ ├── CMakeLists.txt
│ ├── CMakeSettings.json
│ ├── common.h
│ ├── dfti.c
│ └── vsl.c
├── MKL.NET.Optimization
│ ├── MKL.NET.Optimization.csproj
│ ├── Optimize.Calculus.cs
│ ├── Optimize.Minimum.cs
│ └── Optimize.Root.cs
├── MKL.NET.osx-x64
│ └── MKL.NET.osx-x64.csproj
├── MKL.NET.sln
├── MKL.NET.Statistics
│ ├── HistogramEstimator.cs
│ ├── MKL.NET.Statistics.csproj
│ ├── MomentEstimator.cs
│ ├── QuantileEstimator.cs
│ ├── QuantilesEstimator.cs
│ ├── QuartileEstimator.cs
│ └── Stats.cs
├── MKL.NET.win-x64
│ └── MKL.NET.win-x64.csproj
├── MKL.NET.win-x86
│ └── MKL.NET.win-x86.csproj
├── MKL.NET.WrapperGenerator
│ ├── MKL.NET.WrapperGenerator.csproj
│ └── WrapperGenerator.cs
├── MKL.NET.WrapperGenerator.Tests
│ ├── GeneratorTest.cs
│ └── MKL.NET.WrapperGenerator.Tests.csproj
├── NuGet.Config
├── README.md
├── Scripts
│ ├── Download-Devel.ps1
│ ├── Package-MKL.NET.ps1
│ └── Package-Native.ps1
├── SigningKey.snk
├── Tests
│ ├── BlasTests.fs
│ ├── Check.fs
│ ├── DftiTests.fs
│ ├── LapackTests.fs
│ ├── Main.fs
│ ├── Math.fs
│ ├── MatrixTests.fs
│ ├── MKLTests.fs
│ ├── Optimize.CalculusTests.fs
│ ├── Optimize.Minimum_GlobalTests.fs
│ ├── Optimize.MinimumTests.fs
│ ├── Optimize.RootTests.fs
│ ├── PerfTests.fs
│ ├── Properties
│ │ └── launchSettings.json
│ ├── SingleMatrixTests.fs
│ ├── SingleVectorTests.fs
│ ├── SolveTests.fs
│ ├── Stats.EstimatorTests.fs
│ ├── Stats.SummaryTests.fs
│ ├── TestFramework.fs
│ ├── Tests.fsproj
│ ├── VectorTests.fs
│ ├── VmlTests.fs
│ └── VslTests.fs
├── TestsCSharp
│ ├── Optimization.cs
│ ├── P2QuantileEstimatorOriginal.cs
│ ├── P2QuantileEstimatorPatched.cs
│ └── TestsCSharp.csproj
└── THIRD_PARTY_INTEL_LICENSE.txt
18 directories, 86 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论