Frequently used procedures can (and generally should) be pinned in the shared pool.
Why: Frequently loading and reloading stored procedures, packages, and triggers into the shared pool is a relatively expensive operation for the server. By pinning packages in the shared pool, the amount of CPU used to reload packages will be minimized.
How to do it: To pin a package in
the shared pool use the following
command:
execute dbms_shared_pool.keep('SCHEMA.PACKAGE','P')
Note: Create a startup trigger to
pin these packages whenever the
database starts up.


