Number one Novak Djokovic lined up a Montreal Masters semi-final with a second straight French opponent after defeating fifth seed Gael Monfils 6-2, 6-1 on Friday.
Djokovic, playing his first event on the ATP top ranking, will on Saturday face 13th seed Jo-Wilfried Tsonga, who followed up his third-round upset of two-time winner Roger Federer with a win over Spain's Nicolas Almagro 6-4, 6-4.
"I have played the best match of the tournament, no doubt," Djokovic said. "Everything was going well. I had a difficult game on 2-2 to hold my serve. After that, when I made the first break it was incredible, nine, 10 games in a row.
"I'm happy to see my game is progressing each day."
Tsonga needed one break per set and less than 90 minutes to dispatch Almagro, firing ten aces and saving three points in the final game for victory.
"I was a bit tired today, I lacked energy," said Tsonga. "The (Federer) match took a lot of stamina. I focused on only a number of return games and holding my serve.
"It was a way for me to save the energy I had left, not playing hard in every game."
Tsonga, now 6-0 over Almagro, duplicated his final four showing from 2009, his only previous Canadian appearance.
"I'll play a semi-final, it will be big to win it and play a final."
Djokovic mowed down Monfils for a 51st win this season from 52 played as he moves to within a pair of victories of a ninth title this season.
The Serb was untroubled as he moved through, last survivor among the tennis elite after early eliminations for Rafael Nadal, Federer and Andy Murray.
"I played really, really fast and tried to constantly put pressure on Gael because I didn't want to give him any time to get back to the match or to think about what he's going to play.
"I mean, my overall performance was fantastic," Djokovic said.
Sixth seed Mardy Fish ended Swiss hopes here, running away with the final set in a 6-3, 6-7 (8/10), 6-0 defeat of Stanislas Wawrinka.
The 14th seed followed Swiss compatriot Federer out of the event.
Wawrinka rallied to win the second set in a tight tiebreaker but collapsed in the final set to hand over victory to sixth seed Fish in two hours, 21 minutes.
Fish, the top American on the ATP Tour, next faces Serb Janko Tipsarevic who defeated seventh-seeded Czech Tomas Berdych 6-4, 6-4.
"The second set was very strange for both of us," said Fish, who won the match with six aces and a massive 10 breaks of the Wawrinka serve.
"There were a lot of variables. We couldn't hold serve to save our lives, but we returned really well. There's the positive, I guess.
"To dwell on how you played, you're going to have some problems. It's nice that I'm able to move on and to be able to rectify my serve game."
The victory continues a career success story for the 29-year-old Fish, who had never won a match at the event before this week.
In fact, the world number eight American has been a stranger in Canada, playing only in 2003 and 2008.
"It's a fluke, having played here only a couple of times. I've played the US Open probably 12 times. I've played Cincinnati (next week's tournament) probably 10 or 11 times," he said.
"But it's certainly nice to be here and to play on these courts because they are pretty quick, and they suit my game very well. I can get away with not playing great tennis but still winning."
Wawrinka had won three matches in a row this week for the first time since Roland Garros and was playing his second straight quarter-final after Gstaad at home on clay.
"It was a bad day today for me, I was not feeling the ball very well," said the Swiss. "Even if I won the second set, I didn't feel comfortable."
Fish has now won 10 of 11 matches on North American summer hardcourts, winning the Atlanta title last month before finishing runner-up in Los Angeles to Ernest Gulbis.