A Canadian tourist is among more than 900 people rescued from a ferry before it sank in the southern Philippines on Sunday.

The ship began to severely list shortly before dawn, jolting passengers, including Canadian Jeffrey Predchuz, out of their sleep. His hometown was not immediately available.

The captain, who was among the survivors, ordered passengers to abandon ship as the vessel turned on its side, 15 kilometres off Zamboanga del Norte province.

Most of the nearly 1,000 people who were on board made it to safety, but officials said at least nine people are dead and more than 30 others remain missing.

Rescuers transferred 926 of 968 passengers and crew members to two nearby commercial ships, a navy gunboat and a fishing boat, coast guard chief Admiral Wilfredo Tamayo said.

Some people panicked and leaped into the dark sea as the 6,600-tonne Superferry 9 tipped, a witness said.

A coast guard statement said rescue efforts were continuing through the night.

The cause of the sinking was not clear. There were reports the vessel listed to starboard because of a hole in the hull, the National Disaster Co-ordinating Council said.