Enabling Customized Computing In Datacenters: From Accelerator Design To System Integration