CRAN Package Check Results for Package OpenCL

Last updated on 2026-08-05 13:50:31 CEST.

Flavor Version Tinstall Tcheck Ttotal Status Flags
r-devel-linux-x86_64-debian-clang 0.2-11 3.14 28.57 31.71 NOTE
r-devel-linux-x86_64-debian-gcc 0.2-11 2.80 22.69 25.49 NOTE
r-devel-linux-x86_64-fedora-clang 0.2-11 19.61 ERROR
r-devel-linux-x86_64-fedora-gcc 0.2-11 20.53 NOTE
r-patched-linux-x86_64 0.2-11 3.93 25.16 29.09 NOTE
r-release-linux-x86_64 0.2-11 3.69 25.16 28.85 NOTE
r-release-macos-arm64 0.2-11 1.00 9.00 10.00 ERROR
r-release-macos-x86_64 0.2-11 4.00 30.00 34.00 NOTE
r-oldrel-macos-arm64 0.2-11 ERROR
r-oldrel-macos-x86_64 0.2-11 4.00 29.00 33.00 NOTE

Additional issues

rchk

Check Details

Version: 0.2-11
Check: DESCRIPTION meta-information
Result: NOTE License stub is invalid DCF. Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc, r-patched-linux-x86_64, r-release-linux-x86_64, r-release-macos-arm64, r-release-macos-x86_64, r-oldrel-macos-arm64, r-oldrel-macos-x86_64

Version: 0.2-11
Check: tests
Result: NOTE Running ‘buffer.R’ [0s/1s] Comparing ‘buffer.Rout’ to ‘buffer.Rout.save’ ... 5,10d4 < > < > if (!length(oclPlatforms())) { < + cat("== Cannot run tests as there is no platform") < + q("no") < + } < > Running ‘kernel.R’ [3s/5s] Comparing ‘kernel.Rout’ to ‘kernel.Rout.save’ ... 5,10d4 < > < > if (!length(oclPlatforms())) { < + cat("== Cannot run tests as there is no platform") < + q("no") < + } < > Flavors: r-devel-linux-x86_64-debian-clang, r-release-linux-x86_64

Version: 0.2-11
Check: tests
Result: NOTE Running ‘buffer.R’ [0s/1s] Comparing ‘buffer.Rout’ to ‘buffer.Rout.save’ ... 5,10d4 < > < > if (!length(oclPlatforms())) { < + cat("== Cannot run tests as there is no platform") < + q("no") < + } < > Running ‘kernel.R’ [2s/3s] Comparing ‘kernel.Rout’ to ‘kernel.Rout.save’ ... 5,10d4 < > < > if (!length(oclPlatforms())) { < + cat("== Cannot run tests as there is no platform") < + q("no") < + } < > Flavor: r-devel-linux-x86_64-debian-gcc

Version: 0.2-11
Check: DESCRIPTION meta-information
Result: NOTE Licence stub is invalid DCF. Flavors: r-devel-linux-x86_64-fedora-clang, r-devel-linux-x86_64-fedora-gcc

