Paddle Place split into multiplace
Created by: dzhwinter
Currently, we have two types of Places: CPUPlace and GPUPlace
These are far from sufficient. We might need a hierarchy of more places:
CPUPlace -- X32Place
X64Place -- MKLPlace
ARMPlace -- NeonPlace
GPUPlace -- CUDAPlace
ROCmPlace
Similarly, we have two device-context class CPUDeviceContext and CUDADeviceContext. We need to add more.