rindow / rindow-math-matrix-matlibext
Rindow Math Matrix的Matlib驱动程序,支持PHP扩展
Requires
- php: ^8.1
- ext-rindow_openblas: ~0.4.1
- interop-phpobjects/polite-math: ~1.0.7
- rindow/rindow-math-matrix: ~2.0.4
Suggests
- ext-rindow_clblast: ~0.2.1
- ext-rindow_opencl: ~0.2.1
README
重要
本包是Rindow-math-matrix的Matlib驱动程序。这些驱动程序作为适配器,用于驱动PHP扩展。每个PHP扩展都需要分别下载和安装适合您环境PHP版本和操作系统版本的二进制文件。
目前,Rindow-math-matrix已停止使用PHP扩展,并转移到使用FFI。
但是,我保留了一个选项,可以使用PHP扩展,以防FFI因某些原因不可用。本包允许您使用PHP扩展与Rindow-mat-matrix一起使用。
概述
Rindow Math Matrix是科学矩阵操作的基础包
- 强大的N维数组对象
- 复杂的(广播)函数
- 通过FFI(或PHP扩展)集成C/C++的工具
- 有用的线性代数和随机数功能
请参阅Rindow数学项目网页上的文档。
Rindow Math Matrix的存储库在这里:链接。
要求
- PHP 8.1或PHP8.2或PHP8.3
- Rindow Math Matrix v2.0
- Rindow OpenBLAS PHP扩展v0.4(以及OpenBLAS 0.3.20或更高版本)
- Rindow OpenCL PHP扩展v0.2(以及OpenCL 1.1或更高版本)
- Rindow CLBlast PHP扩展v0.2(以及CLBlast 1.5.2或更高版本)
- Windows 10/11或Ubuntu 20.04 Debian 12或更高版本
下载预构建的二进制文件
您可以使用预构建的二进制文件执行非常快速的N维数组操作
GPU加速
您可以使用OpenCL进行GPU加速。
注意
此OpenCL支持扩展在您的环境中表现更好,有助于加快笔记本电脑环境(无需NVIDIA)的速度。
在Ivy-bridge和AMD的Bobcat架构APU上进行测试。
在Windows环境中,集成GPU的使用比CPU更有效,并且工作得很好。
然而,在Linux中,旧AMD APU上使用的libclc(Linux标准mesa-opencl-icd)非常不稳定且速度慢。如果您有可测试的硬件,请使用专有驱动程序进行测试。
另一方面,我测试了Intel CPU的Ivy-bridge和集成GPU。
现在在Windows 10标准OpenCL驱动程序上,经过各种调整后运行非常顺畅。然而,与CPU性能相比,旧的英特尔集成GPU并不很高,因此请将正确的人员放在正确的位置。
在Ubuntu 20.04 + beignet-opencl-icd环境中运行良好且速度快。