Typically Diesels don't make power until there is some heat built up in the cylinders, but there could be something going on with a sensor that is not sending correct temperature readings back to the ECU. You need a scanner to monitor the data when it is cold and hot to see if they are matching up. Sometimes the sensor my no be throwing a check engine light but it is tell the computer the motor is colder than what it is so it will not allow for the full fueling effect to protect the diesel motor.