Thanks. As an aside, while we're having memory/paging issues, is there a good way to tell if our SGA is in fact too large? One of the challenges that we face is that one of the heavier-used applications does not use prepared statements and that has the potential to pollute the shared pool. We enable cursor-sharing at the session level for these users. On Wed, Mar 10, 2010 at 2:51 PM, Jared Still <jkstill@xxxxxxxxx> wrote: > Neil, > > You may want to try running the attached script pga_advice > to see how much PGA Oracle thinks you need to meet current usage. > > The script pga_workarea_active.sql will show how the memory > is being used. It doesn't show which sessions, I don't think I > have a query for that, but someone else posted the tables needed > if you want to figure that out. > > Jared Still > Certifiable Oracle DBA and Part Time Perl Evangelist > Oracle Blog: http://jkstill.blogspot.com > Home Page: http://jaredstill.com > > > > > On Wed, Mar 10, 2010 at 11:42 AM, Neil Kodner <nkodner@xxxxxxxxx> wrote: > >> Great advice. I'll look at sessions by PGA usage in v$process. I didn't >> realize that the pga_aggregate_target was that soft of a limit. Is there a >> better source for determining exactly what, at the session level, is eating >> up the PGA memory? >> >> What are some factors that can contribute to sessions using, and hanging >> on to pga? >> >> As far as parallel goes, we're not doing a whole lot during business >> hours. >> >> On Wed, Mar 10, 2010 at 10:51 AM, Paul Drake <bdbafh@xxxxxxxxx> wrote: >> >>> Neil, >>> >>> It looks like you have some memory free in the large and java pools. >>> Is this running with automatic memory management? >>> Still, that's not in the ballpark of a pga that should be 6 GB going to >>> 14 GB. >>> >>> It appears that the max pga_aggregate used was around 14 GB. >>> You appear to be on the right track. >>> Its not that the pga_aggregate_target setting is too small, its that >>> it isn't being respected. >>> You're probably going to want to drill down into pga mem usage. >>> Perhaps you have a few sessions that would be better off with a manual >>> workarea policy. >>> Is there a large amount of parallel work going on? >>> >>> If you hike the value for pga_aggregate_target, it might make the >>> problem worse as Oracle may extrapolate into using even larger amounts >>> of pga memory (than the peak of 14 GB). >>> >>> Paul >>> >>> >>> On Wed, Mar 10, 2010 at 12:14 PM, Neil Kodner <nkodner@xxxxxxxxx> wrote: >>> > Our 32gb solaris 9 server running two instances of 10gr2 >>> > One small db to support OID (sga max size 288M, pga aggregate 32M) and >>> one >>> > of our production dbs(6gb pga aggregate target, 12gb sga_max_size). >>> > According to top, before the workday starts, we are sitting at 10-12gb >>> > available physical memory. Once our users get working, that number >>> drops to >>> > 500-600mb available. Top reports 29G swap in use, 11G swap free. OEM >>> says >>> > that we're performing heavy swapping and I'm not sure how to resolve >>> this. >>> > We typically have 1500-1700 connections. My gut tells me that pga >>> might be >>> > too small and that sga is too large, but i'm not really able to tell. >>> > My v$pgastat and v$sgastat can be viewed at >>> > >>> http://spreadsheets.google.com/ccc?key=0ArUTHdqN0J--dFZBNE0wU0JpUW1Na1hVYlBfeFVYOEE&hl=en >>> > >>> > >>> >> >> >