Version: 0.2-11
Check: examples
Result: ERROR Running examples in ‘OpenCL-Ex.R’ failed The error most likely occurred in: > ### Name: oclRun > ### Title: Run a kernel using OpenCL. > ### Aliases: oclRun > ### Keywords: interface > > ### ** Examples > > library(OpenCL) > ## Only proceed if this machine has at least one OpenCL platform > if (length(oclPlatforms())) { + ctx = oclContext(precision="single") + + code = c(" + __kernel void dnorm( + __global numeric* output, + const unsigned int count, + __global numeric* input, + const numeric mu, const numeric sigma) + { + size_t i = get_global_id(0); + if(i < count) + output[i] = exp((numeric) (-0.5 * ((input[i] - mu) / sigma) * ((input[i] - mu) / sigma))) + / (sigma * sqrt((numeric) (2 * 3.14159265358979323846264338327950288 )) ); + }") + k.dnorm <- oclSimpleKernel(ctx, "dnorm", code) + f <- function(x, mu=0, sigma=1) + as.numeric(oclRun(k.dnorm, length(x), as.clBuffer(x, ctx, "numeric"), mu, sigma)) + + ## expect differences since the above uses single-precision but + ## it should be close enough + f(1:10/2) - dnorm(1:10/2) + + ## does the device support double-precision? + if (any("cl_khr_fp64" == oclInfo(attributes(ctx)$device)$exts)) { + k.dnorm <- oclSimpleKernel(ctx, "dnorm", code, "double") + f <- function(x, mu=0, sigma=1) + as.numeric(oclRun(k.dnorm, length(x), as.clBuffer(x, ctx, "double"), mu, sigma)) + + ## probably not identical, but close... + f(1:10/2) - dnorm(1:10/2) + } else cat("\nSorry, your device doesn't support double-precision\n") + + ## Note that in practice you can use precision="best" in the first + ## example which will pick "double" on devices that support it and + ## "single" elsewhere + } OMP: Warning #96: Cannot form a team with 28 threads, using 2 instead. OMP: Hint Consider unsetting KMP_DEVICE_THREAD_LIMIT (KMP_ALL_THREADS), KMP_TEAMS_THREAD_LIMIT, and OMP_THREAD_LIMIT (if any are set). [1] 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 [6] 8.673617e-19 0.000000e+00 0.000000e+00 3.388132e-21 2.117582e-22 > > > > ### * <FOOTER> > ### > cleanEx() > options(digits = 7L) > base::cat("Time elapsed: ", proc.time() - base::get("ptime", pos = 'CheckExEnv'),"\n") Time elapsed: 0.214 0.029 0.359 0 0 > grDevices::dev.off() null device 1 > ### > ### Local variables: *** > ### mode: outline-minor *** > ### outline-regexp: "\\(> \\)?### [*]+" *** > ### End: *** > quit('no') free(): invalid size Flavor: r-devel-linux-x86_64-fedora-clang

Version: 0.2-11
Check: tests
Result: ERROR Running ‘buffer.R’ Running ‘kernel.R’ Running the tests in ‘tests/buffer.R’ failed. Complete output: > # 0. Create context > library(OpenCL) > > if (!length(oclPlatforms())) { + cat("== Cannot run tests as there is no platform") + q("no") + } > > ctx<-oclContext() > > # 1. Create single-precision buffer and fill with values > buf <- clBuffer(ctx, 16, "single") > buf[] <- 1:16 > > # Inspect the resulting buffer > class(buf) [1] "clBuffer" > print(attributes(buf)$mode) [1] "single" > print(buf) OpenCL buffer, 16 elements of type single [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 > length(buf) [1] 16 > > # subsetting > buf[2:5] # contiguous [1] 2 3 4 5 > buf[c(1,6)] # non-contiguous [1] 1 6 > buf[-1] # negative [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 > buf[buf[] > 6] # logical [1] 7 8 9 10 11 12 13 14 15 16 > buf[c(NA, 4)] # NA [1] NA 4 > > # subassignment > buf[2:3] = 0 # contiguous > buf[1:5] [1] 1 0 0 4 5 > sum(buf[1:4]) [1] 5 > buf[5:4] = c(1,2) # non-contiguous (reversed) > buf[1:5] [1] 1 0 0 2 1 > > # Check if memory accounting works. > oclMemLimits()$used [1] 64 > rm(buf) > invisible(gc()) > oclMemLimits()$used [1] 0 > > # 2. The same for an integer buffer > ints <- clBuffer(ctx, 32, "integer") > ints[] <- 16:47 > > # Inspect the resulting buffer > class(ints) [1] "clBuffer" > print(attributes(ints)$mode) [1] "integer" > print(ints) OpenCL buffer, 32 elements of type integer [1] 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 [26] 41 42 43 44 45 46 47 > length(ints) [1] 32 > > # 3. Let's see if we can guess the type correctly > numeric.buf <- as.clBuffer(sqrt(3:18), ctx) > print(numeric.buf) OpenCL buffer, 16 elements of type double [1] 1.732051 2.000000 2.236068 2.449490 2.645751 2.828427 3.000000 3.162278 [9] 3.316625 3.464102 3.605551 3.741657 3.872983 4.000000 4.123106 4.242641 > integer.buf <- as.clBuffer(-1:14, ctx) > print(integer.buf) OpenCL buffer, 16 elements of type integer [1] -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 > > # 4. Other functions > c(is.clBuffer(ints), is.clBuffer(1:16), is.clBuffer(ctx)) [1] TRUE FALSE FALSE > > proc.time() user system elapsed 0.258 0.054 0.637 free(): invalid size Running the tests in ‘tests/kernel.R’ failed. Complete output: > # 0. Create context and read kernel file > library(OpenCL) > > if (!length(oclPlatforms())) { + cat("== Cannot run tests as there is no platform") + q("no") + } > > ctx <- oclContext() > code <- readChar("kernel.cl", nchars=file.info("kernel.cl")$size) > > # 1. Create kernel without inputs and run it > linear <- oclSimpleKernel(ctx, "linear", code, "integer") > oclRun(linear, 4) OpenCL buffer, 4 elements of type integer OMP: Warning #96: Cannot form a team with 28 threads, using 2 instead. OMP: Hint Consider unsetting KMP_DEVICE_THREAD_LIMIT (KMP_ALL_THREADS), KMP_TEAMS_THREAD_LIMIT, and OMP_THREAD_LIMIT (if any are set). [1] 0 1 2 3 > oclRun(linear, 32) OpenCL buffer, 32 elements of type integer [1] 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 [26] 25 26 27 28 29 30 31 > > # 2. Run kernel with a numeric input buffer > square <- oclSimpleKernel(ctx, "square", code) > input <- as.clBuffer(sqrt(1:16), ctx) > output <- oclRun(square, 16, input) > output OpenCL buffer, 16 elements of type double [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 > oclRun(square, 16, output) OpenCL buffer, 16 elements of type double [1] 1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 > > # 3. Run kernel with a buffer argument and a scalar argument > multiply <- oclSimpleKernel(ctx, "multiply", code) > input <- as.clBuffer((1:16)^2, ctx) > output <- oclRun(multiply, 16, input, 2.5) > output OpenCL buffer, 16 elements of type double [1] 2.5 10.0 22.5 40.0 62.5 90.0 122.5 160.0 202.5 250.0 302.5 360.0 [13] 422.5 490.0 562.5 640.0 > > proc.time() user system elapsed 0.290 0.071 0.701 free(): invalid size Flavor: r-devel-linux-x86_64-fedora-clang

