This paper introduces an implicit co-scheduling model called an energy-based model where a parallel system is considered as an RC electric circuit whose components are processes. The dynamical behavior of the system is represented by the charging and discharging of potentials of these components. The priorities of parallel processes are then adjusted accordingly. The model proposed falls into a framework of implicit co-scheduling techniques where the scheduler uses the recent traces of communication patterns to periodically calculate the priorities of processes. However, no previously proposed models incorporate the history of the communication and computation of the processes. The model is implemented as a highly portable Linux kernel module. The experiments using NAS benchmark show that the co-scheduling kernel modules substantially increase the speed of the parallel program execution. The improvement is better than the recent results reported in the literature.