Roger Federer saw off the challenge of resurgent fellow Swiss Stan Wawrinka to reach the semi-finals of the Cincinnati Masters on Friday.

Federer has won all seven of the finals he has appeared in at the ATP Masters 1000 event in Ohio, and is on course to triumph for the first time as a 37-year-old, having come from behind to beat Wawrinka 6-7 (2-7) 7-6 (8-6) 6-2 after two hours and 19 minutes.

It was stern test of Wawrinka's progress in recovering from long-term knee trouble, and he passed with flying colours, until fatigue crept up on the three-time grand slam winner.

Federer, meanwhile, advances to a semi-final against David Goffin, with Novak Djokovic or Marin Cilic awaiting in the final.

Both players could have been forgiven for being somewhat below their best late on Friday at the Lindner Family Tennis Center, having been required to finish their third-round matches earlier in the day due to bad weather interrupting Thursday's schedule.

Wawrinka had beaten Marton Fucsovics in straight sets, while Federer overcome Leonardo Mayer, also in two. 

There was little indication they were feeling the residual effects of those exertions, though, as the first set remained on serve. 

With both players near their consistent best, Wawrinka saved two break points in the sixth game, while Federer offered his compatriot none.

The older man looked poised to take the opener when he was presented with two break-point and set-point opportunities in the 12th game, but Wawrinka dug deep to save the first with a forehand down the line, before staving off the other by coming to the net and forcing Federer to send a forehand passing shot long.

Unexpectedly, the resulting tie-break rapidly got away from Federer, who netted a routine overhead and made another poor forehand error to allow Wawrinka to take it with ease. 

The second set proved a similar affair, but this time it was Wawrinka's turn to blink in the tie-break, as he immediately gave up a mini break to fall behind. And when the 33-year-old's attempted backhand down the line sailed wide, the match was level at 1-1.

Wawrinka eventually ran out of energy in the third set, giving up his serve for the first time in the sixth game when he came to the net and could not get enough of his racquet on a Federer passing shot.

And from there, the senior partner in the iconic Swiss duo pulled clear in imperious fashion, consolidating and then breaking again to love to take it on the first of three match points, when Wawrinka sent a forehand long.