def makeConfiguredParamsHeader( templateName, variableList ): comments = [] template = Template( file=templatesPath() + templateName + '.tmpl' ) p = 0 for var in variableList: p += 1 if var.arrayInfo != None: typ = 'Parameter_Text' default = 'null, Null_Unbounded_String' #'"'+var.arrayInfo.sqlArrayDefaultDeclaration( var.getDefaultAdaValue() )+'"' elif( isIntegerTypeInPostgres( var )): typ = 'Parameter_Integer' default = '0' elif( isBigIntTypeInPostgres( var )): typ = 'Parameter_Bigint' default = '0' elif( var.isStringType() ): typ = 'Parameter_Text' default = 'null, Null_Unbounded_String'; elif( var.isNumericType() ): typ = 'Parameter_Float' default = '0.0' elif ( var.isDateType() ): typ = 'Parameter_Date' default = 'Clock' s = '{:>4d} : {:<24} : {:<18} : {:<20} : {:>8} '.format( p, var.adaName, typ, var.adaType, default ) comments.append( s ) template.n = p template.comments = comments; return str( template );
def main(): template = Template(kernel_string) template.n = n max_kernel = cuda_compile(template, 'max_kernel') out_arr = np.zeros(1, dtype=np.int32) in_d = gpu.to_gpu(in_arr) out_d = gpu.to_gpu(out_arr) max_kernel(in_d, out_d, block=(n,1,1), grid=(1,1), shared=n*4) out = out_d.get() print 'Kernel returns:', out[0] print 'Actual max: ', np.max(in_arr)
def makeConfiguredParamsBody( templateName, variableList, versions ): template = Template( file=templatesPath() + templateName + '.tmpl' ) n = len( variableList ) template.n = n for t in range(1,versions+1): # print " t = " + `t` + " template " + templateName + "versions" + `versions` if t == 1: varList = variableList else: varList = makeVariablesInUpdateOrder( variableList ) p = 0 rows = [] for var in varList: p += 1 if var.arrayInfo != None: typ = 'Parameter_Text' default = 'null, Null_Unbounded_String' #'"'+var.arrayInfo.sqlArrayDefaultDeclaration( var.getDefaultAdaValue() )+'"' elif isIntegerTypeInPostgres( var ): typ = 'Parameter_Integer' default = '0' elif isBigIntTypeInPostgres( var ): typ = 'Parameter_Bigint' default = '0' elif var.isStringType(): typ = 'Parameter_Text' default = 'null, Null_Unbounded_String'; elif var.isNumericType(): typ = 'Parameter_Float' default = '0.0' elif var.isDateType(): typ = 'Parameter_Date' default = 'Clock' s = ' {0:>2d} => ( {1:s}, {2:s} )'.format( p, typ, default ) if( p < n ): s += "," s += " -- " + " : " + var.adaName + " (" + var.adaType +")" rows.append( s ) if t == 1: # print "adding insert rows" template.rows = rows else: # print "adding update rows" template.updateRows = rows return str(template)