Guenadi N Jilevski's Oracle BLOG


Cache fusion impact on Oracle 11g RAC performance

Cache fusion impact on Oracle 11g RAC performance

RAC has a new feature called the cache fusion in comparison to OPS. Reads from disk are involved only if block is not available in the buffer caches of the other instances. Obviously accessing cache fusion is at a cost despite being faster than OPS. Cache cohesion is making logical global cache out of all the caches belonging to all RAC instances. We can determine cache fusion performance by all wait events and statistics. The cost of block access and cache coherency is represented by Global cache services statistics and Global cache services wait events.  Response time respectively cost is usually a lot less than I/O to disk but of course there is a room to improve the RAC performance. If you start ramping up the work load you could end up with performance problems although performance is better than reading from disk as the case with OPS. For example you have 2 instances and you want performance not to be 10% better but you want to be 90% better. The overhead in response time for the cache fusion transfers  are accounted by

Physical private interconnects – More than one interconnect is required, the more interconnects  the more redundancies and higher bandwidth for messages and cache fusion block transfer are available. Achieving low latencies is the objective. Private interconnects are required. Public corporate LAN might have a high bandwidth but have a low latency due to high retransmissions on encountered collisions. Interconnect depends on the speed that is set and redundancy.

IPC protocol – Oracle RAC tries to use IPC user mode inter process communication for sending data   from one node to another as it  does not require context switch and does not require kernel mode and runs in user application program mode.  IPC protocol depends on the vendor of the hardware.

GCS protocol – GCS protocol which  depends on IPC protocol and private interconnect and is not directly affected by disk I/O  except of disk I/O  for the log write I/O whenever a dirty block in the buffer cache that is send over the interconnect to another instance for cache fusion reason either in write-read or write-write situation. For example a block is updated in transaction in buffer cache in instance A and the very same block image is transferred  via the cache fusion traffic  mechanism to buffer cache in  instance C. We have to guarantee that redo log is written to the redo log files first. Other than that there is no much disk I/O performed. For example if there are  1000th updates will result in doing much more redo than doing more reads. Heavy updates transactions will incur more disk I/O for the redo than doing more reads. The cache fusion response time is not generally affected by disk I/O factors except for the occasional log write done when sending a dirty buffer to another instance in write-read or write-write situation.

December 13, 2009 - Posted by | oracle

No comments yet.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: