A method for intelligent thermal management in a portable computing device, PCD, having a heterogeneous cluster architecture comprising a large cluster of processing cores and a small cluster of processing cores, wherein the small cluster has a peak performance capacity that is less than the peak performance capacity of the large cluster; the method comprising: monitoring a skin temperature of the PCD by monitoring a temperature reading, associated with the skin temperature, generated by a target temperature sensor; comparing the temperature reading to a temperature threshold; determining that the temperature reading exceeds the temperature threshold; taking a first subset of the large cluster of processing cores offline in response to determining that the temperature reading exceeds the temperature threshold, without throttling the small cluster of processing cores; determining that the temperature reading remains in excess of the temperature threshold after the first subset of the large cluster of processing cores was taken offline; throttling the performance of a second subset of the large cluster of processing cores in response to determining that the temperature reading remains in excess of the temperature threshold after the first subset of the large cluster of processing cores was taken offline; determining that the temperature reading remains in excess of the temperature threshold after the second subset of the large cluster of processing cores was throttled to a minimum performance floor, wherein the minimum performance floor is set such that the CPU capacity of the large cluster remains greater than the CPU capacity of the small cluster, thereby preventing migration of workload from the small cluster to the large cluster; and taking the second subset of the large cluster of processing cores offline in response to determining that the temperature reading remains in excess of the temperature threshold after the second subset of the large cluster of processing cores was throttled to the minimum performance floor. monitoring a skin temperature of the PCD by monitoring a temperature reading, associated with the skin temperature, generated by a target temperature sensor; comparing the temperature reading to a temperature threshold; determining that the temperature reading exceeds the temperature threshold; taking a first subset of the large cluster of processing cores offline in response to determining that the temperature reading exceeds the temperature threshold, without throttling the small cluster of processing cores; determining that the temperature reading remains in excess of the temperature threshold after the first subset of the large cluster of processing cores was taken offline; throttling the performance of a second subset of the large cluster of processing cores in response to determining that the temperature reading remains in excess of the temperature threshold after the first subset of the large cluster of processing cores was taken offline; determining that the temperature reading remains in excess of the temperature threshold after the second subset of the large cluster of processing cores was throttled to a minimum performance floor, wherein the minimum performance floor is set such that the CPU capacity of the large cluster remains greater than the CPU capacity of the small cluster, thereby preventing migration of workload from the small cluster to the large cluster; and taking the second subset of the large cluster of processing cores offline in response to determining that the temperature reading remains in excess of the temperature threshold after the second subset of the large cluster of processing cores was throttled to the minimum performance floor.