* add device_context * add unittest for device_context * transfer to use function paddle::platform::throw_on_error * fix cuda build error * using dynload functions * follow comments