PHP code example of microscrap / cuda

1. Go to this page and download the library: Download microscrap/cuda library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

microscrap / cuda example snippets




use Microscrap\Bindings\CUDA\Enums\CudaError;

$count = cudaGetDeviceCount();
cudaSetDevice(0);
$props = cudaGetDeviceProperties(0);

$dev = cudaMalloc(256);
if ($dev->fd === 0) {
    throw new RuntimeException(cudaGetErrorString(cudaGetLastError()));
}

$err = cudaMemcpyHtoD($dev, random_bytes(256), 256);
if ($err !== CudaError::CUDA_SUCCESS->value) {
    throw new RuntimeException(cudaGetErrorString($err));
}

$back = cudaMemcpyDtoH($dev, 256);
cudaFree($dev);

$pbo = cudaGL_createPixelUnpackBuffer($w * $h * 4);
$tex = cudaGL_createTextureRGBA($w, $h);
$res = cudaGL_registerBuffer($pbo);
$mapped = cudaGL_map($res);
cudaGL_launchPlasma($mapped, $w, $h, $t);
cudaGL_unmap($res);
cudaGL_uploadPBOToTexture($pbo, $tex, $w, $h);
cudaGL_drawFullscreenTexture($tex, $winW, $winH);