Version: 0.2-11
Check: tests
Result: NOTE Running ‘buffer.R’ Comparing ‘buffer.Rout’ to ‘buffer.Rout.save’ ... 5,10d4 < > < > if (!length(oclPlatforms())) { < + cat("== Cannot run tests as there is no platform") < + q("no") < + } < > Running ‘kernel.R’ Comparing ‘kernel.Rout’ to ‘kernel.Rout.save’ ... 5,10d4 < > < > if (!length(oclPlatforms())) { < + cat("== Cannot run tests as there is no platform") < + q("no") < + } < > Flavor: r-devel-linux-x86_64-fedora-gcc

Version: 0.2-11
Check: tests
Result: NOTE Running ‘buffer.R’ [0s/0s] Comparing ‘buffer.Rout’ to ‘buffer.Rout.save’ ... 5,10d4 < > < > if (!length(oclPlatforms())) { < + cat("== Cannot run tests as there is no platform") < + q("no") < + } < > Running ‘kernel.R’ [3s/5s] Comparing ‘kernel.Rout’ to ‘kernel.Rout.save’ ... 5,10d4 < > < > if (!length(oclPlatforms())) { < + cat("== Cannot run tests as there is no platform") < + q("no") < + } < > Flavor: r-patched-linux-x86_64

Version: 0.2-11
Check: examples
Result: ERROR Running examples in ‘OpenCL-Ex.R’ failed The error most likely occurred in: > ### Name: clBuffer > ### Title: Create and handle OpenCL buffers > ### Aliases: clBuffer as.clBuffer as.double.clBuffer as.integer.clBuffer > ### is.clBuffer print.clBuffer length.clBuffer [.clBuffer [<-.clBuffer > ### Keywords: interface > > ### ** Examples > > library(OpenCL) > > ## Only proceed if this machine has at least one OpenCL platform > if (length(oclPlatforms())) { + + ctx<-oclContext() + + buf<-clBuffer(ctx, 16, "numeric") + # Do not write buf<-..., as this replaces buf with a vector. + buf[]<-sqrt(1:16) + buf + + intbuf<-as.clBuffer(1:16, ctx) + print(intbuf) + + length(buf) + as.numeric(buf) + buf[] + + buf[3:5] + buf[1:2] = 0 + buf + + ## clBuffer is the required argument and return type of oclRun. + ## See oclRun() examples. + } Error in oclDevices(type = device) : clGetDeviceIDs failed, oclError -30: invalid value (CL_INVALID_VALUE) Calls: oclContext -> oclDevices Execution halted Flavors: r-release-macos-arm64, r-oldrel-macos-arm64

