Първо проверете дали получавате разумна IO производителност от настройката на вашия диск. След това проверете дали вашата инсталация на PostgreSQL е правилно настроена. По-специално shared_buffers трябва да бъде зададен правилно, maintenance_work_mem трябва да се увеличи по време на възстановяването, full_page_writes трябва да е изключен по време на възстановяването, wal_buffers трябва да се увеличи до 16MB по време на възстановяването, checkpoint_segments трябва да се увеличи до нещо като 16 по време на възстановяването, не трябва да имате никакво неразумно влизане (като регистриране на всеки изпълнен израз), auto_vacuum трябва да бъде деактивиран по време на възстановяването.
Ако сте на 8.4, също експериментирайте с паралелно възстановяване, опцията --jobs за pg_restore.