CRAN Package Check Results for Package OpenCL

Last updated on 2025-06-07 21:51:59 CEST.

Flavor Version Tinstall Tcheck Ttotal Status Flags
r-devel-linux-x86_64-debian-clang 0.2-10 3.49 24.91 28.40 NOTE
r-devel-linux-x86_64-debian-gcc 0.2-10 2.84 20.53 23.37 NOTE
r-devel-linux-x86_64-fedora-clang 0.2-10 38.83 ERROR
r-devel-linux-x86_64-fedora-gcc 0.2-10 44.05 NOTE
r-patched-linux-x86_64 0.2-10 3.40 23.38 26.78 NOTE
r-release-linux-x86_64 0.2-10 3.18 23.59 26.77 NOTE
r-release-macos-arm64 0.2-10 18.00 NOTE
r-release-macos-x86_64 0.2-10 29.00 NOTE
r-oldrel-macos-arm64 0.2-10 16.00 NOTE
r-oldrel-macos-x86_64 0.2-10 21.00 NOTE
r-oldrel-windows-x86_64 0.2-10 18.00 42.00 60.00 NOTE

Check Details

Version: 0.2-10
Check: CRAN incoming feasibility
Result: NOTE Maintainer: ‘Simon Urbanek <Simon.Urbanek@r-project.org>’ No Authors@R field in DESCRIPTION. Please add one, modifying Authors@R: c(person(given = "Simon", family = "Urbanek", role = c("aut", "cre"), email = "Simon.Urbanek@r-project.org"), person(given = "Aaron", family = "Puchert", role = "aut", email = "aaronpuchert@alice-dsl.net")) as necessary. Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc

Version: 0.2-10
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-10
Check: compiled code
Result: NOTE File ‘OpenCL/libs/R_OpenCL.so’: Found non-API call to R: ‘DATAPTR’ Compiled code should not call non-API entry points in R. See ‘Writing portable packages’ in the ‘Writing R Extensions’ manual, and section ‘Moving into C API compliance’ for issues with the use of non-API entry points. Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc, r-devel-linux-x86_64-fedora-clang, r-devel-linux-x86_64-fedora-gcc, r-patched-linux-x86_64, r-release-linux-x86_64, r-release-macos-arm64, r-release-macos-x86_64

Version: 0.2-10
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") < + } < > Flavor: r-devel-linux-x86_64-debian-clang

Version: 0.2-10
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-10
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-10
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 + } [1] 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 [6] 0.000000e+00 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.631 0.238 6.28 0 0 > grDevices::dev.off() null device 1 > ### > ### Local variables: *** > ### mode: outline-minor *** > ### outline-regexp: "\\(> \\)?### [*]+" *** > ### End: *** > quit('no') *** caught segfault *** address (nil), cause 'unknown' An irrecoverable exception occurred. R is aborting now ... Flavor: r-devel-linux-x86_64-fedora-clang

Version: 0.2-10
Check: tests
Result: ERROR Running ‘buffer.R’ [3s/16s] Running ‘kernel.R’ [0m/90m] 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.496 0.124 2.072 double free or corruption (!prev) 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 [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.795 0.163 2.040 Flavor: r-devel-linux-x86_64-fedora-clang

Version: 0.2-10
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-10
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/4s] 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-10
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/6s] 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-release-linux-x86_64

Version: 0.2-10
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/0s] 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-arm64

Version: 0.2-10
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-10
Check: for GNU extensions in Makefiles
Result: NOTE GNU make is a SystemRequirements. Flavors: r-oldrel-macos-arm64, r-oldrel-macos-x86_64, r-oldrel-windows-x86_64

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.