'#' Comment.Preproc 'include' Comment.Preproc ' ' Text.Whitespace '' Comment.PreprocFile '\n' Comment.Preproc '\n' Text.Whitespace '// __device__ function\n' Comment.Single '__device__' Keyword.Type ' ' Text.Whitespace 'void' Keyword.Type ' ' Text.Whitespace 'func' Name '(' Punctuation ')' Punctuation '\n' Text.Whitespace '{' Punctuation '\n' Text.Whitespace ' ' Text.Whitespace 'short' Keyword.Type '*' Operator ' ' Text.Whitespace 'array0' Name ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '(' Punctuation 'short' Keyword.Type '*' Operator ')' Punctuation 'array' Name ';' Punctuation '\n' Text.Whitespace ' ' Text.Whitespace 'float' Keyword.Type '*' Operator ' ' Text.Whitespace 'array1' Name ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '(' Punctuation 'float' Keyword.Type '*' Operator ')' Punctuation '&' Operator 'array0' Name '[' Punctuation '127' Literal.Number.Integer ']' Punctuation ';' Punctuation '\n' Text.Whitespace '}' Punctuation '\n' Text.Whitespace '\n' Text.Whitespace '/* __global__ function */' Comment.Multiline '\n' Text.Whitespace '__global__' Keyword.Reserved ' ' Text.Whitespace 'static' Keyword ' ' Text.Whitespace 'void' Keyword.Type ' ' Text.Whitespace 'reduction' Name '(' Punctuation 'const' Keyword ' ' Text.Whitespace 'float' Keyword.Type '*' Operator ' ' Text.Whitespace '__restrict__' Keyword.Type ' ' Text.Whitespace 'input' Name ',' Punctuation ' ' Text.Whitespace 'float' Keyword.Type ' ' Text.Whitespace '*' Operator 'output' Name ',' Punctuation ' ' Text.Whitespace 'clock_t' Keyword.Type ' ' Text.Whitespace '*' Operator 'timer' Name ')' Punctuation '\n' Text.Whitespace '{' Punctuation '\n' Text.Whitespace ' ' Text.Whitespace '// __shared__ float shared[2 * blockDim.x];\n' Comment.Single ' ' Text.Whitespace 'extern' Keyword ' ' Text.Whitespace '__shared__' Keyword.Type ' ' Text.Whitespace 'float' Keyword.Type ' ' Text.Whitespace 'shared' Name '[' Punctuation ']' Punctuation ';' Punctuation '\n' Text.Whitespace '\n' Text.Whitespace ' ' Text.Whitespace 'const' Keyword ' ' Text.Whitespace 'int' Keyword.Type ' ' Text.Whitespace 'tid' Name ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace 'threadIdx' Name.Builtin '.' Punctuation 'x' Name ';' Punctuation '\n' Text.Whitespace ' ' Text.Whitespace 'const' Keyword ' ' Text.Whitespace 'int' Keyword.Type ' ' Text.Whitespace 'bid' Name ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace 'blockIdx' Name.Builtin '.' Punctuation 'x' Name ';' Punctuation '\n' Text.Whitespace ' ' Text.Whitespace '\n' Text.Whitespace ' ' Text.Whitespace 'if' Keyword ' ' Text.Whitespace '(' Punctuation 'threadIdx' Name.Builtin '.' Punctuation 'x' Name ' ' Text.Whitespace '=' Operator '=' Operator ' ' Text.Whitespace '0' Literal.Number.Integer ')' Punctuation ' ' Text.Whitespace '{' Punctuation '\n' Text.Whitespace ' ' Text.Whitespace '__threadfence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text.Whitespace ' ' Text.Whitespace '}' Punctuation '\n' Text.Whitespace '\n' Text.Whitespace ' ' Text.Whitespace '// Perform reduction to find minimum.\n' Comment.Single ' ' Text.Whitespace 'for' Keyword ' ' Text.Whitespace '(' Punctuation 'int' Keyword.Type ' ' Text.Whitespace 'd' Name ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace 'blockDim' Name.Builtin '.' Punctuation 'x' Name ';' Punctuation ' ' Text.Whitespace 'd' Name ' ' Text.Whitespace '>' Operator ' ' Text.Whitespace '0' Literal.Number.Integer ';' Punctuation ' ' Text.Whitespace 'd' Name ' ' Text.Whitespace '/' Operator '=' Operator ' ' Text.Whitespace '2' Literal.Number.Integer ')' Punctuation '\n' Text.Whitespace ' ' Text.Whitespace '{' Punctuation '\n' Text.Whitespace ' ' Text.Whitespace '__syncthreads' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text.Whitespace ' ' Text.Whitespace '}' Punctuation '\n' Text.Whitespace '}' Punctuation '\n' Text.Whitespace '\n' Text.Whitespace 'int' Keyword.Type ' ' Text.Whitespace 'main' Name '(' Punctuation 'int' Keyword.Type ' ' Text.Whitespace 'argc' Name ',' Punctuation ' ' Text.Whitespace 'char' Keyword.Type ' ' Text.Whitespace '*' Operator '*' Operator 'argv' Name ')' Punctuation '\n' Text.Whitespace '{' Punctuation '\n' Text.Whitespace ' ' Text.Whitespace 'dim3' Keyword.Type ' ' Text.Whitespace 'dimBlock' Name.Function '(' Punctuation '8' Literal.Number.Integer ',' Punctuation ' ' Text.Whitespace '8' Literal.Number.Integer ',' Punctuation ' ' Text.Whitespace '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text.Whitespace '\n' Text.Whitespace ' ' Text.Whitespace 'timedReduction' Name '<' Operator '<' Operator '<' Operator 'dimBlock' Name ',' Punctuation ' ' Text.Whitespace '256' Literal.Number.Integer ',' Punctuation ' ' Text.Whitespace '256' Literal.Number.Integer ',' Punctuation ' ' Text.Whitespace '0' Literal.Number.Integer '>' Operator '>' Operator '>' Operator '(' Punctuation 'dinput' Name ',' Punctuation ' ' Text.Whitespace 'doutput' Name ',' Punctuation ' ' Text.Whitespace 'dtimer' Name ')' Punctuation ';' Punctuation '\n' Text.Whitespace ' ' Text.Whitespace 'cudaDeviceReset' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text.Whitespace '}' Punctuation '\n' Text.Whitespace