Solved

AIX (DSCR) and oracle prefetching

Posted on 2014-01-22
6
1,242 Views
Last Modified: 2014-01-22
what is AIX (DSCR) prefetching and how it works with Oracle?
our prod DB is showing:
dscrctl -q
Current DSCR settings:
        Data Streams Version  = V2.06
        number_of_streams     = 12
        platform_default_pd   = 0x4 (DPFD_MEDIUM)
       os_default_pd         = 0x0 (DPFD_DEFAULT)

what does this mean?
0
Comment
Question by:it-rex
  • 3
  • 3
6 Comments
 
LVL 68

Accepted Solution

by:
woolmilkporc earned 500 total points
ID: 39801187
Hi,

DSCR is hardware memory prefetch. It sometimes can improve the performance of applications, if they reference memory sequentially.

Oracle does not often perform sequential memory access, in fact Oracle's memory access is said to be "irregular", so aggressive prefetching can have an adverse effect on performance because the prefetched lines might not be referenced. Your setting is not very aggressive, though.

I must admit that I'm not a true Oracle tuning specialist, so be careful with the following.

If you're currently experiencing bad performance you could run this command

dscrctl -b -n -s 1

which will turn off memory prefetching (-b = persist across reboots, -n = apply changes immediately, -s 1 = set the dscr value to 1, which is DFPD_NONE).
Please watch the DB very thoroughly for the effect of this setting, and should you see a decrease in performance turn prefetching on again with

dscrctl -b -n -s 0

which will go back to your defaults.

wmp
0
 
LVL 11

Author Comment

by:it-rex
ID: 39801230
so what is the difference between
 os_default_pd         = 0x0 (DPFD_DEFAULT)
and the default of
 os_default_pd         = 0x5 (DPFD_DEFAULT)

?
0
 
LVL 11

Author Comment

by:it-rex
ID: 39801242
Sir..
Also i'm posting few AIX specific Q's and I really like to see your input about them..
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 
LVL 68

Expert Comment

by:woolmilkporc
ID: 39801328
0x0 sets os_default to platform_default, which is 0x4 DPFD_MEDIUM fot the machine shown in your question.

0x5 is not DPFD_DEFAULT, and also not platform_default, at least not on the machine you showed in your Q. There are machines whose platform_default is 0x5, but DFPD_DEFAULT is always 0x0!
0x5 is DFPD_DEEP, which is more aggressive than DPFD_MEDIUM
0
 
LVL 11

Author Comment

by:it-rex
ID: 39801351
so what do you suggest here?
0
 
LVL 68

Expert Comment

by:woolmilkporc
ID: 39801371
Leave it at 0x0 (the default which is DFPD_MEDIUM in your case) or turn it off according to my first comment - please read it again - in full!
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

I promised to write further about my project, and here I am.  First, I needed to setup the Primary Server.  You can read how in this article: Setup FreeBSD Server with full HDD encryption (http://www.experts-exchange.com/OS/Unix/BSD/FreeBSD/A_3660-S…
Every server (virtual or physical) needs a console: and the console can be provided through hardware directly connected, software for remote connections, local connections, through a KVM, etc. This document explains the different types of consol…
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.

867 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now