David MacDonald, 25, failed to take sufficient rest before the collision on the A9 with a vehicle being driven by 57-year-old Gordon Cooper.
MacDonald was driving north in a tanker between Dunkeld and Ballinluig on December 23, 2010, when it began to drift across to the opposite side of the road before smashing into the other vehicle.
Two teenage friends of MacDonald were accompanying him on the trip and one of them screamed at him moments before the fatal collision.
A judge told MacDonald at the High Court in Edinburgh that the victim was a family man who left a widow and two sons.
Lord Bracadale said he was conscious no sentence he imposed could bring back Mr Cooper or begin to compensate for his loss. The judge said: "The sentence cannot and is not intended to measure the value of the life of Mr Cooper."
The judge said he accepted that MacDonald had shown remorse and was carrying a considerable burden over what happened.
The judge told him he would have faced a jail sentence of four years and nine months but for his guilty plea. He also banned MacDonald from driving for seven years.