PHPSci CArray is a high-performance scientific computing library for PHP developed in C and based on the original NumPy code. CArrays offer a solid alternative to PHP arrays as well as compatibility with codes developed using NumPy.
- High Performance Indexing and Data Access
- Low memory footprint compared to PHP Arrays
- Efficient shape, initializers, linear algebra and mathematical methods.
- Out of the box GPU integration (Cuda)
It's really easy to compile this extension using Linux environments.
- php-devel (php-dev)
- PHP 7.2
- OpenBLAS
- cuBLAS (For GPU Integration)
$ sudo add-apt-repository -y ppa:ondrej/php
$ sudo apt-get update
$ sudo apt-get install libopenblas-dev libatlas-base-dev liblapacke-dev php7.4-dev
$ phpize
$ ./configure
$ make test
$ sudo make install
$ echo 'extension=carray' | sudo tee /etc/php/7.4/cli/conf.d/20-carray.ini
$ echo 'extension=carray' | sudo tee /etc/php/7.4/fpm/conf.d/20-carray.ini
$ echo 'extension=carray' | sudo tee /etc/php/7.4/cgi/conf.d/20-carray.ini
$ echo 'extension=carray' | sudo tee /etc/php/7.4/apache2/conf.d/20-carray.ini
$ add-apt-repository -y ppa:ondrej/php
$ apt-get update
$ apt-get install libblas-dev libatlas-base-dev liblapacke-dev php7.2-dev
$ phpize
$ ./configure
$ make test
$ make install
$ add-apt-repository -y ppa:ondrej/php
$ apt-get update
$ apt-get install libopenblas-dev liblapacke-dev php7.2-dev
$ phpize
$ ./configure
$ make test
$ make install
Don't forget to check if the extension is enabled in your php.ini file.
Apache/NGINX Users: Don't forget to restart your services.