"I accept it takes time but I think the important thing is to get on the right track," added Cameron who paid an historic visit on Friday to the island's war-torn north.
"This issue is not going to go away, it's an issue of international concern."
The UN and rights group say as many as 40,000 civilians may have been killed in the final stages of the civil war in May 2009.
However Sri Lankan President Mahinda Rajapakse has denied any civilian was killed.
He has also blocked all calls for an independent probe into claims of war crimes committed by government forces against the Tamil population in the northern Jaffna region.
Read: Cameron visits Jaffna; Khurshid sad PM could not
Cameron said Rajapakse wanted more time to address the claims but put him on notice to deliver by March or else he would push for an international investigation through the auspices of the UN human rights council.
"I sense that they do want to make progress on these issues and it will help having international pressure to help make that matter," said Cameron.
Asked about his meeting on Friday night with Rajapakse, Cameron said "very strong views were expressed on both sides".
"It was a very frank and clear meeting, a frank exchange of views.... Of course not everything I said was accepted."
Read: Sri Lanka: Tamil protesters mob British PM David Cameron’s car