Last updated on 2025-10-31 13:51:30 CET.
| Package | ERROR | NOTE | OK | 
|---|---|---|---|
| clrng | 2 | 1 | 5 | 
| gpuR | 4 | 4 | 
Current CRAN status: ERROR: 2, NOTE: 1, OK: 5
Version: 0.0.5
Check: examples
Result: ERROR
  Running examples in ‘clrng-Ex.R’ failed
  The error most likely occurred in:
  
  > ### Name: rnormGpu
  > ### Title: rnormGpu
  > ### Aliases: rnormGpu
  > 
  > ### ** Examples
  > 
  > library(clrng)
  > if (detectGPUs() >= 1) {
  +   setContext(grep("gpu", listContexts()$device_type)[1])
  +   currentPlatform()
  +   streams <- createStreamsGpu()
  +   as.vector(rnormGpu(7, streams=streams))
  + 
  +   getOption('clrng.Nglobal')
  +   # use float precision and global size
  +   as.matrix(rnormGpu(c(2,3), streams=streams))} else {
  +   message("No GPU context available")
  + }
  Build Status = -2 ( Err = -11 )
  Log: <program source>:22:6: warning: no previous prototype for function 'streamsToPrivate'
  void streamsToPrivate(__global int* streams, uint* g1, uint* g2, const int start){
       ^
  <program source>:30:6: warning: no previous prototype for function 'streamsFromPrivate'
  void streamsFromPrivate(__global int* streams, uint* g1, uint* g2,  const int start){
       ^
  <program source>:38:6: warning: no previous prototype for function 'clrngMrg31k3pNextState'
  uint clrngMrg31k3pNextState(uint *g1, uint *g2) {
       ^
  <program source>:97:14: error: call to '__cl_sqrt' is ambiguous
        temp = sqrt( -2.0*log(part[0]) ) * cos(part[1] + addForSine[get_local_id(1)] );// is cos for local0, sine for local1
               ^~~~~~~~~~~~~~~~~~~~~~~~~
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:4788:23: note: expanded from macro 'sqrt'
      #define sqrt(__x) __cl_sqrt(__x)
                        ^~~~~~~~~
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:4785:15: note: candidate function
  __CLFN_FD_1FD(__cl_sqrt);
                ^
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:367:48: note: expanded from macro '__CLFN_FD_1FD'
  #define __CLFN_FD_1FD(name) float __OVERLOAD__ name(float x); \
                                                 ^
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:4785:15: note: candidate function
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:368:21: note: expanded from macro '__CLFN_FD_1FD'
  float2 __OVERLOAD__ name(float2 x); \
                      ^
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:4785:15: note: candidate function
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:369:21: note: expanded from macro '__CLFN_FD_1FD'
  float3 __OVERLOAD__ name(float3 x); \
                      ^
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:4785:15: note: candidate function
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:370:21: note: expanded from macro '__CLFN_FD_1FD'
  float4 __OVERLOAD__ name(float4 x); \
                      ^
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:4785:15: note: candidate function
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:371:21: note: expanded from macro '__CLFN_FD_1FD'
  float8 __OVERLOAD__ name(float8 x); \
                      ^
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:4785:15: note: candidate function
  /System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/cl_kernel.h:372:22: note: expanded from macro '__CLFN_FD_1FD'
  float16 __OVERLOAD__ name(float16 x);
                       ^
  
  Sources: 
  #define TWOPI 6.28318530717
  #define PI_2 M_PI_2_F
  
  #define mrg31k3p_NORM_cl 4.6566126e-10
  
  //TWOPI * mrg31k3p_NORM_cl
  #define TWOPI_mrg31k3p_NORM_cl 2.9258361e-09
  
  
  #define Nrow 1
  #define Ncol 7
  #define NpadStreams 128
  #define NpadCol 128
  #define mrg31k3p_M1 2147483647
  #define mrg31k3p_M2 2147462579
  #define mrg31k3p_MASK12 511  
  #define mrg31k3p_MASK13 16777215  
  #define mrg31k3p_MASK2 65535     
  #define mrg31k3p_MULT2 21069
  
  void streamsToPrivate(__global int* streams, uint* g1, uint* g2, const int start){
    int Drow, Dcol, DrowStart;  for(Drow = 0, DrowStart = start, Dcol = DrowStart + 3;
      Drow < 3; Drow++, DrowStart++, Dcol++){
      g1[Drow] = streams[DrowStart];
      g2[Drow] = streams[Dcol];
    }
  }
  
  void streamsFromPrivate(__global int* streams, uint* g1, uint* g2,  const int start){
   int Drow, Dcol, DrowStart; for(Drow = 0,DrowStart = start, Dcol = DrowStart + 3;
       Drow < 3; Drow++, DrowStart++, Dcol++){
     streams[DrowStart] = g1[Drow];
     streams[Dcol] = g2[Drow];
   }
  }
  
  uint clrngMrg31k3pNextState(uint *g1, uint *g2) {
  	uint y1, y2;
  	y1 = ((g1[1] & mrg31k3p_MASK12) << 22) + (g1[1] >> 9)
  		+ ((g1[2] & mrg31k3p_MASK13) << 7) + (g1[2] >> 24);
  	if (y1 >= mrg31k3p_M1)
  		y1 -= mrg31k3p_M1;
  	y1 += g1[2];
  	if (y1 >= mrg31k3p_M1)
  		y1 -= mrg31k3p_M1;
  	g1[2] = g1[1];
  	g1[1] = g1[0];
  	g1[0] = y1;
  	y1 = ((g2[0] & mrg31k3p_MASK2) << 15) + (mrg31k3p_MULT2 * (g2[0] >> 16));
  	if (y1 >= mrg31k3p_M2)
  		y1 -= mrg31k3p_M2;
  	y2 = ((g2[2] & mrg31k3p_MASK2) << 15) + (mrg31k3p_MULT2 * (g2[2] >> 16));
  	if (y2 >= mrg31k3p_M2)
  		y2 -= mrg31k3p_M2;
  	y2 += g2[2];
  	if (y2 >= mrg31k3p_M2)
  		y2 -= mrg31k3p_M2;
  	y2 += y1;
  	if (y2 >= mrg31k3p_M2)
  		y2 -= mrg31k3p_M2;
  	g2[2] = g2[1];
  	g2[1] = g2[0];
  	g2[0] = y2;
  	if (g1[0] <= g2[0]){
  		return (g1[0] - g2[0] + mrg31k3p_M1);
  	} else {
  		return(g1[0] - g2[0]);
   }
  }
  
  
  
  __kernel void mrg31k3pMatrix(
    __global int* streams,
    __global float* out){
  
  const int index = get_global_id(0)*get_global_size(1) + get_global_id(1);
  int Drow, Dcol, DrowStart, Dentry, DrowBlock, DcolBlock, DrowInBounds;
  const int DrowStartInc = get_global_size(0) * NpadCol;
  uint g1[3], g2[3];
  const int startvalue=index * NpadStreams;
  float temp;
  const float fact[2] = { mrg31k3p_NORM_cl, TWOPI * mrg31k3p_NORM_cl };
  const float addForSine[2] = { 0.0, - PI_2 };
  local float part[2];
  streamsToPrivate(streams,g1,g2,startvalue);
  for(DrowBlock = 0, Drow=get_global_id(0), DrowStart = Drow * NpadCol;
      DrowBlock < Nrow;
      Drow += get_global_size(0), DrowBlock +=get_global_size(0), DrowStart += DrowStartInc) {
      DrowInBounds = Drow < Nrow;
      for(DcolBlock = 0, Dcol=get_global_id(1), Dentry = DrowStart + Dcol;
          DcolBlock < Ncol;
          DcolBlock += get_global_size(1), Dentry += get_global_size(1) ) {
        part[get_local_id(1)] = fact[get_local_id(1)] * clrngMrg31k3pNextState(g1, g2);
        barrier(CLK_LOCAL_MEM_FENCE);
        temp = sqrt( -2.0*log(part[0]) ) * cos(part[1] + addForSine[get_local_id(1)] );// is cos for local0, sine for local1
          if(DrowInBounds) out[Dentry] = temp;
        barrier(CLK_LOCAL_MEM_FENCE);
    }//Dcol
  }//Drow
  streamsFromPrivate(streams,g1,g2,startvalue);
  }//kernel
  
  Error: ViennaCL: FATAL ERROR: CL_INVALID_PROGRAM_EXECUTABLE.
  If you think that this is a bug in ViennaCL, please report it at viennacl-support@lists.sourceforge.net and supply at least the following information:
   * Operating System
   * Which OpenCL implementation (AMD, NVIDIA, etc.)
   * ViennaCL version
  Many thanks in advance!
  Execution halted
Flavors: r-release-macos-x86_64, r-oldrel-macos-x86_64
Version: 0.0.5
Check: re-building of vignette outputs
Result: ERROR
  Error(s) in re-building vignettes:
  --- re-building ‘createStreams.Rmd’ using knitr
  --- finished re-building ‘createStreams.Rmd’
  
  --- re-building ‘fisher.sim.Rmd’ using knitr
  --- finished re-building ‘fisher.sim.Rmd’
  
  --- re-building ‘random_numbers.Rmd’ using knitr
  
  Quitting from random_numbers.Rmd:62-96 [rnormGpu]
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  <error/rlang_error>
  Error:
  ! ViennaCL: FATAL ERROR: CL_INVALID_PROGRAM_EXECUTABLE.
  If you think that this is a bug in ViennaCL, please report it at viennacl-support@lists.sourceforge.net and supply at least the following information:
   * Operating System
   * Which OpenCL implementation (AMD, NVIDIA, etc.)
   * ViennaCL version
  Many thanks in advance!
  ---
  Backtrace:
      ▆
   1. ├─base::as.vector(clrng::rnormGpu(10, myStreamsGpu, verbose = 2))
   2. └─clrng::rnormGpu(10, myStreamsGpu, verbose = 2)
   3.   └─clrng:::gpuRnBackend(xVcl, streams, Nglobal, "normal", verbose)
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  
  Error: processing vignette 'random_numbers.Rmd' failed with diagnostics:
  ViennaCL: FATAL ERROR: CL_INVALID_PROGRAM_EXECUTABLE.
  If you think that this is a bug in ViennaCL, please report it at viennacl-support@lists.sourceforge.net and supply at least the following information:
   * Operating System
   * Which OpenCL implementation (AMD, NVIDIA, etc.)
   * ViennaCL version
  Many thanks in advance!
  --- failed re-building ‘random_numbers.Rmd’
  
  SUMMARY: processing the following file failed:
    ‘random_numbers.Rmd’
  
  Error: Vignette re-building failed.
  Execution halted
Flavors: r-release-macos-x86_64, r-oldrel-macos-x86_64
Version: 0.0.5
Check: installed package size
Result: NOTE
    installed size is 11.5Mb
    sub-directories of 1Mb or more:
      libs  11.3Mb
Flavors: r-oldrel-macos-arm64, r-oldrel-macos-x86_64
Current CRAN status: NOTE: 4, OK: 4
Version: 2.0.6
Flags: --no-tests
Check: CRAN incoming feasibility
Result: NOTE
  Maintainer: ‘Ruoyong Xu <ruoyong.xu@mail.utoronto.ca>’
  
  Found the following (possibly) invalid URLs:
    URL: https://app.gitter.im/#/room/#cdeterman_gpuR:gitter.im
      From: README.md
      Message: Invalid URL: '#' not allowed in fragment
    URL: https://app.gitter.im/#/room/#cdeterman_gpuR_Tested_GPUs:gitter.im
      From: README.md
      Message: Invalid URL: '#' not allowed in fragment
    URL: https://app.gitter.im/#/room/#cdeterman_gpuR_development:gitter.im
      From: README.md
      Message: Invalid URL: '#' not allowed in fragment
    URL: https://app.gitter.im/#/room/#cdeterman_gpuR_general:gitter.im
      From: README.md
      Message: Invalid URL: '#' not allowed in fragment
  
  The BugReports field in DESCRIPTION has
    https://github.com/cdeterman/gpuR/issues/new
  which should likely be
    https://github.com/cdeterman/gpuR/issues/new/issues
  instead.
Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc
Version: 2.0.6
Check: installed package size
Result: NOTE
    installed size is 56.3Mb
    sub-directories of 1Mb or more:
      libs  53.8Mb
Flavors: r-oldrel-macos-arm64, r-oldrel-macos-x86_64