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 |
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.