Parallel scientific applications generate internal workload (in terms of threads and data structures) during its execution life-cycle, which requires adequate amount of computing resources to meet the service-level-agreements. In this paper, we propose a novel elasticity controller for autonomic resource provisioning which is a combination of fuzzy logic control and autonomic computing. This controller computes the required amount of processor core(s) considering the information about application's internal workload and resource utilization of the virtual machine. Finally, the application's application program interface (API) call performs operation (request and release) of virtual resources to the cloud. To the best of our knowledge, this is the first study that uses CloudSim toolkit to address: (a) execution of parallel application, and (b) fine-grained resource provisioning. The experimental results show that the proposed approach minimizes the finish time by up to 64% and increases the resource utilization by up to 36% compared with other approaches.