The document proposes a heterogeneous resource allocation approach called SAMR (skewness-avoidance multi-resource allocation) to efficiently allocate heterogeneous workloads to physical machines (PMs) in Infrastructure-as-a-Service (IaaS) clouds. Current homogeneous resource allocation wastes resources by provisioning the same amount of each resource type regardless of workload demands. SAMR aims to reduce resource skewness and the number of active PMs needed through a flexible virtual machine type offering and a skewness-aware VM allocation algorithm. It estimates the required number of PMs under a delay constraint and schedules VMs based on inner-node and inter-node resource balance metrics to improve utilization over single-dimensional and