Due to size, longevity, safety, and recharging concerns, energy harvesting is becoming a better choice for many wearable embedded systems. However, harvested energy is intrinsically unstable. In order to overcome this drawback, nonvolatile processors (NVPs) was proposed to bridge intermittent program execution. However, even with NVPs, frequent power interruption will severely degrade system performance. In this paper, we will propose a multi-source energy harvesting system to combine multiple harvesting sources to provide a more stable power supply using real-life ambient in-door irradiation level and thermal energy power trace. Maximum power extraction and converter parameter optimization techniques will be discussed. Experimental results show that by optimizing the MOSFET switch size in DC-DC converters between the harvesting system and NVPs, the average output power of the multi-source harvesting system can be increased. The proposed architecture is very promising in providing a stable energy source for NVPs.