PyOpenCLはじめました
python 3でnumpy、PyOpenCLのインストールが最低必要

# -*- coding: utf-8 -*-
import numpy as np
import pyopencl as cl

ctx = cl.create_some_context()
queue = cl.CommandQueue(ctx)
data_mem=cl.Buffer(ctx,cl.mem_flags.READ_WRITE,32)
hostdata=np.empty(32, dtype = np.int8)
global_work_size=(1,1)
local_work_size=(1,1)

prg_string="""
__kernel void hello(__global char* string)
{
   string[0] = 'H';
   string[1] = 'e';
   string[2] = 'l';
   string[3] = 'l';
   string[4] = 'o';
   string[5] = ',';
   string[6] = ' ';
   string[7] = 'W';
   string[8] = 'o';
   string[9] = 'r';
   string[10] = 'l';
   string[11] = 'd';
   string[12] = '!';
}
"""
program=cl.Program(ctx,prg_string).build()
kernel_h=cl.Kernel(program,"hello")
kernel_h.set_arg(0,data_mem)
cl.enqueue_nd_range_kernel(queue,kernel_h,global_work_size,local_work_size)
cl.enqueue_read_buffer(queue,mem=data_mem,hostbuf=hostdata)
res_string=""
for i in range(len(hostdata)):
    res_string=res_string+(chr(hostdata[i]))
print(res_string)

はい
長過ぎる笑
むりくりOpenCLで文字列扱ってるから逆に難しくなってしまった
多分1+1=2の計算をやるほうが簡単