World number three Daniil Medvedev booked his place in the China Open men's semi-finals with a 6-4, 3-6, 6-1 victory over France's Ugo Humbert in Beijing on Monday.
An error-strewn first set saw a combined five breaks of serve but Medvedev edged ahead in the ninth game and finished it off with an ace.
Both men were more consistent in set two until the Russian, at deuce, hit back-to-back double faults to hand the crucial break to Humbert.
But Medvedev finally tightened up in the decider, notching two quickfire breaks before seeing out the match on his serve.
The 27-year-old will battle it out with either world number 10 Alexander Zverev or Chilean Nicolas Jarry for a place in the final.
World number two and tournament favourite Carlos Alcaraz is due to play his quarter-final against Casper Ruud on Monday evening.
Top-ranked men's player Novak Djokovic is not playing the China tournaments this season.
In the first round of the women's draw, world number two Iga Swiatek defeated Spain's Sara Sorribes Tormo in straight sets.
The Pole, who recently relinquished her hold on the number-one spot to Aryna Sabalenka, enjoyed significant success at the net on her way to a 6-4, 6-3 victory.
Swiatek will play France's Varvara Gracheva in the second round.
"I feel like I was pretty patient. You have to be patient with her because she's running for every ball," Swiatek said after the match.
"I kind of wanted to just be solid and be intensive but not make too many mistakes with risking," she said.
"I'm pretty happy I could balance that. It just worked, so I'm happy," said the 22-year-old.
Also on Monday, world number 10 Caroline Garcia cruised through with a 6-2, 6-4 win over Ukrainian Kateryna Baindl.
Sabalenka knocked out former Australian Open champion Sofia Kenin on Sunday to seal her spot in the second round.
The China Open is taking place for the first time since 2019 after Beijing abandoned its long-standing zero-Covid policy.