Jannik Sinner drove Alexander Zverev to distraction with a composed performance to reach the knockout stages of the ATP Finals.

The Italian second seed maintained his bid for the year-end world number one ranking with a 6-4 6-3 win over third seed Zverev.

Sinner saved all seven break points he faced with his immense serve, with one ace leaving his 28-year-old German opponent biting his racquet in frustration.

The four-time major champion, 24, is the first player to reach the semi-finals in Turin.

Sinner must defend his title and hope rival Carlos Alcaraz loses his final group match against Lorenzo Musetti on Thursday and does not reach the final.

Earlier, Canadian Felix Auger-Aliassime kept his campaign alive with a 4-6 7-6 (9-7) 7-5 success over big-serving American Ben Shelton, who is now eliminated.

In many ways, this match was the epitome of the gap between world’s best Sinner, Alcaraz and the rest.

Zverev served well, created multiple opportunities and hung with Sinner for much of the match – and still ended up losing in straight sets.

Every time he had a break point, the Italian would simply slam down an ace or a service winner. The German would have the upper hand in a rally and immediately become too passive, allowing Sinner to unleash and take control of the point.

Zverev had two break points in the first game of the match and an opportunity in three of Sinner’s five second-set service games, and each one was saved.

There were moments when he used his forehand to outpace Sinner, but they were few and far between.

Sinner finished with 28 winners to 14 unforced errors, having dropped just eight points behind his first serve.

“I felt like I was serving very well in the important moments. I tried to play the best tennis possible when it mattered,” he said.

“Sascha played great tennis and I am very pleased with how I handled it.”