Version: 0.2-11
Check: tests
Result: ERROR Running ‘buffer.R’ [0s/0s] Running the tests in ‘tests/buffer.R’ failed. Complete output: > # 0. Create context > library(OpenCL) > > if (!length(oclPlatforms())) { + cat("== Cannot run tests as there is no platform") + q("no") + } > > ctx<-oclContext() Error in oclDevices(type = device) : clGetDeviceIDs failed, oclError -30: invalid value (CL_INVALID_VALUE) Calls: oclContext -> oclDevices Execution halted Flavors: r-release-macos-arm64, r-oldrel-macos-arm64

Version: 0.2-11
Check: tests
Result: NOTE Running ‘buffer.R’ [0s/0s] Comparing ‘buffer.Rout’ to ‘buffer.Rout.save’ ... 5,10d4 < > < > if (!length(oclPlatforms())) { < + cat("== Cannot run tests as there is no platform") < + q("no") < + } < > 77c71 < OpenCL buffer, 16 elements of type single --- > OpenCL buffer, 16 elements of type double 79c73 < [9] 3.316625 3.464102 3.605551 3.741657 3.872983 4.000000 4.123106 4.242640 --- > [9] 3.316625 3.464102 3.605551 3.741657 3.872983 4.000000 4.123106 4.242641 Running ‘kernel.R’ [0s/1s] Comparing ‘kernel.Rout’ to ‘kernel.Rout.save’ ... 5,10d4 < > < > if (!length(oclPlatforms())) { < + cat("== Cannot run tests as there is no platform") < + q("no") < + } < > 29c23 < OpenCL buffer, 16 elements of type single --- > OpenCL buffer, 16 elements of type double 32,35c26,27 < OpenCL buffer, 16 elements of type single < [1] 1.00000 4.00000 9.00000 16.00000 25.00000 36.00001 48.99999 < [8] 63.99999 81.00000 100.00000 121.00002 144.00000 169.00000 196.00003 < [15] 225.00003 256.00000 --- > OpenCL buffer, 16 elements of type double > [1] 1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 42c34 < OpenCL buffer, 16 elements of type single --- > OpenCL buffer, 16 elements of type double Flavor: r-release-macos-x86_64

Version: 0.2-11
Check: tests
Result: NOTE Running ‘buffer.R’ [0s/0s] Comparing ‘buffer.Rout’ to ‘buffer.Rout.save’ ...5,10d4 < > < > if (!length(oclPlatforms())) { < + cat("== Cannot run tests as there is no platform") < + q("no") < + } < > 77c71 < OpenCL buffer, 16 elements of type single --- > OpenCL buffer, 16 elements of type double 79c73 < [9] 3.316625 3.464102 3.605551 3.741657 3.872983 4.000000 4.123106 4.242640 --- > [9] 3.316625 3.464102 3.605551 3.741657 3.872983 4.000000 4.123106 4.242641 Running ‘kernel.R’ [0s/1s] Comparing ‘kernel.Rout’ to ‘kernel.Rout.save’ ...5,10d4 < > < > if (!length(oclPlatforms())) { < + cat("== Cannot run tests as there is no platform") < + q("no") < + } < > 29c23 < OpenCL buffer, 16 elements of type single --- > OpenCL buffer, 16 elements of type double 32,35c26,27 < OpenCL buffer, 16 elements of type single < [1] 1.00000 4.00000 9.00000 16.00000 25.00000 36.00001 48.99999 < [8] 63.99999 81.00000 100.00000 121.00002 144.00000 169.00000 196.00003 < [15] 225.00003 256.00000 --- > OpenCL buffer, 16 elements of type double > [1] 1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 42c34 < OpenCL buffer, 16 elements of type single --- > OpenCL buffer, 16 elements of type double Flavor: r-oldrel-macos-x86_64