Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Mailing Lists -> Oracle-L -> Re: L2 cache vs. faster processor

Re: L2 cache vs. faster processor

From: Mladen Gogala <>
Date: Wed, 14 Jul 2004 16:13:25 -0400
Message-ID: <>

Definitely L2 cache. My numbers may be a little bit out of date, but the story remains the same. L2 cache is a sequential 15ns portion of memory which caches your RAM. L1 cache is very small, typically 64k or 128k set associative RAM. There is also something called TLB which is a fully associative buffer with 64 locations. The rest of your RAM is 50ns SDRAM, with "burst mode". So, what happens in a VM system when program requires the value of the variable in the address X? CPU has to resolve the location X. In order to resolve the location X, it will have to go to memory and fetch the page table first. Then it will look through the page table, find the address and again go to memory and get the page itself. That means that resolution of each address needs 2 accesses to the main memory, which is equally fast, regardless of the CPU. If no L2 cache is present, efficiency of L1 cache is approximately 25%. L1 cache is invalidated as soon as someone issues a jump, like, let's say. a call to a subroutine (fashionable expression is "method"). L2 cache only cache physical pages, in order to help the execution. Together with L1, the typical efficiency is around 70%-90%, depending on the size of L2 cache. One other thing to know is that the speed of waiting is equal on both 3GHZ chip and 2GHZ chip. 3GHZ chip waiting 3 times for 100 nsec access to RAM will spend 300nsec of its time waiting, while 2GHZ chip with L2 cache will be working.... The only programs that will be faster on 3GHZ chip without L2 cache are the ones that are written with locality of reference in mind, and which don't do nasty things like context switches (every system call, like I/O) of call subroutines. Ultimately, the answer depends on what you want to do. If you are a rocket scientist designing ship for the mission to Mars with Carrie Ann Moss, you'll probably want 3GHZ without L2 cache. For oracle, on the other hand, you do want L2 cache.
On 07/14/2004 03:23:16 PM, Terry Sutton wrote:
> A client is ordering hardware for an Oracle on Linux system, and has to choose between 2.8 GHz Xeon processors with 1MB L2 cache and 3.06 GHz Xeon processors (no L2 cache). Does anyone have any recommendations on the value of L2 cache vs. a faster processor?
> --Terry
> ----------------------------------------------------------------
> Please see the official ORACLE-L FAQ:
> ----------------------------------------------------------------
> To unsubscribe send email to:
> put 'unsubscribe' in the subject line.
> --
> Archives are at
> FAQ is at
> -----------------------------------------------------------------

Mladen Gogala
Oracle DBA
Wang Trading LLC
Tel: (203) 956-6826

This message is for the named person's use only.  It may contain confidential, proprietary or legally privileged information.  No confidentiality or privilege is waived or lost by any mistransmission.  If you receive this message in error, please immediately delete it and all copies of it from your system, destroy any hard copies of it and notify the sender.  You must not, directly or indirectly, use, disclose, distribute, print, or copy any part of this message if you are not the intended recipient. Wang Trading LLC and any of its subsidiaries each reserve the right to monitor all e-mail communications through its networks.
Any views expressed in this message are those of the individual sender, except where the message states otherwise and the sender is authorized to state them to be the views of any such entity.

Please see the official ORACLE-L FAQ:
To unsubscribe send email to:
put 'unsubscribe' in the subject line.
Archives are at
FAQ is at
Received on Wed Jul 14 2004 - 15:12:08 CDT

Original text of this message