Processor-based system including a processing unit for dynamically reconfiguring micro-architectural features of the processing unit in response to workload being processed on the processing unit
Aspects disclosed in the detailed description include a processing unit for dynamically reconfiguring micro-architectural features of the processing unit in response to a workload being processed on the processing unit and a processing unit control unit configured to receive a plurality of signals from the processing unit. The plurality of signals are indicia of the workload being processed on the processing unit. In response, the processing unit control unit determines whether performance, power consumption, or both, of the processing unit may be improved by modifying a micro-architectural feature. In response to determining that performance or power consumption of the processing unit may be improved by modifying micro-architectural features, the processing unit control unit triggers the processing unit to modify one or more of its micro-architectural features. The processing unit, in response to being triggered by the processing unit control unit, modifies one or more of its micro-architectural features.
1 . A processor-based system for dynamically reconfiguring micro-architectural features, comprising:
a first processing unit, the first processing unit comprising one or more micro-architectural features; and
a processing unit control unit configured to:
receive a plurality of signals from the first processing unit, wherein the plurality of signals are indicia of a workload being processed by the first processing unit; and
in response to at least one of the plurality of signals:
determine whether performance or power consumption of the first processing unit may be improved; and
in response to determining that the performance or the power consumption of the first processing unit may be improved:
trigger the first processing unit to modify the one or more micro-architectural features,
the first processing unit, in response to being triggered by the processing unit control unit, configured to:
modify the one or more micro-architectural features, wherein:
the indicia of the workload includes an indication of a streaming application launch; and
the processing unit control unit configured to, in response to at least one of the plurality of signals, trigger the first processing unit to modify the one or more micro-architectural features is further configured to:
trigger the first processing unit to set a prefetch mode to a conservative mode.
2 . The processor-based system of claim 1 , wherein the first processing unit is one of a plurality of processing units, the processing unit control unit configured to:
receive the plurality of signals from the plurality of processing units; and
in response to at least one of the plurality of signals:
determine whether performance or power consumption of one of the plurality of processing units may be improved, the one of the plurality of processing units comprising second one or more micro-architectural features; and
in response to determining that the performance or the power consumption of the one of the plurality of processing units may be improved:
trigger the one of the plurality of processing units to modify the second one or more micro-architectural features.
3 . The processor-based system of claim 1 , wherein the first processing unit is configured to modify the one or more micro-architectural features, further being configured to:
lower the power consumption of the first processing unit for the workload being processed by the first processing unit.
4 . The processor-based system of claim 1 , wherein the first processing unit is configured to modify the one or more micro-architectural features, further being configured to:
increase the performance of the workload being processed by the first processing unit.
5 . The processor-based system of claim 1 , wherein the plurality of signals indicate a performance characteristic of the first processing unit.
6 . The processor-based system of claim 5 , wherein the plurality of signals also comprise a characteristic of an application running on the first processing unit.
7 . The processor-based system of claim 1 , further comprising:
system memory,
wherein the indicia of the workload includes an indication of an application launch and
wherein the processing unit control unit configured to, in response to at least one of the plurality of signals, trigger the first processing unit to modify the one or more micro-architectural features is further configured to:
trigger the first processing unit to set a prefetch mode to an aggressive mode for the first processing unit; and
trigger the first processing unit to set an enable prefetch target mode to direct memory requests for the first processing unit to the system memory.
8 . The processor-based system of claim 1 , wherein:
the indicia of the workload includes an indication of a memory intensive workload; and
the processing unit control unit configured to, in response to at least one of the plurality of signals, trigger the first processing unit to modify the one or more micro-architectural features is further configured to:
trigger the first processing unit to set an enable prefetch mode to an aggressive mode for the first processing unit;
trigger the first processing unit to set L2 caches ways for data to a maximum; and
trigger the first processing unit to set an enable prefetch target mode to direct memory requests for the first processing unit to system memory.
9 . The processor-based system of claim 1 integrated into an integrated circuit (IC).
10 . The processor-based system of claim 1 integrated into a device selected from a group consisting of: a set top box; an entertainment unit; a navigation device; a communications device; a fixed location data unit; a mobile location data unit; a global positioning system (GPS) device; a mobile phone; a cellular phone; a smart phone; a session initiation protocol (SIP) phone; a tablet; a phablet; a server; a computer; a portable computer; a mobile computing device; a wearable computing device; a desktop computer; a personal digital assistant (PDA); a monitor; a computer monitor; a television; a tuner; a radio; a satellite radio; a music player; a digital music player; a portable music player; a digital video player; a video player; a digital video disc (DVD) player; a portable digital video player; an automobile; a vehicle component; an avionics systems; and a multicopter.
11 . A method for dynamically reconfiguring micro-architectural features, comprising:
receiving a plurality of signals from a first processing unit, wherein the plurality of signals are indicia of a workload being processed by the first processing unit, the first processing unit comprising one or more micro-architectural features;
in response to at least one of the plurality of signals:
determining whether performance or power consumption of the first processing unit may be improved;
in response to determining that the performance or the power consumption of the first processing unit may be improved:
triggering the first processing unit to modify the one or more micro-architectural features; and
modifying the one or more micro-architectural features in the first processing unit, wherein triggering the first processing unit to modify the one or more micro-architectural features further comprises:
triggering the first processing unit to set a prefetch mode to a conservative mode.
12 . The method of claim 11 , wherein modifying the one or more micro-architectural features in the first processing unit further comprises:
lowering the power consumption of the first processing unit for the workload being processed by the first processing unit.
13 . The method of claim 11 , wherein modifying the one or more micro-architectural features in the first processing unit, further comprises:
increasing the performance of the workload being processed by the first processing unit.
14 . The method of claim 11 , wherein the plurality of signals indicate a performance characteristic of the first processing unit.
15 . The method of claim 14 , wherein the plurality of signals further comprises a characteristic of an application running on the first processing unit.
16 . The method of claim 11 , wherein triggering the first processing unit to modify the one or more micro-architectural features further comprises:
triggering the first processing unit to set a prefetch mode to an aggressive mode for the first processing unit; and
triggering the first processing unit to set an enable prefetch target mode to direct memory requests for the first processing unit to system memory.
17 . The method of claim 11 , wherein triggering the first processing unit to modify the one or more micro-architectural features further comprises:
triggering the first processing unit to set an enable prefetch mode to an aggressive mode for the first processing unit;
triggering the first processing unit to set L2 caches ways for data to a maximum; and
triggering the first processing unit to set an enable prefetch target mode to direct memory requests for the first processing unit to system memory.