Cloud computing provides elastic computational resources that have been widely deployed in data centres to provide Infrastructure as a Service (IaaS). Virtualization is a key technology in cloud computing for resource sharing. In the virtualization technology the most challenging issue is Virtual Machine Placement Problem (VMPP). Virtual Machine Placement is a significant process executed as a branch of VM migration, which involves placing a Virtual Machine (VM) on a suitable physical machine (PM) in order to improve the resource utilization efficiently. Many existing VMP algorithms considered the overall CPU capacity of a PM, without considering the number of cores available in a PM and core-CPU capacity of a PM. i.e. VMs are mapped onto PMs, if the CPU capacity of the VM is less than or equal to the total CPU capacity of a PM. Such an allocation results in core overload which leads to performance degradation and violation of Service Level Agreement. However, in the real scenario, PM and VM consists of multiple cores. So, to place VM on PM, the core-CPU capacity of a VM must be mapped to a core-CPU capacity of a PM. i.e., the core of a VM should be mapped to a core of a PM. In this paper, we have proposed a Multi-Core Aware Virtual Machine Placement Algorithm (MCA-VMP). In MCA-VMP, the number of cores available in a PM and core-CPU capacity of a PM is considered instead of total CPU capacity of a PM. We used, Google Cluster Traces to generate the virtual machine configurations. Based on Google Cluster Traces the dataset is generated. Monte Carlo Simulation method is used to produce Google Cloud Jobs (GoCJ). Our simulation results shows that MCA-VMP is efficient than traditional non-Core Aware VMP algorithms. Our proposed algorithm MCA-VMP improves the performance of a DataCenter in terms of resource utilization, PM overload and resource wastage.