1. A method comprising: breadth repeatedly measuring power consumed by a computing system including a plurality of power-consuming hardware components and hosting a plurality of software modules, wherein each of the software modules uses one or more of the hardware components during a corresponding plurality of times such that the software modules cause the hardware components to consume power and wherein each of the software modules generates corresponding to the use of the hardware components by the software module; and determining an energy consumption associated with a software module using the hardware components during the times by analyzing the measurements of power consumed by the computing system and the events corresponding to the use of the hardware components by the software modules during the corresponding times; wherein the software modules do not include code specifically intended to associate the events with the software modules for determining the energy consumption of the associated software module.