Professional Documents
Culture Documents
Oracle® EPM, Fusion Edition: Infrastructure Performance Tuning Guide
Oracle® EPM, Fusion Edition: Infrastructure Performance Tuning Guide
Change History
Disclaimer:
All tuning information stated in this guide is only for orientation, every modification has to be tested
and its impact should be monitored and analyzed. Before implementing any of the tuning settings, it
is recommended to carry out end to end performance testing that will also include to obtain baseline
performance data for the default configurations, make incremental changes to the tuning settings and
then collect performance data. Otherwise it may worse the system performance.
1
TABLE OF CONTENTS
INTRODUCTION ................................................................................................................. 4
2
6.3 TROUBLESHOOTING .................................................................................................... 86
3
INTRODUCTION
This document is written for people who monitor performance and tune the
components in an EPM environment. It is assumed that readers know server
administration and hardware performance tuning fundamentals, web servers, java
application servers and database.
4
• Throughput
o A rate metric (requests per unit of time), for example, requests per
second, bits per second. For example, if an application can handle
20 customer requests simultaneously and each request takes one
second to process, this site has a potential throughput of 20
requests per second.
- Business process usage - Activities carried out by users in the normal flow of
your business cycle.
o Business process usage has three components:
User activity—Activities available to users for data load or data
entry, database processing (consolidations, copy, clear, and so on),
and reporting and analysis.
5
2.0 TOP TUNING RECOMMENDATIONS FOR EPM SYSTEM
Performance tuning Oracle® EPM system is a complex and iterative process. To get
you started, we have created a list of recommendations to help you optimize your
Oracle® EPM system performance.
This chapter includes the following sections that provide a quick start for
performance tuning Oracle® EPM products. Note these performance tuning
techniques are applicable to nearly all Oracle® EPM products such as Financial PM
Applications, Essbase, Reporting and Foundation services.
2.4 Tune 64bit Java Virtual Machines (JVM), including ADF parameters.
Note: While the list in each of the above stated section is a useful tool in starting
your performance tuning, it is not meant to be comprehensive list of areas to tune.
You must monitor and track specific performance issues within your EPM
application to understand where tuning can improve performance. See
"Performance Monitoring EPM System" for more information.
6
2.1 Tune Operating Systems parameters
Proper OS tuning might improves system performance by preventing the occurrence
of error conditions. Operating system error conditions always degrade performance.
The following sections describe issues related to operating system performance:
7
the reserved privileged/root ports (0-1024) plus whatever is
not covered by your ephemeral port range.
For more information about Linux tuning, you should consult your Linux
documentation. Note the above TCP/kernel tunable parameters and their
corresponding values are provided as examples and rough guidelines only. You can
re-adjust these and other parameters based on actual system load, usage patterns
such as the number of concurrent users and sessions and so on.
8
2.1.2 Windows 2008 Tuning Parameters
This topic describes how to tune the Windows 2008 operating system to optimize
the performance of your Oracle® EPM System.
Tip: By default, the start port is 49152, and the default end
port is 65535, this means there are 16383 usable dynamic
ports. *Use the following “netsh” command to configure start
port and the range:
netsh int ipv4 set dynamicport tcp start=1025 num=64508
9
Set the power option setting to "High performance" Balanced High Performance
With High Performance power scheme, processors are always
locked at the highest performance state. Refer to below
section 2.1.2.1 for performance benchmark on two power
plans. Important Note: For more details, read MS KB article:
http://support.microsoft.com/kb/2207548
Tip: How-to change a power plan:
1. Under Control Panel click on Power Options.
2. Choose the “High Performance” option
3. Close the Power Option window.
10
2.1.2.1 Performance benchmark using “Balanced” versus “High Performance”
HFM consolidation test showed 25% performance improvement when using the
"High Performance" power plan versus the "Balanced" (default) power plan. Note on
HFM application / database servers it has been observed CPU core down-clocking
from 2.66GHz to 1.5GHz. This means that “Balanced” power management is in
effect on the Xeon processor, which has lowered its clock speed to save power.
11
2.1.3 Windows 2003 Tuning Parameters
This topic describes how to tune the Windows 2003 operating system to optimize
the performance of your Oracle® EPM System.
Parameter Default Value Suggested Value
TcpTimedWaitDelay 240 30
This parameter controls the amount of time the OS
waits to reclaim a port after an application closes a TCP
connection, has a default value of 4 minutes. During a
heavy users load, these limits may be exceeded
resulting in an address in use: connect exception.
Tip: In registry set this parameter using following:
HKLM\System\CurrentControlSet\Services\Tcpip\Para
meters
Value: TcpTimedWaitDelay
Value Type: dword
Data: 30 (decimal)
Disable Data Execution Prevention (DEP) /noexecute=alwayso /noexecute=always
Data Execution Prevention (DEP) is a set of hardware n /pae off /pae
and software technologies that perform additional
checks on memory to help prevent malicious code from
running on a system. In Microsoft Windows 2003
Server, DEP is enforced by hardware and by software.
The problem is that java and EPM programs are
considered as malicious codes by default, which will
have a very negative impact on performances by giving
extra CPU time (up to 50%) and slowness on processes
running.
To completely disable DEP in Windows Server 2003,
perform the following with administrative credentials:
1. Open Windows Explorer
2. Tools > Folder Options > View
3. Uncheck Hide Protected operating system files
(Recommended) and Hide extensions for known file
types
4. Click apply > OK
5. Browse to C:\
6. Right click on boot.ini, select properties and ensure
the “read-only” tab is unchecked and click OK
7. Edit boot.ini
8. Modify the /noexecute=
For example, set /noexecute=AlwaysOff to disable DEP
entirely
9. File > Save, close boot.ini file
10. Right click on boot.ini, select properties and ensure
the “read-only” tab is checked and click OK
11. Reboot the computer
Important Note: Available documentation is here :
12
http://msdn.microsoft.com/en-us/library/ff542275.aspx
http://support.microsoft.com/kb/875352
Scanning mechanism for ORACLE_HOME folder Scan all Exception for
When using EPM or java based products, you should ORACLE_HOME
turn off scanning mechanisms (for example, anti-virus, folder
Windows Automatic Updates). Running these in
conjunction with EPM or java based products may
result in unexpected behavior. When enabled we saw
very negative impact on performances by giving extra
CPU time (up to 50%) and slowness on processes
running.
MaxUserPort 5000 65534
The number of user-accessible ephemeral ports that can
be used to source outbound connections is configurable
using this parameter.
Tip: In registry set this parameter using following:
HKLM\System\CurrentControlSet\Services\Tcpip\Para
meters
Value: MaxUserPort
Value Type: dword
Data: 65534 (decimal)
Tune Windows 2003 (x86 32 bit) /3GB switch
Important Note: Using only the /3GB switch allocates 1 GB to the kernel and 3 GB to the User-mode
space. Therefore it is strongly recommended to implement following settings when /3GB switch is
applied, in order to make sure Essbase, HFM and Windows stability:
1. Using a range of memory for the /userva=xxxx switch that is within the range of 2900 to 3030.
The following sample boot.ini file demonstrates how to use the new switch to tune a server to allocate
2,900 MB of User-mode virtual memory and 1,196 MB of Kernel-mode virtual memory. This increases
the available kernel space by 172 MB:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Enterprise" /fastdetect
/NoExecute=OptOut /3GB /Userva=2900
2. Increase the SystemPages in registry: The setting being updated controls the allocable memory for
the operational system caches, file caches among others, and the value being set will tell Windows to
calculate the value itself on the side of the maximum allowable resources.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management
Open the Data: SystemPages
Enter its new value (hex): FFFFFFFF
13
2.1.4 AIX Tuning Parameters
This topic describes how to tune the AIX (6.1 / 7.x) operating system to optimize the
performance of your Oracle® EPM System.
14
AIXTHREAD_COND_DEBUG - -
Maintains a list of condition variables for use by AIXTHREAD_COND_ AIXTHREAD_COND_DEB
the debugger. If the program (e.g. Essbase) DEBUG=OFF UG=OFF
contains large number of active condition
variables and frequently creates and destroys
condition variables, this might create higher
overhead for maintaining the list of condition
variables. Setting the variable to OFF disables the
list.
AIXTHREAD_MUTEX_DEBUG - -
Maintains a list of active mutexes for use by the AIXTHREAD_MUTEX_ AIXTHREAD_MUTEX_DE
debugger. DEBUG=OFF BUG=OFF
If the program (e.g. Essbase) contains a large
number of active mutexes and frequently creates
and destroys mutexes, this might create higher
overhead for maintaining the list of mutexes.
Leaving the variable set to OFF disables the list.
AIXTHREAD_MNRATIO - -
Controls the scaling factor of the library. This ratio AIXTHREAD_MNRATI AIXTHREAD_MNRATIO=
is used when creating and terminating pthreads. O=8:1 1:1
Two positive values (p:k), where k is the number
of kernel threads that should be employed to
handle the number of executable pthreads defined
in the p variable. Might be useful for applications
with a very large number of threads. However,
always test a ratio of 1:1 because it might provide
better performance.
AIXTHREAD_MUTEX_FAST - -
Enables the use of the optimized mutex locking AIXTHREAD_MUTEX_ AIXTHREAD_MUTEX_FA
mechanism. FAST=OFF ST=ON
Setting the variable to ON forces threaded
applications to use an optimized mutex locking
mechanism, resulting in increased performance.
If the program experiences performance
degradation due to heavy mutex contention, then
setting this variable to ON will force the pthread
library to use an optimized mutex locking
mechanism that works only on process private
mutexes. These process private mutexes must be
initialized using the pthread_mutex_init routine
and must be destroyed using the
pthread_mutex_destroy routine.
AIXTHREAD_SCOPE - -AIXTHREAD_SCOPE=S
Controls contention scope. A value of P signifies AIXTHREAD_SCOPE=
process-based contention scope (M:N). A value of P
S signifies system-based contention scope (1:1). If
fewer threads are being dispatched than expected,
try system scope.
15
YIELDLOOPTIME - YIELDLOOPTIME=0 -YIELDLOOPTIME=20
Controls the number of times to yield the
processor before blocking on a busy lock (only for
libpthreads). The processor is yielded to another
kernel thread, assuming there is another runnable
kernel thread with sufficient priority.
If threads are going to sleep often (lot of idle
time), then the YIELDLOOPTIME might not be
high enough.
Increasing the value from the default value of 0
may benefit you if you do not want the threads to
go to sleep while they are waiting for locks.
SPINLOOPTIME - SPINLOOPTIME=40 -SPINLOOPTIME=500
Controls the number of times the system will
retry a busy lock before yielding to another
process. The default value is 40. This should be
increased to 500 or higher because a busy lock
retry is inexpensive compared to the alternative.
Use the tprof command to determine if the
check_lock routine has high CPU usage. If it does,
you can increase the value even more.
MALLOCOPTIONS Disabled -
This environment variable enables the use of MALLOCOPTIONS=multi
multiple memory heaps. In a highly threaded heap:16,considersize
environment (e.g. Essbase), many threads can
request memory at the same time. With only one
heap, these requests can serialize and create wait
situations. With this variable, multiple heaps are
generated that are used to serve memory-
allocations requests and reduce memory-
allocation latency
For more information about AIX tuning, you should consult your AIX vendor’s
documentation. Note the above TCP/kernel tunable parameters and their
corresponding values are provided as examples and rough guidelines only. You can
adjust these and other parameters based on actual system load, usage patterns such
as the number of concurrent users and sessions and so on.
16
Important Note to remember for Essbase only: In some cases for AIX 5.3/6.1 the
default Virtual Memory Manager (VMM) settings are not optimal for an Essbase
environment. Common symptoms include high paging, high system CPU time and
slow overall system throughput. Therefore in this scenario, it is recommended to
lower maxperm/maxclient to get good performance.
Important Note to remember for Essbase BSO only: In some cases for AIX
5.3/6.1/7.x the disks are configured in JFS2 for Essbase. AIX classifies memory into
two categories: file cache and working storage. Over time, memory use grows with
both types of memory. AIX will eventually need to free memory and it can do so by
freeing either file cache or working storage. To maximize performance, you would
want AIX to release the type of memory not being used by the application. So for
databases, which use working storage, you would want AIX to release file cache
memory first. To do so in the past, you would put a strict limit on JFS2 file cache
memory using maxclient. It is not unusual to see database servers with file cache
limited to 15% of total memory. However, a strict limit is not always desirable.
So in the past you might have set maxclient at 20% for database servers. Today you
could set maxclient at 90% and "lru_file_repage=0". The exact setting will vary
based on your application and amount of memory. Contact IBM Support if you need
help determining the optimum setting.
Useful documentations:
• http://www-01.ibm.com/support/docview.wss?uid=swg21328602
• https://www.ibm.com/developerworks/community/blogs/aixpert/entry/ne
w_aix_memory_tuning_option?lang=en
17
2.1.5 Oracle Sun Solaris Tuning Parameters
This topic describes how to tune the Solaris operating system to optimize the
performance of your Oracle® EPM System. Note: Solaris default network tuning
parameters should be sufficient in most cases. For heavy, network centric
workloads, it’s always best practice to increase the size of key TCP-related
parameters to improve system performance and reduce dropped connections.
tcp_xmit_hiwat (Solaris 9/10) / send_buf (Solaris 11) 49152 This parameter is calculated
based on the network
The tcp_xmit_hiwat (tcp_send_buf) and
bandwidth and latency. You
tcp_recv_hiwat (tcp_recv_buf) parameters control the could follow this rule to
default size of the send window and receive window calculate:
for each TCP connection. On very fast networks, you <numbers of bits per second> *
<roundtrip latency> * 8
should make sure that the values are set to at least 32K.
[bits/byte]
By default, Solaris 9 changes the default settings for
18
both parameters to 48K.
tcp_recv_hiwat (Solaris 9/10) / recv_buf (Solaris 11) 49152 (in Solaris This parameter is calculated
9/10) based on the network
The tcp_xmit_hiwat (tcp_send_buf) and
bandwidth and latency. You
tcp_recv_hiwat (tcp_recv_buf) parameters control the 128000 (in
could follow this rule to
Solaris 11)
default size of the send window and receive window calculate:
for each TCP connection, respectively. On very fast <numbers of bits per second> *
<roundtrip latency> * 8
networks, you should make sure that the values are set
[bits/byte]
to at least 32K. By default, Solaris 9 changes the default
settings for both parameters to 48K.
19
2.2 Tune Oracle WebLogic Server (WLS) parameters
This topic describes how to tune the WebLogic Server to optimize the performance
of your Oracle® EPM System.
20
determined then set the value of Initial Capacity equal to the value for Maximum
Capacity in order to boost performance of JDBC in WebLogic Server web
applications.
Tip: Here is the example on how to size open cursors value on Oracle database, if
you have a data source with 150 connections deployed on 2 servers and if you use
default Statement Cache Size 10, you may open 3000 (150 x 2 x 10) cursors on your
database server for the cached statements. You can increase the open cursors limit in
Oracle database server. See section “Tune Oracle Database Parameters” in this guide.
Tip: To increase this value:
1. Log in to the WebLogic Server administration console.
2. Select your data source (for example “EPMSystemRegistry”), and then click on
Connection Pool tab, and then Maximum Capacity.
Tip: Monitor the EPM data source connections from Console (Deployments-
>Monitoring->JDBC) i.e. “Active Connections Count” and if “wait for connections” has a
greater than 0 value then increase the pool size.
21
2.2.2 Tune Connection Backlog Buffering
Tune the number of connection requests that a WebLogic Server instance will accept
before refusing additional requests. The Accept Backlog parameter specifies how
many Transmission Control Protocol (TCP) connections can be buffered in a wait
queue.
Important Note: In WebLogic Server 10.3.x, it is not required to increase Accept
Backlog as default listen thread Accept Backlog value is increased to 300 which is a
better default value.
Use the below Stuck Threads suggested settings as a starting point, and then, after
careful testing of your long running transactions, adjust as needed.
22
Financial Reporting Stuck Thread Max Time=600 Stuck Thread Max Time=1200
server Stuck Thread Timer Interval=60 Stuck Thread Timer Interval=1200
Max Stuck Thread Time=600 Max Stuck Thread Time=1200
Web Analysis server Stuck Thread Max Time=600 Stuck Thread Max Time=1200
Stuck Thread Timer Interval=60 Stuck Thread Timer Interval=1200
Max Stuck Thread Time=600 Max Stuck Thread Time=1200
Provider Services server Stuck Thread Max Time=600 Stuck Thread Max Time=1200
Stuck Thread Timer Interval=60 Stuck Thread Timer Interval=1200
Max Stuck Thread Time=600 Max Stuck Thread Time=1200
Profitability and Cost Stuck Thread Max Time=600 Stuck Thread Max Time=1200
Management server Stuck Thread Timer Interval=60 Stuck Thread Timer Interval=1200
Max Stuck Thread Time=600 Max Stuck Thread Time=1200
Essbase Administration Stuck Thread Max Time=600 Stuck Thread Max Time=1200
Services Stuck Thread Timer Interval=60 Stuck Thread Timer Interval=1200
Max Stuck Thread Time=600 Max Stuck Thread Time=1200
RA Framework Web Stuck Thread Max Time=600 Stuck Thread Max Time=1200
Stuck Thread Timer Interval=60 Stuck Thread Timer Interval=1200
Max Stuck Thread Time=600 Max Stuck Thread Time=1200
Calc Mgr Stuck Thread Max Time=600 Stuck Thread Max Time=1200
Stuck Thread Timer Interval=60 Stuck Thread Timer Interval=1200
Max Stuck Thread Time=600 Max Stuck Thread Time=1200
ErpIntegrator Stuck Thread Max Time=600 Stuck Thread Max Time=1200
Stuck Thread Timer Interval=60 Stuck Thread Timer Interval=1200
Max Stuck Thread Time=600 Max Stuck Thread Time=1200
FM Web Services Stuck Thread Max Time=600 Stuck Thread Max Time=1200
Stuck Thread Timer Interval=60 Stuck Thread Timer Interval=1200
Max Stuck Thread Time=600 Max Stuck Thread Time=1200
Tip: To configure stuck thread detection behavior, click on each EPM Managed
Server and then click on Tuning tab:
23
2.3 Tune IBM WebSphere Server (IBM WAS) parameters
This topic describes how to tune the IBM WebSphere Server to optimize the
performance of your Oracle® EPM System.
Required documentation to read before proceeding:
http://docs.oracle.com/cd/E40248_01/epm.1112/epm_install/ch08.html
http://www.oracle.com/technetwork/middleware/bi-foundation/epm-websphere-
manual-deploy11122-1887166.pdf
http://pic.dhe.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.base.doc/i
nfo/aes/ae/welc6toptuning.html
http://pic.dhe.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=%2Fcom.ibm.websp
here.express.doc%2Finfo%2Fexp%2Fae%2Ftprf_hotspot_jvm.html
24
raframework_datasource Minimum connections: 1 Minimum connections: 1
Maximum connections: 10 Maximum connections: 150
planning_datasource Minimum connections: 1 Minimum connections: 1
Maximum connections: 10 Maximum connections: 150
financialclose_datasource (FCM) Minimum connections: 1 Minimum connections: 1
Maximum connections: 10 Maximum connections: 150
eas_datasource (Essbase Admin Minimum connections: 1 Minimum connections: 1
Services) Maximum connections: 10 Maximum connections: 30
calc_datasource (CalcMgr) Minimum connections: 1 Minimum connections: 1
Maximum connections: 10 Maximum connections: 30
profitability_datasource (Profitability) Minimum connections: 1 Minimum connections: 1
Maximum connections: 10 Maximum connections: 30
hps_datasource (HpsAlerter, Minimum connections: 1 Minimum connections: 1
HpsWebReports) Maximum connections: 10 Maximum connections: 30
discman_datasource Minimum connections: 1 Minimum connections: 1
(DisclosureManagement) Maximum connections: 10 Maximum connections: 30
aif_datasource (ErpIntegrator) Minimum connections: 1 Minimum connections: 1
Maximum connections: 10 Maximum connections: 200
Important Note: You need to determine the optimal value for the Minimum and Maximum
connection as part of your pre-production performance testing. Once optimal values are
determined then set the value of Minimum connection equal to the value for
Maximum connection in order to boost performance of JDBC in IBM Websphere
Application Server web applications.
25
Tip: Monitor the EPM data source connections from IBM WAS Console (Tivoli
Performance Viewer) i.e. “Free Pool Size” and if “Wait Time” has a greater than 0
value then increase the pool size.
26
Maximum Size = 300 Maximum Size = 100 Maximum Size = 50
EPMA Web & DataSync Minimum Size =50 Minimum Size =20 Minimum Size =10
server Maximum Size = 300 Maximum Size = 100 Maximum Size = 50
Financial Reporting server Minimum Size =50 Minimum Size =20 Minimum Size =10
Maximum Size = 300 Maximum Size = 100 Maximum Size = 50
Web Analysis server Minimum Size =50 Minimum Size =20 Minimum Size =10
Maximum Size = 300 Maximum Size = 100 Maximum Size = 50
Provider Services server Minimum Size =50 Minimum Size =20 Minimum Size =10
Maximum Size = 300 Maximum Size = 100 Maximum Size = 50
Profitability and Cost Minimum Size =50 Minimum Size =20 Minimum Size =10
Management server Maximum Size = 300 Maximum Size = 100 Maximum Size = 50
Essbase Administration Minimum Size =50 Minimum Size =20 Minimum Size =10
Services Maximum Size = 300 Maximum Size = 100 Maximum Size = 50
RA Framework Web Minimum Size =50 Minimum Size =20 Minimum Size =10
Maximum Size = 300 Maximum Size = 100 Maximum Size = 50
Calc Mgr Minimum Size =50 Minimum Size =20 Minimum Size =10
Maximum Size = 300 Maximum Size = 100 Maximum Size = 50
ErpIntegrator Minimum Size =50 Minimum Size =20 Minimum Size =10
Maximum Size = 300 Maximum Size = 100 Maximum Size = 50
FM Web Services Minimum Size =50 Minimum Size =20 Minimum Size =10
Maximum Size = 300 Maximum Size = 100 Maximum Size = 50
27
Tip: Monitoring Thread Pool Size using IBM WAS Console
Tip: This can be done in the WebSphere Application Server administrative console
by navigating to Servers => Application servers => server_name => Process definition
=> Java Virtual Machine.
28
Then
Then
You will see here that you can modify Initial and Maximum heap size. (Should be
set both to 2048)
29
enabled in the administrative console by navigating to Servers => Application
servers => server_name => Web container settings => Web container. The URI path to
the servlet or JSP to be cached must be defined in a cachespec.xml file, which is
placed inside the Web module's WEB-INF directory.
30
2.3.5 Tuning HTTP Transport persistent connections
31
2.3.6 IBM WebSphere PMI (Performance Monitoring Infrastructure):
Available via IBM WAS Console, browsing to Application servers > <App Server
Name> > Performance Monitoring Infrastructure (PMI)
Available here:
http://www.ibm.com/developerworks/websphere/downloads/peformtuning.html#F
ORUM144
32
2.4 Tune 64bit Java Virtual Machines (JVM)
Newly deployed web application server instances use default memory heap
settings, which are often too small to accommodate EPM System 64bit requirements.
Optimal JVM settings can be determined only by close monitoring of application
server performance under peak realistic load.
Important Note: Ensure that the sum of the maximum heap size (-Xmx) of all the EPM JVMs running
on your server does not exceed the amount of available physical RAM. If this value is exceeded, the
Operating System starts paging and performance degrades significantly.
For SOA, increase the size of 32 GB -XXcompressedRefs:size=32GB
Compressed References to resolve native
OutOfMemory (OOM) error.
Note: It is recommended to use the default garbage collection mode i.e. -Xgc:throughput. Also large
heap reduces the garbage collection frequency and fragmentation, improving the throughput of the
application; however, a large heap increases the memory footprint of the Java process.
33
*Warning: Make sure you have enough physical memory allocated / available on
servers (deployed with several EPM 64bit web applications) and then use the
above settings as a starting point, and after load testing, adjust as needed. For a
stable / an even performance over time, you should set the initial heap size (-Xms) to
the same value as the maximum heap size (-Xmx).
Important Note: Ensure that the sum of the maximum heap size (-Xmx) of all the EPM JVMs
running on your server does not exceed the amount of available physical RAM. If this value is
exceeded, the Operating System starts paging and performance degrades significantly.
*Warning: Make sure you have enough physical memory allocated / available on
servers (deployed with several EPM 64bit web applications) and then use the
above settings as a starting point, and after load testing, adjust as needed. For a
stable / an even performance over time, you should set the initial heap size (-Xms) to
the same value as the maximum heap size (-Xmx).
34
2.4.3 Tuning 64bit AIX JVM
This table lists the memory setting, the suggested value, and the AIX’s Java
argument:
Setting Suggested Value Java Argument*
Minimum heap 1024 MB -Xms1024m
Important Note: Ensure that the sum of the maximum heap size (-Xmx) of all the EPM JVMs
running on your server does not exceed the amount of available physical RAM. If this value is
exceeded, the Operating System starts paging and performance degrades significantly.
*Warning: Make sure you have enough physical memory allocated / available on
servers (deployed with several EPM 64bit web applications) and then use the
above settings as a starting point, and after load testing, adjust as needed. For a
stable / an even performance over time, you should set the initial heap size (-Xms) to
the same value as the maximum heap size (-Xmx).
35
• Disconnect Application Module Upon Release (jbo.doconnectionpooling)
• Enable Application Module Pooling (jbo.ampool.doampooling)
• Support Dynamic JDBC Credentials (jbo.ampool.dynamicjdbccredentials)
• Reset Non-Transactional State Upon Unmanaged Release
(jbo.ampool.resetnontransactionalstate))
2. Pool Sizing Parameters
• Initial Pool Size (jbo.ampool.initpoolsize)
• Maximum Pool Size (jbo.ampool.maxpoolsize)
• Referenced Pool Size (jbo.recyclethreshold)
• Maximum Instance Time to Live (jbo.ampool.timetolive)
3. Pool Cleanup Parameters
• Pool Polling Interval (jbo.ampool.monitorsleepinterval)
• Maximum Available Size (jbo.ampool.maxavailablesize)
• Minimum Available Size (jbo.ampool.minavailablesize)
• Idle Instance Timeout (jbo.ampool.maxinactiveage)
• Maximum Instance Time to Live (jbo.ampool.timetolive)
See that for more details:
http://docs.oracle.com/cd/E15523_01/web.1111/b31974/bcampool.htm
This table lists the memory setting, the suggested value (depending on available
physical memory on each server), and the Oracle Java argument:
36
bring the number of available instances
down to this size.
The default maximum available size is 25
instances. Configure this to leave the
maximum number of available instances
desired after a resource cleanup. A lower
value generally results in more
application module instances being
removed from the pool on a cleanup.
Referenced Pool Size 320 -Djbo.recyclethreshold=320
(jbo.recyclethreshold) The maximum
number of application module instances
in the pool that attempt to preserve
session affinity for the next request made
by the session which used them last
before releasing them to the pool in
managed-state mode.
The referenced pool size should always
be less than or equal to the maximum
pool size. The default is to allow 10
available instances to try and remain
"loyal" to the affinity they have with the
most recent session that released them in
managed state mode.
Configure this value to maintain the
application module instance's affinity to
a user's session. A general guideline is to
configure this to the expected number of
concurrent users that perform multiple
operations with short think times. If
there are no users expected to use the
application with short think times, then
this can be configured to 0 zero to
eliminate affinity.
Maintaining this affinity as much as
possible will save the CPU processing
cost of needing to switch an application
module instance from one user session to
another.
Best Practice: When you specify the length of time between application module pool cleanup passes,
set all application modules to use the same Pool Polling Interval value. Since there is only a single
application monitor pool monitor per Java VM, the value that will effectively be used for the
application module pool monitor polling interval will be the value found in the application module
configuration read by the first application module pool that gets created. Setting all application
modules to use the same value ensures that this value is set in a predictable way.
37
2.5 Tune 32bit Java Virtual Machines (JVM)
Newly created application server instances use default memory settings, which are
often too small to accommodate EPM System requirements. For 32bit JVM in order
to allocate a heap of more than 1024 MB, you need to use a 64bit JVM in order to
allocate more than 1024 MB of maximum heap. See section “Tune 64bit Java Virtual
Machines (JVM)” in this guide.
Important Note: By setting minimum heap size = maximum heap size gives you a
controlled environment where you get a good heap size right from the start and also
to minimize minor/major garbage collections.
Important Note: By default, JRockit JVM uses the dynamic garbage collection
strategy to optimize for throughput. For EPM component, it is not recommended to
change to other available dynamic strategies.
Important Note: By setting minimum heap size = maximum heap size gives you a
controlled environment where you get a good heap size right from the start and also
to minimize minor/major garbage collections.
Important Note: Also for application servers that use Sun's Java Virtual Machine
(JVM), make sure that the size of the permanent generation heap must be increased
(as stated in above table). When the permanent area of the heap is too small, the JVM
will do a full garbage collection of the entire heap before resizing the permanent
area.
38
2.6 Tune HTTP Server parameters
This topic describes how to tune the HTTP server to optimize the performance of your Oracle® EPM System.
39
Tune the following memory limits for
all the EPM (64bit) Application Pools:
Private Memory Limit (KB) = Default =0
Virtual Memory Limit (KB) = Default =0
Important Note: Use the above suggested settings as a starting point, and then, after careful testing, adjust as needed. To avoid potential
performance issues, values for IIS 7.0+ parameters should be set only after considering the nature of the workload and the system capacity
(i.e. CPU and memory).
40
2.6.2 Oracle HTTP Server (ohs) Tuning
Oracle HTTP Server uses directives in httpd.conf file. The directives for each Multi-
Processing Module (MPM) type are defined in the
MIDDLEWARE_HOME/user_projects/epmsystem1/httpConfig/ohs/config/OHS/ohs_component/httpd.conf file. The default
SSLSessionCache
1. Open ssl.conf and find SSLSessionCache. It will be a line like:
SSLSessionCache
"shmcb:${ORACLE_INSTANCE}/diagnostics/logs/${COMPONENT_TYPE}/${COMPONENT_NAME}/ssl_scache(512000)“
Important Note: Use the above suggested settings as a starting point, and then, after
careful testing, adjust as needed. To avoid potential performance issues, values for
OHS parameters should be set only after considering the nature of the workload and
the system capacity (i.e. CPU and memory).
41
2.6.3 IBM HTTP Server (IHS) Tuning
IBM HTTP Server uses directives in httpd.conf file. The httpd.conf configuration file
is located in the conf directory of your server installation. There is also an
httpd.conf.default file, if you need to use another copy of the original file. The
product provides a sample configuration file called httpd.conf.sample that illustrates
basic IBM module directives and advanced security options.
IBM HTTP Server also provides the admin.conf.default, magic.default, and
mime.types.default configuration files. IBM HTTP Server configuration files are
located in [IBM HTTP Server installation directory]\(/)conf.
Parameters Default Value Suggested Value
MaxKeepAliveRequests 100 0
KeepAliveTimeout 5 10 for high network
bandwidth
100 for low network
bandwidth
KeepAlive On On
Timeout 300 900
# WinNT MPM (this MPM is for Windows Only)
<IfModule mpm_winnt>
ThreadsPerChild = 64 = 1024
ThreadLimit = 1920 = 4096
MaxRequestsPerChild =0 =0
</IfModule>
#worker MPM
<IfModule worker.c>
StartServers =3 = 10
MaxClients = 400 = 1024
ListenBackLog = 511 = 2048
MinSpareThreads = 75 = 75
MaxSpareThreads = 250 = 250
ThreadsPerChild = 25 = 64
ThreadLimit = 64 = 64
MaxRequestsPerChild =0 =0
ServerLimit = 16 = 16
AcceptMutex fcntl
LockFile [IBM HTTP Server installation directory]/logs/accept.lock
</IfModule>
Important Note: Use the above suggested settings as a starting point, and then, after
careful testing, adjust as needed. To avoid potential performance issues, values for
IHS parameters should be set only after considering the nature of the workload and
the system capacity (i.e. CPU and memory).
42
2.7 Tune HTTP Server Compression / Caching
Why use Web Server Compression / Caching for Oracle® EPM products?
1. Bandwidth Savings: Enabling HTTP compression can have a dramatic
improvement on the latency of responses, while improving the throughput
capacity of the system. By compressing static files and dynamic application
responses, it will significantly reduce the remote (high latency) user response
time.
2. Improves request/response latency: Caching components (i.e. images, js and css)
provide an accurate control of every cache in the proxy chain including the
browser's one. Such an accurate use of the cache makes it possible to suppress
the payload of the HTTP reply using the 304 status code. Minimizing round trips
over the Web to revalidate cached items can make a huge difference in browser
page load times.
Important Note: For only LAN based usage of Oracle EPM applications, it is not
recommended to enable compression / caching for HTTP servers. Therefore it is only
recommended to enable compression / caching when Oracle® EPM applications are used
over the WAN and remote users are accessing from high latency remote locations. Once
compression is enabled in http server, it is strongly recommended to conduct series of tests
with multiple concurrent users in test environment and during the test it is important to
evaluate how much of CPU is typically being utilization for http server.
To better understand compression flow, below are the possible compression enabled
scenarios that shows handling of compressed http requests / responses on Oracle
and IIS web server.
43
Scenario 1 – Compression enabled on Oracle HTTP server (ohs) level:
IE / Firefox
Decompression Layer
(gizp, deflate) :19000
Compression Layer
Web Browser Rendering
(gzip, deflate)
44
2.7.1 Oracle HTTP Server (ohs)
This topic describes how to enable compression in Oracle HTTP Server of your
Oracle® EPM System.
Tip: The module named "mod_deflate.so" that can compress outgoing data is now added in
current Oracle HTTP Server release included in Oracle Fusion Middleware platform.
<IfModule mod_headers.c>
Header append Vary User-Agent
</IfModule>
</IfModule>
</Location>
#Important Note: Above “deflate.log” can grow large in size under high users load. Logging
#degrades performance because of the (possibly significant for large file) I/O overhead. Therefore it is
#recommended to disable the generation of deflate log. To disable this log, comment the section
#“<IfModule mod_log_config.c>”.
45
4. Add the following line to “httpd.conf” file after LoadModule lines:
Include /Oracle/Middleware/user_projects/epmsystem1/httpConfig/ohs/config/OHS/ohs_component/deflate.conf
Important Note: In UNIX deployment, ensure the above path is correct and
update accordingly.
5. Save the changes in “httpd.conf” and Restart the Oracle HTTP Server (ohs).
Tip: In above steps the default EPM Oracle instance location is used i.e.
“MIDDLEWARE_HOME/user_projects/epmsystem1”. Use your EPM Oracle instance
location in case if it is different.
Tip: After applying all the above steps, if OHS server isn’t starting then verify all the
paths (e.g. modules) are valid
46
Performance Gain Test (Oracle HTTP Server)
The test with/without HTTP compression enabled was conducted in internal lab to
measure the transactions response time / throughput for Workspace / Planning web
applications.
Below table summarizes the performance improvement for Workspace / Planning
transactions over a 1 Mbps bandwidth link for one remote user (ran with multiple
iterations for 30 minutes).
Average time Average time
(in sec) (in sec)
Transaction Name % Improvement
Before After
(Non-Compressed) (Compressed)
Workspace Logon page 56 25 55%
Workspace Home page 49 32 35%
Open Planning application 18 10 44%
*Open Planning very large web 590 200 66%
form (approx 50,000 cells).
Workspace Log off 7 5 29%
Total Throughput (bytes) 21,587,996 2,272,578 89%
(Total generated network traffic)
Average Network Delay (ms) 400 408 -
Packet Loss % 0 0 -
*Note: The large web form size used in testing does not represent the real world situation. The form is much larger than
Planning users can realistically work with. It is only used to test the maximum strength of compression ratio in OHS.
Below tables shows the total response bytes (by Content-Type) for above Workspace /
Planning web transactions with and without HTTP compression.
Non-Compressed Compressed
Content-Type
(Before) (After)
application/x-javascript: 2,679,163 Bytes 507,839 Bytes
text/css: 523,365 Bytes 58,591 Bytes
text/xml: 307,959 Bytes 59,420 Bytes
~headers: 136,104 Bytes 141,638 Bytes
text/html (Web Form): 17,624,524 Bytes 1,264,910 Bytes
image/png: 24,628 Bytes 20,891 Bytes
text/javascript: 2,602 Bytes 555 Bytes
image/gif 193,873 Bytes 193,321 Bytes
image/jpeg: 18,651 Bytes 18,651 Bytes
image/x-icon: 4,150 Bytes 805 Bytes
text/plain: 134 Bytes 60 Bytes
text/x-json: 75,835 Bytes 5,897 Bytes
Note: Testing was done using single Oracle HTTP server with an Oracle Sun Solaris SPARC 4*1.2 dual core box and 16 GB RAM. In
remote user machine testing was done using Internet Explorer 8.0 (IE cache was disabled) on Windows 7.
47
2.7.2 IBM HTTP Server (IHS)
This topic describes how to enable compression in IBM HTTP Server of your
Oracle® EPM System.
Tip: The module named "mod_deflate.so" that can compress outgoing data is now added in
current IBM HTTP Server release.
<IfModule mod_headers.c>
Header append Vary User-Agent
</IfModule>
</IfModule>
</Location>
#Important Note: Above “deflate.log” can grow large in size under high users load. Logging
#degrades performance because of the (possibly significant for large file) I/O overhead. Therefore it is
#recommended to disable the generation of deflate log. To disable this log, comment the section
#“<IfModule mod_log_config.c>”.
48
9. Save the changes in “httpd.conf” and Restart the IBM HTTP Server (IHS).
Tip: After applying all the above steps, if IHS server isn’t starting then verify all the
paths (e.g. modules) are valid
49
2.7.3 IIS 7.0+ HTTP Server
This topic describes how to enable compression and caching of your Oracle® EPM System.
Tip: IIS 7.0+ involves a new configuration system. The metabase.xml is no longer used. Now in IIS 7.0 compression settings
are configurable from IIS Manager or via “appcmd.exe” or using the Configuration Editor.
2. Only static compression is installed by default. Ensure dynamic compression feature is installed via Web Server (IIS) >
Add Role Services Wizard; for step by step details refer to IIS 7.x documentation. Increase the compression level of static and
dynamic files. Note: dynamic compression level default value is 0 and for static compression level default value is 7. As
stated below change the level of compression (in gzip) for dynamic files to 7 and for static files to 9.
Tip: Run the following command line option to increase GZip Compression Level:
Navigate to Path: C:\Windows\System32\Inetsrv\
Run the command: Appcmd.exe set config -section:httpCompression -[name='gzip'].staticCompressionLevel:9 -[name='gzip'].dynamicCompressionLevel:7
Important Note: Raise the dynamic compression level above seven only if you need more network bandwidth and have
sufficient CPU capacity to handle the extra load.
50
b. How to Enable Caching in IIS:
1. Enable content expiration and set the expiration after to at least “30 Days”.
2. Run following commands via command line to configure the expires response header for the following directories (highlighted in bold):
• HFM
Navigate to Path: C:\Windows\System32\Inetsrv\
• Workspace
Navigate to Path: C:\Windows\System32\Inetsrv\
• raframework
Navigate to Path: C:\Windows\System32\Inetsrv\
51
c. Performance Gain Test (IIS 7.0+)
The test with/without HTTP compression enabled was conducted in internal lab to
measure the transactions response time / throughput for Workspace / HFM web
applications.
Below table summarizes the performance improvement for Workspace / HFM
transactions over a 1 Mbps bandwidth link for one remote user (ran with multiple
iterations for 30 minutes).
Average time Average time
(in sec) (in sec)
Transaction Name % Improvement
Before After
(NonCompressed) (Compressed)
Workspace Logon page 58 26 55%
Workspace Home page 51 30 41%
HFM_Open_Application 20 13 35%
HFM_Open_Large_WDEF 42 22 48%
HFM_Change_POV_Select_Entities 20 11 45%
HFM_Open_Grid 26 12 54%
Workspace Log off 8 6 25%
Total Throughput (bytes) 5,523,842 1,191,405 78%
(Total generated network traffic)
Average Network Delay (ms) 405 401 -
Packet Loss % 0 0 -
Below tables shows the total response bytes (by Content-Type) for above
Workspace/HFM web transactions with and without HTTP compression.
Non-Compressed Compressed
Content-Type
(Before) (After)
application/x-javascript: 3,662,585 Bytes 697,108 Bytes
text/css: 404,492 Bytes 48,609 Bytes
text/xml: 276,032 Bytes 56,611 Bytes
text/html: 935,452 Bytes 140,035 Bytes
image/png: 35,727 Bytes 41,227 Bytes
text/javascript: 1,130 Bytes 429 Bytes
image/gif 208,424 Bytes 207,386 Bytes
Note: Testing was done using single HFM web server (IIS 7.5) with an Intel Quad-core 3.4-GHz web server and 8 GB RAM. In
remote user machine, testing was done using Internet Explorer 8.0 (IE cache was disabled) on Windows 7.
52
2.8 Tune Oracle Database Parameters
This topic describes how to tune the Oracle Database to optimize the performance of
your Oracle® EPM System.
Set OPEN_CURSORS=7000
- the default value for this parameter is too small for systems
such as WebLogic Server / HFM.
- It is important to set the value of OPEN_CURSORS high
enough to prevent system from running out of open cursors.
- Note: assuming that a session does not open the number of
cursors specified by OPEN_CURSORS, there is no added
overhead to setting this value higher than actually needed.
Set CURSOR_SHARING
- changing this parameter to the suggested value will increase
the performance, and will not impact any data results.
Important Note: Suggested setting for CURSOR_SHARING:
For all HFM releases prior to 11.1.2.2.300 – FORCE
For all HFM releases 11.1.2.2.300 and later - EXACT
Set OPTIMIZER_INDEX_COST_ADJ to 50
- setting of 50 makes the index access path look half as
expensive as normal.
53
Financial Data Quality DBA must read and follow the tuning instructions included in
Management (FDM) the FDM DBA Guide. Failure to tune the database per the
FDM DBA Guide will result in poor performance.
Important Note: Above are the some good minimum values for Oracle Database instance
parameters, during load testing process, adjust as needed. For more information on tuning
the Oracle database, see the Oracle Database Performance Tuning Guide.
54
3.0 PERFORMANCE MONITORING EPM SYSTEM
Oracle Fusion Middleware provides a Fusion Middleware Control that can be used
to monitor all elements of the farm - including deployed applications and Fusion
Middleware components such as:
• WebLogic Domain
• EPM Managed Servers
• Oracle HTTP Server
Important Note: See also "Getting Started Using Oracle Enterprise Manager Fusion
Middleware Control" in Oracle Fusion Middleware Administrator's Guide @
http://download.oracle.com/docs/cd/E14571_01/admin.htm
Important Note: Each operating system has its own native tools and utilities that can
be useful for performance monitoring purposes. Native operating system commands
enable you to gather and monitor for example CPU utilization %, process memory,
paging activity, swapping, and other system activity information. For details on
operating system performance monitoring commands, refer to the documentation
provided by the operating system vendor.
55
4.0 TUNING FINANCIAL PM APPLICATIONS
This chapter includes the following sections that provide a quick start for tuning
Financial PM applications.
4.1 Hyperion Financial Management (HFM)
Performance tuning HFM is a complex and iterative process. For detailed
information about tuning the HFM, see topic "Tuning Financial Management
Applications" in HFM tuning guide at
http://www.oracle.com/technetwork/middleware/financial-
management/overview/hfmperformancetuning-1934817.pdf
Tip: Put alerts in place so that action can be taken if these tables grow beyond the
recommended number of records (> 500,000). Note large audit tables will have
severe impact on HFM performance.
Important Note: For detailed information about tuning the Oracle database for
HFM, see topic "Tuning Guidelines for Oracle 11g Databases" in HFM tuning guide at
https://support.oracle.com/oip/faces/secure/km/DocumentDisplay.jspx?id=1083460.1
56
4.1.2 Basic Design Considerations
1. If Data Audit feature is not part of business requirements then it is recommended
to turn off auditing of data. It has been observed degradation in performance for
HFM application with Data Audit table more than 10GB.
Tip: To turn off auditing of members, change the EnableDataAudit attribute to N
for all members in your metadata file.
3. For attaching multiple documents to Data Grid / Process Unit, Oracle recommends
that you attach no more than three documents to a cell. Each document should be
smaller than 100K to limit the performance effect on the database.
Tip: You can set a size limit for document attachments and a maximum number
of document attachments by user when you create an application. You can set
the limits in the AppSettings attribute for the application metadata.
4. Make use of Consolidate All option only under appropriate circumstances. If this
option is used the system does not skip entities with NODATA, which can have a
significant impact on consolidation performance.
57
4.2 Hyperion Planning
This topic describes how to tune the Oracle Hyperion Planning to optimize the
performance of your Planning applications.
58
4.2.1.3 Allocate memory for supporting detail cache
You can specify the amount of memory for the supporting detail cache. This improves
performance when users change the planning unit status.
To change the default memory allocation for supporting detail cache, change the
SUPPORTING_DETAIL_CACHE_SIZE property. The default is 20. If the Supporting
Detail Detection Cache reaches 75% or greater, Oracle recommends increasing
SUPPORTING_DETAIL_CACHE_SIZE to decrease the Supporting Detail Detection
Cache to 60%.
Tip: If many users are running business rules with runtime prompts, tracking these
values consumes significant system resources. To improve performance, you can
turn off this function so Planning does not capture runtime prompt values.
59
4.2.2.2 Separate Planning and Reporting Requirements
Identify requirements that are strictly for reporting purposes and consider moving
the reporting requirements to a separate database to reduce the database size and
improve the calculation times in the Planning application.
• Time (dense) - Most Planning applications have forms set up to enter data
across 12 months. Therefore, the Time periods are usually highly populated
with data and thus are a good candidate for a dense dimension.
60
4.2.2.6 Typical Planning dense block size
The recommended block size ranges from 8 kb to 100 kb for 32 bit Essbase
installations and from 8 kb to 200 kb for 64 bit Essbase installations. The block size
for Planning applications is usually between 50 kb and 200 kb, although the block
size can be larger or smaller depending on the application requirements.
61
being updated constantly. For further information on uncommitted access, please
see the Essbase Database Administrator’s Guide at
http://docs.oracle.com/cd/E40248_01/epm.1112/essbase_db.pdf.
For further information on grid diagnostics, please see the Oracle Hyperion
Planning Administrator’s Guide at
http://docs.oracle.com/cd/E40248_01/epm.1112/planning_admin.pdf.
62
4.2.5.3 Split Larger Forms into Smaller Forms
Split single larger data forms into multiple smaller data forms with fewer rows and
columns. Organize data forms in folders.
4.2.5 Troubleshooting
4.2.5.1 Fragmentation
Recommend scheduling a defragmentation process on a regular basis, especially on
high processing applications like planning apps. During tuning exercise, run
GetDBStats for Average Fragmentation Quotient, which shows value as a % from 0 -
100%. You should monitor to gauge when defragmentation process is needed.
The following shows the fragmentation quotient levels that can cause performance
issues:
• Small Databases (<200 MB) – 60 % or greater
• Medium Databases (<2 GB) – 40 % or greater
• Large Databases (> 2GB) – 30 % or greater
For further information on the Average Fragmentation Quotient, please see the
Essbase Technical Reference Guide at
http://docs.oracle.com/cd/E40248_01/epm.1112/essbase_tech_ref.pdf.
63
4.3 Essbase Application Link for HFM
This topic describes how to tune Oracle Essbase Analytic Link for Hyperion
Financial Management (HFM) to optimize your applications.
4.3.1 EAL Tuning Documentation
Please review the following articles/guides:
https://blogs.oracle.com/pa/entry/essbase_analytics_link_eal_performance
4.3.2 Data Synchronization Service (DSS) Tuning
Few requirements before proceeding:
• EAL is installed on a machine in which there’s 4 to 8 cores and 5to 8 GB RAM
available.
• EAL is installed on Windows 2003 SP2 or 2008 R2 64 bits
• EAL is installed using high speed disks
When configuring DSS, as shown, below:
64
4.3.3 Monitoring EAL DSS:
In order to monitor especially what’s going on into EAL Data Synchronization
Service, a command line is directly available onto the machine hosting EAL:
Open a DOS Command window and type the following:
hrutil help
Usage:
hrutil command [command parameters] [general options]
Any command may use the following general options:
[-host:<host>]
[-port:<portnumber>]
[-user:<user>]
[-password:<password>]
List of commands:
version
Shows the hrutil version information.
sqlquery <qid>
Print a Query Statement
queryinfo [-noconnections][-mode][-state][-sql][-dsn][-mem]
List connections and their SQL queries.
killquery <qid> [-q]
Kill a running query. If keyword 'all' is used instead of qid, then all queries will be
killed. If option [-q] is used, no questions will be asked.
updatecol <hdf>
The updatecol command tells HyperRoll that a HDFÆs column types have changed.
This feature will allow the user to update the columns names, type, and width. This
action requires setting hrcmd to the off command and then to the resume
command on the relevant cubes. Note: After column type or width has been
changed, data validation on registration layer becomes invalid.
help
Prints this help.
path hyperini hyperlog odbcini odbclog oeslog esslog.
Provides the full path of the file for each option..
debug <on|off> [facility]
Turns ON or OFF the specified debug facility. Supported debug facilities: api, select,
source, mirror, sql, sqlscan, sqlprep, reserv, grid, alg.
65
printhier <HierarchyID> <FileName>
Prints the structure of the designated hierarchy. The value for <hierID> is found in
printids.
printdim <DimesionID> <FileName>
Prints the structure of the designated dimension in a file. The value for <dimID> is
found in printids
note <text note>
Inserts a note to HyperRoll Log.
printids ([all] | dbs | cubes) [-short]
When set to all, this command prints the entire path of the IDs of all objects,
including databases and cubes. When set to dbs, this command prints only the IDs
of the databases. When set to cubes, this command prints only the IDs of the cubes.
Added the option ûshort will print the name of the cube without the whole path.
getconf [K]
Provides relevant information on the configuration of HyperRoll. By default, this
information is given in MB. If [k] is added, the information is given in KB.
monitorjobs [detailed]
Status of jobs that are running in HyperRoll.
proclist
Shows a list of processes and their status.
pidof dbmanager|fbs|named|misc|auth
Display process id of a process.
start dbmanager|fbs|named|misc|auth
Start the designated process.
stop <proc>
Stops the designated process.
Examples:
Hrutil getconf should provide the following:
======= HyperRoll information =======
Memory: PhysicalRAM(8191M 3125M) HR(3988M 2862M) VMem(1015M) Query
Limit(5000M)
Res(70M) RegRes(70M)
CPU time: 1175 +1175
Calendar time: 1380115648 +1380115648
66
CPU usage is 0.0% in last 1380115648 seconds
IO: 212926 reads, 5567 writes
server version: 2.2.13.155 LLP64(P64)
client version: 2.2.13.155 ILP32
Max Clients: SQL=0 QSR=0
Queries: peak=1 current=0 past=2807
Stores: id limit size avail name
1 10000 29234 14855 D:/Oracle/EssbaseAnalyticsLink/Work/Store
Maximum number of init jobs: 4
Workers:speed working mode treeSz / treeSzB vldTime
0.0000 suspend query-only 0G 0G 0
0.0000 running all-jobs 0G 0G 0
0.0000 suspend all-jobs 0G 0G 0
0.0000 suspend query-only 0G 0G 0
0.0000 suspend light-weight 0G 0G 0
0.0000 suspend light-weight 0G 0G 0
0.0000 suspend all-jobs 0G 0G 0
0.0000 suspend query-only 0G 0G 0
0.0000 suspend all-jobs 0G 0G 0
0.0000 suspend query-only 0G 0G 0
0.0000 suspend query-only 0G 0G 0
0.0000 suspend query-only 0G 0G 0
0.0000 suspend query-only 0G 0G 0
0.0000 suspend query-only 0G 0G 0
0.0000 suspend query-only 0G 0G 0
0.0000 suspend query-only 0G 0G 0
0.0000 suspend query-only 0G 0G 0
0.0000 suspend query-only 0G 0G 0
=====================================
Where,
all-jobs workers – are JOB_UNITS
query-only workers – are QUERY_ONLY_UNITS
light-weight workers – are responsible for EAL – DSS APIs execution (not relevant
in your case)
67
4.3 Financial Management Analytics
This topic describes how to tune Oracle Hyperion Financial Management Analytics
(OFMA) to optimize your applications.
68
4.5 Hyperion Profitability and Cost Management (Standard Costing)
This topic describes how to tune Oracle Hyperion Profitability and Cost
Management (Standard Costing) to optimize your applications.
69
5.0 TUNING FOUNDATION SERVICES
This chapter describes how to tune the foundation services to optimize the
performance of your EPM applications.
70
5.3 Hyperion Shared Services
This topic describes how to tune the Shared Services to optimize the performance of
your EPM system.
For 11.1.2.x:
• The new Foundation Services Web application consolidates to one JVM and
includes these Web applications: Shared Services and EPM Workspace. Increase
the Foundation Services JVM memory settings as stated in section "Tuning Java
Virtual Machines (JVM)"of this guide.
• Use the default log level <WARN> in usual circumstances and <DEBUG> only for
debugging.
• Login performance is better when the number of nesting’s within the group
membership hierarchy is less than 5. Note the performance has improved for the
native groups in the 11.1.2 release because native groups are now cached along
with external groups. There are no more extra look-ups to Native Directory for
the native group membership.
• Set up a filter to retrieve only the required users. Oracle recommends that you set
the group URL and tune the group filter to decrease the number of groups that
Shared Services must parse to build the cache. Doing so improves runtime
performance significantly.
• Use native groups, not external groups, to provision external users, and clear the
use group’s option on the groups tab of LDAP/MSAD provider configuration
panel.
• Limit the number of users with EPM System access. Always define a User URL
and set it as deep as possible and also set a user filter, if possible.
• Consider to fine tune more parameters i.e. MaximumSize, Max Connections,
settings, Cache Refresh Interval etc during "Configuring User Directories" process
(for more information refer to Oracle EPM User and Role Security Guide).
• For the first item in the search order, specify the directory from which the
greatest number of users logs in. Find an optimal starting point for searches or
create a custom group hierarchy.
• If you see error “LDAP response read timed out timeout used: 120000ms” in
SharedServices_SecurityClient.log then lower the default value of this timeout for
external providers. This can cause Essbase Agent process to hang so lowering this
timeout value may help to resolve the Essbase agent hang issue.
71
For 11.1.2.3:
• Login performance is improved when users login after the EPM System is idle
for some time, by recreating the master context for the LDAP/MSAD provider
periodically. So, this connection is closed even before it is terminated at the
Firewall or Load Balancer
• It is possible that group cache could be empty if there is some error while
building it. Thus it is empty till the next cache refresh interval. During this time if
a user is logged in who is provisioned via groups, won’t get proper roles.
• Now group cache is attempted every time a request comes to group cache and
gets built eventually
72
5.3 SmartView for Office
This topic describes how to tune the SmartView for Office to optimize the
performance of your EPM system.
• SmartView uses browser cache to store locally information in XML format. If you
are performing constantly different requests from the same Excel Sheet,
performances could slow down because the cache is growing. A quick test
should be to open a new Excel sheet, which should open a new cache area and
could improve performances, because access to cache will be quicker.
• Select the option to Use Excel Formatting. Without this option, Smart View will
reformat each cell based on the grid operations you perform. It will also mark
cells as “to calc” each time you change data values. These activities add system
overhead to all Refreshes, making them taking longer.
• The most efficient performance will result from small, focused queries on a
specific subset of data. Zooming in on extremely large dimensions will cause
slow performance. If you absolutely must zoom in on larger dimensions,
suppressing rows that have no data or zero data will help.
• Keeping the default options for displaying No Data, No Access, and Invalid cells
will decrease the time needed for a retrieve. The difference in retrieval timing is
much more noticeable when using very large (10,000+ rows) queries.
Tip: This is due to XML storage on the client browser that will be less large than
expected so the cache is locally quicker to build, and retrieve.
73
• The bigger your Excel workbook, the slower your Smart View queries will run.
This is why running a query in an Excel workbook that has many other
worksheets can take a long, long time. Retrieval performance will be optimized if
the Smart View query is the only tab in the workbook. If other worksheets are
being used, the overall size of the file itself will have the biggest impact on
performance. Queries used in larger files (over 10 MB) are very likely to run
slowly.
Tip: It is better to build links between workbooks that between Excel sheets if
you need to manage different set of information.
• Turn off the preserve formulas option when retrieving against an ASO Essbase
cube. This has been known to make retrieves taking much longer than normal. It
also can dramatically increase the size of the Excel file itself when this setting is
on.
• The Excel AutoRecover option can create performance issues or even cause the
query to crash. For example, if the AutoRecover option is set to every 3 minutes,
a query that takes longer than 3 minutes to retrieve will cause Excel to crash.
Disable this option if you are using large queries.
74
6.0 TUNING ESSBASE
This chapter includes the following sections that provide a quick start for tuning
Essbase BSO / ASO applications.
The key Essbase guides that should be reviewed for all design, tuning and limits
considerations are:
• Oracle Essbase Database Administrator's Guide
• Oracle Essbase Technical Reference
• Oracle Essbase Administration Services (Online Help)
The following topics are additional design, tuning and limits considerations to
optimize Essbase Aggregate Storage (ASO) performance; however, for full details
see the guides referenced above.
6.1.1 Outline
See the Oracle Essbase Database Administrator's Guide for complete details
regarding Aggregate Storage Outline design and tuning.
http://docs.oracle.com/cd/E40248_01/epm.1112/essbase_db.pdf
The following sections are to help guide with tuning areas. Only methodical
performance and load testing can determine the optimal settings for a given
application design and process.
NOTE: Compacting the outline file will not cause Essbase to clear the data.
75
Another consideration when choosing a compression dimension is how well it is
expected to compress the database. The size of the compressed database changes
depending on which dimension is tagged as compression.
Selecting the best compression dimension requires methodical testing to ensure the
appropriate setting is selected for a given design, process and data distribution.
The following message indicates that the ASO optimization member needs more
memory to process the MDX member formulas. In this case, consider adding
MAXFORMULACACHESIZE configuration setting to the Essbase.cfg file.
• Not enough memory for formula execution. Set
MAXFORMULACACHESIZE configuration parameter to [xxxx] KB and try
again.
For additional information on ASO dynamic calculation log messages, see the blog
post https://blogs.oracle.com/pa/entry/epm_11_1_2_understanding
76
[Avg. Units/Transaction] = [Units]/[Transactions]
3. The value of [Avg. Units/Transaction] is empty if value of [Units] is empty
4. The calculation of [Avg. Units/Transaction] can be skipped if value of [Units] is
empty
5. We can add the NON EMPTY directive for [Avg. Units/Transaction] by rewriting
the formula as
[Avg. Units/Transaction] = NONEMPTYMEMBER [Units]
[Units]/[Transactions]
The application log will contain hints on which MDX formulas could benefit with
using the NON EMPTY directives. The query performance improvements obtained
from defining NON EMPTY directives properly in each MDX outline member
formulas can be very significant. The performance improvements increase with the
complexity of the formula and sparseness of the data.
The following sections are to help guide with tuning areas. Only methodical
performance and load testing can determine the optimal settings for a given
application design and process.
Typically, ASO databases with > 20 million input level cells, default of 32 MB cache
is sufficient. ASO databases with < 20 million input level cells, 64 to 128 MB cache
may be more appropriate. ASO databases with 1 billion cells or more, the Pending
Cache Size Limit may be set as high as 512 MB or 1 GB if the available memory
permits it. However, it is not recommended to set Pending Cache Size Limit (MB) to
more than half of the machine's total physical memory. The reason is that it is
beneficial to leave space for the operating system's file cache. Also, there is a
diminishing benefit to making the Pending Cache Size Limit (MB) larger and larger.
For example, there is a huge benefit to increasing the Pending Cache Size Limit (MB)
from the default 32 MB to 64 or 128 MB; however, beyond about 1GB, the effect of
77
increasing the cache will probably not be noticeable unless running parallel data
loads.
Tuning Pending Cache Size Limit (MB) requires methodical testing to ensure the
appropriate setting is selected for a given design, process and data distribution.
The following sections are to help guide with tuning areas. Only methodical
performance and load testing can determine the optimal settings for a given
application design and process.
78
6.1.3.3 Table Space
The ASO kernel stores data in two different table spaces, “default” and “temp.” The
“default” table space is used to store cube cells, both level zero input cells and
aggregated cells. The “temp” table space is used for intermediate storage of cells
during data load, aggregation, and large queries. There could be data load
improvement by separating the two table spaces into two difference physical drives.
6.1.4 Aggregation
See the Oracle Essbase Database Administrator's Guide for complete details
regarding Aggregate Storage Aggregate Views tuning.
http://docs.oracle.com/cd/E40248_01/epm.1112/essbase_db.pdf
The following sections are to help guide with tuning areas. Only methodical
performance and load testing can determine the optimal settings for a given
application design and process.
There are several aggregate view options in EAS Console and MaxL that should be
methodically tested to ensure the appropriate aggregation view option is selected
for a given design, process and data distribution.
Ref to the Oracle Essbase Database Administrator's Guide and Oracle Essbase
Technical Reference to review these areas:
• Default Aggregation Option
• Stopping When Total_Size Exceeds a Certain Size Option
• Enable Alternate_Rollups Option
• Query Tracker Enabled Option
• ASOSAMPLESIZEPERCENT Essbase.cfg setting to control the views generated
more efficiently
79
The following sections are to help guide with tuning areas. Only methodical
performance and load testing can determine the optimal settings for a given
application design and process.
MAXFORMULACACHESIZE http://docs.oracle.com/cd/E10530_01/doc/epm.931/html_es
b_techref/config/maxformulacachesize.htm
80
6.2 Essbase Block Storage (BSO) Tuning
For full design, tuning and limits details refer to the Oracle EPM Essbase
Documentation Release 11.1.2.3
http://docs.oracle.com/cd/E40248_01/nav/portal_3.htm
The key Essbase guides that should be reviewed for all design, tuning and limits
considerations are:
• Oracle Essbase Database Administrator's Guide
• Oracle Essbase Technical Reference
• Oracle Essbase Administration Services (Online Help)
The following topics are additional design, tuning and limits considerations to
optimize Essbase Block Storage (BSO) performance; however, for full details see the
guides referenced above.
6.2.1 Outline
See the Oracle Essbase Database Administrator's Guide for complete details
regarding Block Storage Outline design and tuning.
http://docs.oracle.com/cd/E40248_01/epm.1112/essbase_db.pdf
The following sections are to help guide with tuning areas. Only methodical
performance and load testing can determine the optimal settings for a given
application design and process.
The sparse/dense configuration drives the size of the compressed on disk and
uncompressed block size in memory. This can impact several areas of performance
including disk IO performance, which is why methodical testing is needed to
determine the best configuration.
81
General rule of thumb for any Planning application is to start with dense dimensions
first but then sparse dimensions with the aggregating dimensions on top than non-
aggregation dimensions on the bottom.
Dimension order is critical because it impacts calculator cache usage and determines
how parallel threads are split into independent tasks.
The following sections are to help guide with tuning areas. Only methodical
performance and load testing can determine the optimal settings for a given
application design and process.
For Buffered IO, at the time a block is read into Essbase memory, the block is
immediately uncompressed or expanded and put into the Data Cache.
82
For Direct IO, at the time a block is read into Essbase memory, the block remains
compressed and put to the Data File Cache which will later be uncompressed and
put to the Data Cache.
Sizing Data Cache should be done based on the expanded block size, which can be
calculated from the number of dense cells that are not virtual members i.e. Actual
Block Size in GetDBStats. See Commit Blocks for another option to size Data Cache.
Sizing Data File Cache is virtually the sum of the sizes of the ess*.pag files.
For additional information on BSO Commit Block tuning, see the blog post
https://blogs.oracle.com/pa/entry/essbase_11_1_2_commit
Important Note: On some Planning apps where user concurrency is high, then the
commit block setting should not be set too high in order to avoid locking issues.
83
6.2.2.5 Retrieval Buffer Size
The retrieval buffers are a server buffer per database that holds extracted row data
cells per user query.
When the retrieval buffer is full, the rows are processed and the buffer is reused. If
these buffers are too small, frequent reuse of the area can increase retrieval times. If
these buffers are too large, too much memory may be used when concurrent users
perform queries while also increasing retrieval times.
Oracle recommends that you do not exceed 100 KB, although the size limit is set at
100,000 KB.
See the Oracle Essbase Technical Reference for a complete list of Calculation
Commands that apply to Block Storage applications.
http://docs.oracle.com/cd/E40248_01/epm.1112/essbase_tech_ref.pdf
The following sections are to help guide with tuning areas. Only methodical
performance and load testing can determine the optimal settings for a given
application design and process.
84
SET REMOTECALC
SET RUNTIMESUBVARS
SET UPDATECALC
For additional information on other BSO Calculation Commands, see the blog post
https://blogs.oracle.com/pa/entry/essbase_11_1_2_optimisation
85
It is strongly recommended that the default value be used than incrementally
increase the value during methodical performance and load testing to find the best
setting.
6.3 Troubleshooting
6.3.1 EAS Launching Multiple Essbase Sessions
If a job initiated from EAS takes longer than 5 minutes, a new Essbase connection
and a new Essbase session will be launched before the first session has completed.
An Essbase connection and a new session will be launched at 5 minute intervals
while the job is running in Essbase, creating multiple sessions per job and
unnecessarily creating a heavier load on the Essbase agent.
For additional information on EAS Launching Multiple Essbase Sessions, see the
blog post https://blogs.oracle.com/pa/entry/eas_jobs_taking_longer_than
86
6.3.3 Essbase Java Heap Size
Increase the Java heap size only during peak periods with a large number of
concurrent logins when Essbase agent runs out of memory or terminates
abnormally.
For additional information on Essbase Java Heap Size, see the CEAL blog post
https://blogs.oracle.com/pa/entry/epm_11_1_2_how1
Important Note: When tuning the heap size for Essbase, there are two
JVM_OPTIONS settings available for Essbase - one for the Essbase Agent and one
for the Essbase applications that are using Custom Defined Functions (CDFs),
Custom Defined Macros (CDMs), data mining, triggers or external authentication.
For additional information on these two Essbase Java Heap Settings, see the blog
post https://blogs.oracle.com/pa/entry/jvm_option_settings_for_essbase
For additional information on fragmentation on BSO applications, see the blog post
https://blogs.oracle.com/pa/entry/essbase_bso_data_fragmentation
87
guarantee the metadata and data implied share setting are in sync. If there are any
issues after following the “unsupported” steps, Oracle Support will require that the
supported steps be followed first.
For additional information on these “unsupported” steps, see the blog post
https://blogs.oracle.com/pa/entry/disabling_implied_share_for_an1
For additional information on Essbase outline migration issues, see the blog post
https://blogs.oracle.com/pa/entry/performance_issues_after_upgrading_essbase
88
7.0 TUNING REPORTING AND ANALYSIS
This chapter includes the following sections that provide a quick start for tuning the
performance of your reports.
Tip: To apply above settings, in EPM Workspace you need to Select Navigate, then
Administer, then Reporting and Analysis, and then Services. Right-click the
Reporting and Analysis Framework service and select Properties. Modify the
desired properties as per screenshot below and then click OK.
89
7.1.2 Tune Max Connections
Tune maximum number of connections allowed for RAF services. When increasing
the maximum connections consider the memory allocation for the connections you
allow. You must increase the maximum number of file descriptors on some systems,
such as UNIX.
Important Note: The maximum connection to each service agent is 100 by default.
Under load, this value may not be sufficient. Use the below suggested settings as a
starting point, and then, after careful testing, adjust as needed
Parameter Default Value Suggested Value
Service Broker 100 500
Job Service 100 500
Event Service 100 500
Repository 100 500
Tip: To apply above settings, in EPM Workspace you need to Select Navigate, then
Administer, then Reporting and Analysis, and then Services. Right-click the
Reporting and Analysis Framework service and select Properties. Increase the Max
Connections to “500” for each service highlighted in screenshot below and then click
OK.
90
7.2 Financial Reporting
This topic describes how to tune the Financial Reporting to optimize the
performance of your reports.
91
printers. Additional printers can be created
by editing HRCreatePrinters.ini and
running HRCreatePrinters.exe in
financialreporting\bin.
Specify the frequency (in milliseconds) at
which the
MinimumConnectionInactiveTime cleanup
CleanUpThreadDelay 300000
thread runs. The default is to check for
inactive connections every 300000
milliseconds (5 minutes).
In Annotations, if you have a database rack
and failover happens, how long, in
DbConnRetryInterval
milliseconds, do you want to wait for a
successful attempt to the database.
In Annotations, if you have a database rack
DbMaxConnectAttempts and failover happens, how many retries to
connect should be made.
Specify, in minutes, the frequency at which
the web Application Server sends replies
back to the browser client. This is useful if
HRWebKeepAliveInterval 1
http traffic passes through a proxy server
that imposes timeouts. The default is one
minute
Proxy server hostname for any http
HTTPProxyHost connections required by Financial Reporting
Books.
Proxy server Port number for any HTTP
HTTPProxyPort connections required by Financial Reporting
Books.
Report Server Calculation Setting. Specify
the maximum number of calculation
iterations for all grids and cells. During the
calculation process of a grid, it may be
necessary to evaluate a cell multiple times
due to reference precedence. This mostly
occurs in grids with references to other
MaximumCalculationIterations 5
grids. If there are no circular references and
calculation cells are retuning Error,
increasing the value may resolve the
problem. The default is 5.
Note:
Making the number very high may degrade
grid execution performance.
Connection Manager Setting. The
Connection Manager is a subcomponent of
MinimumConnectionInactiveTime 300000
the Report Server, Web Application and
Financial Reporting Studio. The lifetime of a
92
data source connection is determined by
MinimumConnectionInactiveTime. Specify
the minimum time (in milliseconds) before
an inactive data source connection is closed
by the MinimumConnectionInactiveTime
cleanup thread. The default is to close
connections that have remained inactive for
300000 milliseconds (5 minutes).
Specify the time (in milliseconds) that
completed Reports, Snapshots, Books, and
Snapshot books remain on the print server
(for generating PDF or printing) before they
PrintServerResultCacheTime 6000000 are removed (the period of time before
which uncollected, or "orphaned", results
are deleted). The default is to remove results
that run longer than 6000000 milliseconds (1
hour).
Specify the frequency (in milliseconds) at
which the PrintServerResultCacheTime
cleanup thread runs. Setting this too low
PrintServerResultsCleanUpThreadDelay 36000000 could cause running requests to be
terminated and removed. The default is to
check for uncollected results every 36000000
milliseconds (10 hours).
Comma separated list of print servers
available to the report server in the
PrintServers
‘server:port’ format. For example:
printserver1:10999, printserver2:10999.
Specify the maximum number of threads
created for printing/generating PDF files at
one time. The default is based on the
number of CPUs in the host machine. Five
PrintingMaxThreads 10
threads are allowed for each CPU. For
example, the default for a system with two
CPUs is ten threads. Specifying 0 allows an
unlimited number of threads to be created
Specify the maximum number of threads
created for running reports at any time. The
default is based on the number of CPUs in
the host machine - 5 threads per CPU.
1 CPU = 5 threads
ReportServerMaxThreads 5
2 CPUs = 10 threads
3 CPUs = 15 threads
4 or more CPUs = 20 threads
Specifying 0 allows an unlimited number of
threads to be created.
ReportServerReportCacheTime 72000000 Specify the time (in milliseconds) that
93
completed Reports, Snapshots, Books, and
Snapshot books will remain on the Report
Server before they are removed. (The period
of time before which uncollected, or
"orphaned", results are deleted. A result
may become orphaned, for example, if a
user requests a report, then closes his web
browser before the report finishes running.)
The default is to remove results that run
longer than 72000000 milliseconds (20
hours).
Specify the frequency (in milliseconds) at
which the ReportServerReportCacheTime
cleanup thread runs. Setting this too low
ReportServerReportCleanUpThreadDelay 36000000 could cause running requests to be
terminated and removed. The default is to
check for uncollected results every 36000000
milliseconds (10 hours).
Configuration setting for the Financial
Reporting scheduler server. Specify the time
in milliseconds to retain completed batch
results. For example, to delete batch results
older than 5 days specify 432000000
milliseconds. The
ScheduledBatchCacheTime 0
ScheduledBatchCleanUpThreadDelay
property must be set to a value greater than
0 to enable this cleanup option. Pending
batches will not be removed. The default is
0 milliseconds which means that batch
results will not be removed.
Specify how often the scheduler should
check for batch results to remove (in
milliseconds). For example, to check every
ScheduledBatchCleanUpThreadDelay 0 24 hours specify 86400000 milliseconds as
the value. The default is 0 milliseconds
which means that the scheduler will not
remove batch results.
Tip: Suggestion here is to fine tune each parameter one by one starting thread
parameters first, then time-outs one, then cache and interval ones. A valid stress test
is around 4 hours in which all concurrent users are tested including all Financial
Reporting scenarios.
94
7.3 Web Analysis
This topic describes how to tune the Web Analysis to optimize the performance of
your reports.
7.3.1 Tune JVM Heap Size
Increase the Web Analysis Web JVM memory settings as stated in section "Tuning
Java Virtual Machines (JVM)"of this guide.
95
7.0 TUNING DATA MANAGEMENT
This chapter includes the following sections that provide a quick start for tuning the
performance of your data management.
This means that for a 5 engine system there will be the following engine types:
• 1 Read Write Engine
• 1 Short Read Engine
• 1 Request API Engine (Version 9.3.2 and Higher)
• 0 to 2 long read Engines
The recommended number of CPUs would be 4. Depending on the usage you may
be able to increase the max number of engines by 1 or 2 to get more long read
engines available, especially if you are not using the Request API as that engine will
then remain idle. However there are circumstances (Long Write Operations like
import and blend and running large automates) that can prevent the LRO Engines
from running even if there is processing power available.
Note: Hyper threading processors make it look like there are more processors.
However these are not physical processors and as such they do not increase the
capability of DRM.
Due to the large amount of memory usage by DRM, hyper threading can actually
decrease performance.
96
primarily based on the number of versions opened in that engine times the amount
of memory used per version.
If the amount of memory used exceeds the physical memory of the server then
paging will occur and will severely impact performance. Even when it does not
exceed the actual physical memory the Windows OS will force some of the DRM
memory down to disk to ensure that there is physical memory available for the
operating system and other system processes.
It is recommended to have enough physical RAM for the engines to each take 2 GB
and still have an addition 2 GB of ram for IIS and an additional 2 GB for general OS
and other processes.
So for a 5 engine system that would be:
o 10 GB for the engines
o 2 for IIS
o 2 for OS and Misc
o Total of 14 GB (Rounded up to 16 usually since this is a more common
configuration)
Note: if the Request API is not being used that engine can be removed from the
equation.
97
7.2 Tune Financial Data Quality Management (FDQM)
This topic describes how to tune Financial Data Quality Management (a.k.a. FDQM)
to optimize the performance of your Oracle® EPM System.
98
7.2.3 Creating applications for optimal performances:
Note:
During Application creation if override table spaces is not selected, all tablespaces
default to Users. Use of the default can severely degrade performance. See the Oracle
Hyperion Financial Data Quality Management DBA Guide for detailed tuning
instructions prior to creating the FDM application.
Make sure Data partitioning and RDBMS Disk I/O Optimization is done before
using your application.
Further more details are available on these links:
http://docs.oracle.com/cd/E40248_01/epm.1112/fdm_dba/ch03.html
99
8.0 Web Browser optimizations
This chapter includes the following sections that provide a quick start for tuning the
performance of your data management.
HKEY_LOCAL_MACHINE (or
HKEY_CURRENT_USER)\SOFTWARE\Microsoft\Internet
Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPER1_0SERVER
Add iexplore.exe DWORD Value, with 16 as decimal value
HKEY_LOCAL_MACHINE (or
HKEY_CURRENT_USER)\SOFTWARE\Policies\Microsoft\Internet
Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPERSERVER
Add iexplore.exe DWORD Value, with 16 as decimal value
HKEY_LOCAL_MACHINE (or
HKEY_CURRENT_USER)\SOFTWARE\Policies\Microsoft\Internet
Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPER1_0SERVER
Add iexplore.exe DWORD Value, with 16 as decimal value
100
For Internet Explorer 7, there are 3 registry keys: in
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet
Settings
Add MaxConnectionsPerServer DWORD Value, with 16 as decimal value
Add MaxConnectionsPer1_0Server DWORD Value, with 16 as decimal value
Add KeepAliveTimeout DWORD Value, with 120000 as decimal value
101
2. Automatically checking for RSS feeds is reported to slow IE performance. You can
turn this off by going to:
Tools->Internet Options->Content->Feeds->Settings
And then uncheck all boxes shown:
3. Use of ClearType with IE has been reported to slow IE performance. You can
disable Cleartype in IE by going to:
Tools->Internet Options->Advanced
And then moving the slider on the right until you see Always use ClearType for
HTML*, at which point you can uncheck that option.
102
4. Use of automatic image resizing with IE has been reported to slow IE
performance. You can disable automatic image resizing in IE by going to:
Tools->Internet Options->Advanced
And then moving the slider on the right until you see Enable automatic image
resizing*, at which point you can uncheck that option.
5. Use of page transitions with IE has been reported to slow IE performance. You can
disable page transitions in IE by going to:
Tools->Internet Options->Advanced
And then moving the slider on the right until you see Enable page transitions*, at
which point you can uncheck that option.
103
6. Use of smooth scrolling with IE has been reported to slow IE performance. You
can disable smooth scrolling in IE by going to:
Tools->Internet Options->Advanced
And then moving the slider on the right until you see Use smooth scrolling, at which
point you can uncheck that option.
104
8.2 Tune Firefox
This topic describes how to tune Firefox to optimize the performance of your
Oracle® EPM System.
105
For HTTP keep-alive:
Enter ‘about:config’ in the URL bar, and click ‘I’ll be careful’.
Search for ‘network.http’.
Enable all the keep-alive options, if not already (they should be).
You can increase ‘network.http.max-persistent-connections-per-proxy’ and
‘network.http.max-persistent-connections-per-server’ to 15.
106
9.0 Disk tuning
This chapter includes the following sections that provide a quick start for tuning the
performance of your disks.
Tip: NFS and CIFS protocols are not recommended for EPM, and especially Essbase
and R&A Framework.
107
- CXFS for IBM-AIX
108
10.0 Oracle Virtual Machine tuning
This chapter includes the following sections that provide a quick start for tuning the
performance of Oracle Virtual Machines.
109
Oracle® EPM, Fusion Edition Performance Tuning Guide, Release 11.1.2.2, 11.1.2.3
Revised Edition – October 2013
Authors: CEAL Team
Customer Engineering & Advocacy Laboratory Team, BI/EPM/Cloud
Oracle Corporation
World Headquarters
500 Oracle Parkway
Redwood Shores, CA 94065
U.S.A.
Worldwide Inquiries:
Phone: +1.650.506.7000
Fax: +1.650.506.7200
www.oracle.com
110