Package: gpuMagic 1.23.0

Jiefei Wang

gpuMagic: An openCL compiler with the capacity to compile R functions and run the code on GPU

The package aims to help users write openCL code with little or no effort. It is able to compile an user-defined R function and run it on a device such as a CPU or a GPU. The user can also write and run their openCL code directly by calling .kernel function.

Authors:Jiefei Wang [aut, cre], Martin Morgan [aut]

gpuMagic_1.23.0.tar.gz
gpuMagic_1.23.0.zip(r-4.5)gpuMagic_1.23.0.zip(r-4.4)gpuMagic_1.23.0.zip(r-4.3)
gpuMagic_1.23.0.tgz(r-4.4-x86_64)gpuMagic_1.23.0.tgz(r-4.4-arm64)gpuMagic_1.23.0.tgz(r-4.3-x86_64)gpuMagic_1.23.0.tgz(r-4.3-arm64)
gpuMagic_1.23.0.tar.gz(r-4.5-noble)gpuMagic_1.23.0.tar.gz(r-4.4-noble)
gpuMagic.pdf |gpuMagic.html
gpuMagic/json (API)
NEWS

# Install 'gpuMagic' in R:
install.packages('gpuMagic', repos = c('https://bioc.r-universe.dev', 'https://cloud.r-project.org'))

Peer review:

Bug tracker:https://github.com/jiefei-wang/gpumagic/issues

Uses libs:
  • ocl-icd– Generic OpenCL ICD Loader
  • c++– GNU Standard C++ Library v3

On BioConductor:gpuMagic-1.23.0(bioc 3.21)gpuMagic-1.22.0(bioc 3.20)

infrastructureocl-icdcpp

5.60 score 10 stars 1 scripts 184 downloads 35 exports 63 dependencies

Last updated 2 months agofrom:06a334060f. Checks:OK: 1 WARNING: 3 NOTE: 5. Indexed: yes.

TargetResultDate
Doc / VignettesOKNov 29 2024
R-4.5-win-x86_64NOTEOct 30 2024
R-4.5-linux-x86_64WARNINGOct 30 2024
R-4.4-win-x86_64NOTENov 29 2024
R-4.4-mac-x86_64WARNINGNov 29 2024
R-4.4-mac-aarch64WARNINGNov 29 2024
R-4.3-win-x86_64NOTENov 29 2024
R-4.3-mac-x86_64NOTENov 29 2024
R-4.3-mac-aarch64NOTENov 29 2024

Exports:.kernelcompileGPUCodedownloadextractVarsgetCurDevicegetDeviceIndexgetDeviceInfogetDeviceListgetJobStatusgetSizegpu_cast_doublegpu_cast_floatgpu_cast_intgpu_cast_longgpu_cast_uintgpu_cast_ulonggpuEmptMatrixgpuMagic.getAvailableTypegpuMagic.getMemUsagegpuMagic.getOptionsgpuMagic.setOptionsgpuMatrixgpuSapplygpuSapply.getOptionisgreaterkernel.getOptionMatrixncolnrowreturn_nocpyScalarsetDevicesubReft_nocpyupload

Dependencies:askpassBiocGenericsbitbit64bootcellrangerclassclicliprcodetoolscpp11crayoncurldata.tableDerivDescToolsdigeste1071ExactexpmfansiforcatsgenericsgldgluehavenhmshttrjsonlitelatticelifecyclelmomlobstrmagrittrMASSMatrixmimemvtnormopensslpillarpkgconfigprettyunitsprogressproxypryrR6RcppreadrreadxlrematchrlangrootSolverstudioapistringistringrsystibbletidyselecttzdbutf8vctrsvroomwithr

Customized opencl code

Rendered fromCustomized-openCL-code.Rmdusingknitr::rmarkdownon Nov 29 2024.

Last update: 2019-04-03
Started: 2019-03-05

gpuMagic quick start guide

Rendered fromQuick_start_guide.Rmdusingknitr::rmarkdownon Nov 29 2024.

Last update: 2020-04-09
Started: 2018-10-21

Readme and manuals

Help Manual

Help pageTopics
Excute the openCL function.kernel
extract/set parts of the data in gpuMatrix object[ [,gpuMatrix,ANY,ANY,missing-method [,gpuMatrix-method [<-,gpuMatrix,ANY,ANY,numeric-method
Convert the gpuMatrix object into a matrixas.matrix.gpuMatrix
Convert the gpuMatrix object into a vectoras.vector.gpuMatrix
Compile the R function without excute it in the device.compileGPUCode
Query and select the devicesgetCurDevice getDeviceIndex getDeviceInfo getDeviceList getJobStatus setDevice
Internal usage only, the package export this function only for the other package to access.extractVars extractVars.default extractVars.expression extractVars.extCode extractVars.varInfo gpu_cast_double gpu_cast_float gpu_cast_int gpu_cast_long gpu_cast_uint gpu_cast_ulong isgreater
Get all the available openCL variable typegpuMagic.getAvailableType
Get the device memory usagegpuMagic.getMemUsage
Get the openCL optionsgpuMagic.getOptions
Set the openCL optionsgpuMagic.setOptions
gpuMatrix classdim dim,gpuMatrix-method download download,ANY-method download,gpuMatrix-method getSize getSize,gpuMatrix-method gpuEmptMatrix gpuMatrix length length,gpuMatrix-method nrow nrow,gpuMatrix-method upload upload,gpuMatrix-method
A GPU version of the sapply functiongpuSapply
Get the package compilation optionsgpuSapply.getOption
Get the openCL compilation optionskernel.getOption
Create a matrixMatrix
gpuMatrix classncol ncol,gpuMatrix-method
Print the available options in a pretty formatprint.deviceList print.options print.plainText print.varInfo
No copy methodreturn_nocpy t_nocpy
Create a scalar variableScalar
Get a reference of the subset of a matrixsubRef