Performance testing is to ascertain how the components of a system are performing in a particular situation. Load testing is to test the system by constantly and steadily increasing the load on the system till the time it reaches the threshold limit. And as for stress testing, various activities to overload the existing resources with excess jobs are carried out in an attempt to break the system down.
Performance testing mainly aims to estabilsh the benchmark behaviour of the system, while load testing are to expose the defects in application related to buffer overflow, memory leaks and mismanagement of memory and stress testing is to analyse post-crash reports to define the behaviour of application after failure.
Source: http://www.softwaretestinghelp.com/what-is-performance-testing-load-testing-stress-testing/