1. A computer implemented method for generating software thermal profiles for applications executed on a set of processors, the computer implemented method comprising: sampling hardware operations occurring in the set of processors during execution of a set of workloads for the applications by the set of processors to create sampled information, wherein sampling of sensors is performed in parallel based on an operation type information and an operation frequency information, in a non-simulated environment so that the sampled information is actual and non-predicted; calculating a value of an inverse of cycles per instruction using the operation type information; and generating a thermal index for the applications based on the sampled information and the value, wherein the thermal index is coupled to a particular hardware, workload and thermal environment.