RE: db_file_multiblock_read_count 10g default values

  • From: "Allen, Brandon" <Brandon.Allen@xxxxxxxxxxx>
  • To: Greg Rahn <greg@xxxxxxxxxxxxxxxxxx>, "oracle-l@xxxxxxxxxxxxx" <oracle-l@xxxxxxxxxxxxx>
  • Date: Thu, 5 Nov 2009 14:21:12 -0700

I've confirmed that it is based (at least partly, if not entirely) on the 
db_cache_size as you can see below.  I think the reason my numbers were varying 
before is because I was using auto memory management, so the values I was 
looking at for the db cache had changed since instance startup, but the 
db_file_multiblock_read_count seems to only get adjusted at startup time.

If you plug all the values below into a spreadsheet, it looks like the formula 
is roughly db_file_multiblock_read_count=db_cache_size/db_block_size*.003.  To 
put it another way, the maximum size of a multiblock read 
(db_file_multiblock_read_count*db_block_size) is equal to .3% of the 
db_cache_size, up to the max IO size of the OS, which is 1MB (or 128*8k) in my 
case.

Regards,
Brandon

Consolidated spreadsheet:

db_cache_size  dbfmbrc  dbfmbrc*db_block_size(8k)  
dbfmbrc*db_block_size/db_cache_size
-------------  -------  -------------------------  
--------------------------------------
117440512      41       335872                     0.29%
167772160      59       483328                     0.29%
218103808      76       622592                     0.29%
318767104      112      917504                     0.29%
419430400      128      1048576                    0.25%
1073741824     128      1048576                    0.10%

Raw data:

SYS@demo>alter system set db_cache_size=100m;

System altered.

SYS@demo>@parms

NAME                           VALUE
------------------------------ ----------
db_cache_size                  117440512
db_file_multiblock_read_count  41

SYS@demo>alter system set db_cache_size=150m;

System altered.

SYS@demo>startup force;

SYS@demo>@parms

NAME                           VALUE
------------------------------ ----------
db_cache_size                  167772160
db_file_multiblock_read_count  59

SYS@demo>alter system set db_cache_size=200m;

System altered.

SYS@demo>startup force;

SYS@demo>@parms

NAME                           VALUE
------------------------------ ----------
db_cache_size                  218103808
db_file_multiblock_read_count  76

SYS@demo>alter system set db_cache_size=300m;

System altered.

SYS@demo>startup force;

SYS@demo>@parms

NAME                           VALUE
------------------------------ ----------
db_cache_size                  318767104
db_file_multiblock_read_count  112

SYS@demo>alter system set db_cache_size=400m;

System altered.

SYS@demo>startup force

SYS@demo>@parms

NAME                           VALUE
------------------------------ ----------
db_cache_size                  419430400
db_file_multiblock_read_count  128

SYS@demo>alter system set db_cache_size=1g;

System altered.

SYS@demo>startup force

SYS@demo>@parms

NAME                           VALUE
------------------------------ ----------
db_cache_size                  1073741824
db_file_multiblock_read_count  128


-----Original Message-----
From: Greg Rahn [mailto:greg@xxxxxxxxxxxxxxxxxx]

I do know for sure it is related to parameters . . .

Privileged/Confidential Information may be contained in this message or 
attachments hereto. Please advise immediately if you or your employer do not 
consent to Internet email for messages of this kind. Opinions, conclusions and 
other information in this message that do not relate to the official business 
of this company shall be understood as neither given nor endorsed by it.
--
//www.freelists.org/webpage/oracle-l


Other related posts: