1. A method to profile a job power performed on a data processing system comprising a plurality of shared nodes and a controller node, comprising: collecting, using the controller node, a plurality of process identifiers sent from the plurality of shared nodes; determining, using the controller node, identifiers for a plurality of jobs including a first job and a second job based on the plurality of process identifiers, wherein a job is a computer program that is executed on at least a portion of the plurality of shared nodes; identifying, using the controller node, the shared nodes including a first shared node and a second shared node that are used to execute the plurality of jobs based on the job identifiers, wherein a table is generated that includes a number of accesses of the first shared node by the first job and a number of accesses of the first shared node by the second job; and calculating, using the controller node, an amount of power consumed by the first shared node to execute the first job, an amount of power consumed by the first shared node to execute the second job, and an amount of power consumed by the second shared node to execute the first job based on the number of accesses to control the job power to increase performance and throughput within power limits of the system.