The intrinsic nature of non-independent and identically distributed datasets on heterogeneous devices slows down the distributed model training process and reduces the training accuracy. To settle this problem, we propose a dataset reconstruction scheme to transform the data distribution of training device’s dataset into independent and identically distributed dataset via data exchange among trusted devices. For energy efficiency, we further consider power control for the devices. We then formulate an optimization problem, which is a mixed integer non-linear programming problem, to minimize the total energy consumption for each round of distributed training. Due to the NP-hardness and coupling property of the optimization problem, we decompose it into two subproblems for dataset reconstruction and power control, respectively. An approximation algorithm is designed to obtain a near-optimal auxiliary devices set for dataset reconstruction with minimum energy consumption, while meeting the variance constraint of the optimization problem. We prove that approximation algorithm has a worst-case approximation ratio of 1+ln|Ωi(t)|, where |Ωi(t)| is the required data samples for dataset reconstruction of each training device. For power control, we design a dynamic programming algorithm to further reduce the energy consumption. For comparison, we propose three benchmark schemes that adopt either one of the algorithms or neither. We also customize three baseline algorithms based on the state-of-the-arts to compare with our proposed algorithm. Numerical results show that, our proposed algorithm outperforms three benchmarks on the average energy consumption for one round for different cases. When varying the labels that each device owns, our proposed algorithm outperforms the other three baseline algorithms on training accuracy. Besides, when setting a target accuracy, our proposed algorithm always has the lowest energy consumption.