Имах подобен проблем със запомнените процедури и при мен се оказа "параметър надушване". Потърсете го в Google и вижте дали решава проблема ви, за мен това беше драматично ускоряване, след като го поправих.
В моя случай го поправих, като декларирах локална променлива за всеки параметър, който беше предаден, и след това присвоих локалната променлива на тази стойност на параметъра, а останалата част от процедурата използва локалните променливи за обработка...по някаква причина, това отмени снифтинга на параметъра.