Tens of thousands of people have marched through central London to protest against UK government cuts to social welfare and public institutions.

"No ifs, no buts, no public sector cuts," the anti-austerity protesters chanted on Saturday, calling for increased investment in the health service, housing, education and public sector pay, as well as for protection on Britain's troubled steel industry.

Some protesters also demanded that Prime Minister David Cameron quit following revelations that he had shares in an offshore fund set up by his late father, holding up banners saying "Ditch Dodgy Dave" and "Cameron Must Go - Tories Out".

"For somebody in that position, you have a duty of care to the people of the country to be very open, very transparent. Just because something is legal doesn't always make it right," protester Sarah Henney told the AFP news agency.

The march was planned before Cameron's family finances were revealed in the so-called Panama Papers, but organising group The People's Assembly said it "proves that this is a government for the privileged few".

Trade union leaders and politicians addressed the crowd gathered in a rainy Trafalgar Square, with the opposition Labour party promising to end years of austerity imposed following the global financial crisis.

In a video message, Labour leader Jeremy Corbyn said: "The austerity we are in is a political choice, not an economic necessity."

READ MORE: Cameron fights back after criticism over finances

Cameron said he sold his offshore holdings before taking office in 2010 and denied allegations that his father had set up his fund to avoid paying tax.

But the row has put him under pressure at a difficult time, as he seeks to manage an increasingly bitter fight within his Conservative party over the upcoming referendum on EU membership.

Some 128 of the 330 Conservative MPs and several of Cameron's own ministers are campaigning against him in favour of leaving the EU ahead of the June 23 vote.

Veteran Tory MP Ken Clarke warned on Saturday that if Cameron loses the vote, he will be forced out of office.