System design principles for heterogeneous resource management and scheduling in accelerator-based systems