Changeset 74e9b5f in sasmodels for sasmodels/kernel_header.c


Ignore:
Timestamp:
Oct 12, 2018 10:52:48 PM (6 years ago)
Author:
pkienzle
Branches:
master, core_shell_microgels, magnetic_model, ticket-1257-vesicle-product, ticket_1156, ticket_1265_superball, ticket_822_more_unit_tests
Children:
4de14584
Parents:
b0de252
Message:

autotag functions as device functions for cuda. Refs #1076.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sasmodels/kernel_header.c

    rb0de252 r74e9b5f  
    55#elif defined(_OPENMP) 
    66# define USE_OPENMP 
    7 #elif defined(__CUDACC__) 
    8 # define USE_CUDA 
    97#endif 
    108 
     
    1715 
    1816   #define USE_GPU 
     17   #define pglobal global 
     18   #define pconstant constant 
     19 
    1920   typedef int int32_t; 
    20    #define global_par global 
    21    #define local_par local 
    22    #define constant_par constant 
    23    #define global_var global 
    24    #define local_var local 
    25    #define constant_var constant 
    26    #define __device__ 
    2721 
    2822   #if defined(USE_SINCOS) 
     
    4539 
    4640   #define USE_GPU 
    47    #define global_par 
    48    #define local_par 
    49    #define constant_par const 
    50    #define global_var 
    51    #define local_var __shared__ 
    52    #define constant_var __constant__ 
    53  
     41   #define local __shared__ 
     42   #define pglobal 
     43   #define constant __constant__ 
     44   #define pconstant const 
    5445   #define kernel extern "C" __global__ 
    5546 
     
    6758#else // !USE_OPENCL && !USE_CUDA 
    6859 
    69    #define global_par 
    70    #define local_par 
    71    #define constant_par const 
    72    #define global_var 
    73    #define local_var 
    74    #define constant_var const 
    75    #define __device__ 
     60   #define local 
     61   #define pglobal 
     62   #define constant const 
     63   #define pconstant const 
    7664 
    7765   #ifdef __cplusplus 
     
    193181#  define M_4PI_3 4.18879020478639 
    194182#endif 
    195 __device__ 
    196183inline double square(double x) { return x*x; } 
    197 __device__ 
    198184inline double cube(double x) { return x*x*x; } 
    199 __device__ 
    200185inline double sas_sinx_x(double x) { return x==0 ? 1.0 : sin(x)/x; } 
    201186 
Note: See TracChangeset for help on using the changeset viewer.