Dinesh Chandimal came close to a century and Dhananjaya de Silva impressed as Sri Lanka made a strong start to the first Test against South Africa at Centurion.

Sri Lanka ended the first day on 340-6 after 85 overs as the two-match series got under way on Boxing Day.

Chandimal scored 85 from 161 deliveries with 11 fours, sharing key partnerships of 131 with De Silva and 99 with Niroshan Dickwella.

Sri Lanka were scoring freely, spending most of the day with their run-rate above four per over, and ultimately took control of the contest, helped by De Silva firing 79 from just 106 balls.

De Silva was forced to retire hurt with what looked like a thigh injury that was sustained as he went for a quick single.

Were it not for that blow and the impressive Wiaan Mulder (3-68) taking the key wickets of Chandimal and Dickwella (49) in the third session, the tourists would be in an even stronger position at the close.

Sri Lanka, hoping to beat South Africa in a third consecutive Test series, won the toss and elected to bat.

That decision looked questionable when captain Dimuth Karunaratne (22), Kusal Perera (16) and Kusal Mendis (12) were all back in the dressing room inside 11 overs.

But Chandimal combined with the big-hitting De Silva, who had 11 fours and one six, before continuing his team's progress with the assistance of wicket-keeper Dickwella.

South Africa's Lutho Sipamla (1-68 from 14 overs) made his Test debut but came in for some punishment before removing Wanindu Hasaranga (18) late on to open his account.

That means it is Dasun Shanaka (25 not out) and Kasun Rajitha (7no) who will return to the crease for Sri Lanka on Sunday.

Just one ranking point separates fifth-placed Sri Lanka from the Proteas in sixth and day one suggests a keenly contested and intriguing battle is in store.