Your car has entered a special 'Limp mode' which is designed to help a stranded driver limp home after a problem. In this case an issue related to electronic throttle/electronic power control between the cars computer and how it regulates engine variables based on your driving.
You ddefinitey have a problem that at the very least must be identified first and then possibly corrected by replacing a faulty part or resetting a faulty CPU.
You should stop driving the car iimmediately if possible.
The first thing you need to do is have someone 'pull the codes' almost any mechanic anywhere can do this for you and generally it is only a few dollars at most. They do this by plugging in a small computer under the steering wheel to check the 'obd' onboard diagnostics. whenever the car has a problem it sets off a code that can be pull up later to determine what exactly is wrong. Once they pull the code they will be able ot tell you what the issue is. It could be somethign as minor as a loose throttle wire or some type of larger major part failure, getting the code is the only way to find out for sure.
The scope of EML design on BMW engines provides:
• Throttle valve positioning for optimum starting
• Precise idle speed regulation without the use of an external idle control valve/circuit
• Progressive throttle opening curves matched to the driving program (with EGS/AGS inter-
• Cruise control operation without additional control modules and linkages
• Automatic synchronization of the throttles (airflow balancing) for two independent banks,
throughout the entire engine speed range (M70, S70, M73 engines only)
• Intake air volume control for ASC/DSC (Automatic Slip Control/Directional Stability Con-
• Maximum road speed limiting
• Emergency "Failsafe" operation in the event of component failure