Apply shared_ptr to array_t._ptr
Hello CUDA!
Test running cuda kernel
Add device_array_t, just copied from array_t
Introduce abstract_array_t
device_array_t inherits abstract_array_t
Rename abstract_array_t -> base_array_t
Separate base_array_t._ptr as _address and _origin
Inherits move constructor, assign in base_array_t
Eliminate duplication of array_t and device_array_t by introducing base_array_t
Add function host_to_device(dst_d, src) and device_to_host(dst, src_d)
Run kernel with device_array_t
Merge branch 'cuda' into trunk.linux