hi there guys..

Need an advise from you experts.
I have a 2003 e46 320i and it has power issues, so far only in the morning or when engine is cold.
In the morning when i start the car the engine for the first time, it seems normal until after a few seconds the rpm goes up and down from 300 to 900.
then after a couple of minutes or so it goes back normal, but it doesn't end there. When i floor the pedal, the rpm only goes up till 4000 and there is no power.
There are no fault codes or any sort of lights on the dash.
Then recently i realized if i switched of the engine and restart the car it gets back the power somehow.
So nowadays in the morning i dont have to get up extra early to heat up the engine cause its clearly not a cold issue.
I just start the car and try flooring the pedal.. sometimes it has power so i just drive off but sometimes i just switch off the engine and restart the car again.
I know this is not normal but i need your sincere advise, as different foreman tells me different things. So im just holding on till i know whats really wrong before they choke me to death.
Kindly help me guys.. thank you in advance.