Siebel Order Management Infrastructure Guide > PSP Engine >

About Tuning Performance of PSP

Consider the following when tuning the performance of your preconfigured and custom PSP procedures:

Preconfigured PSP Procedures

Tune the preconfigured PSP procedures by:

  • Removing steps that your implementation does not require
  • Eliminating unused values from the variable maps

General Design Guidelines

Follow these general design guidelines to further improve the performance of PSP:

  • Optimize eligibility PSP procedures by:
    • Executing low-cost tests first
    • Performing high-cost tests (such as Web Service calls) only in post-pick processing
  • Build performance hints into the procedure definition. Use the Process Condition input argument in each step to identify the subset of rows in the row set that require processing (example: "{Row.Promotion Id} IS NOT NULL"). This can eliminate unnecessary SQL and in-memory operations.
  • When multiple steps operate on the same subset of rows, split the row set, perform the operations on the subset of rows, and then merge the two split row sets afterwards.
  • Avoid unnecessary subprocedures. Subprocedure calls involve copying the row set, which it is best to avoid where possible.
  • Optimize external Web Service calls by:
    • Designing the Web Service interface to be set-based
    • Making sure that a single invocation will process all rows in the row set
  • Use PSP Cache for caching of database query results. For more information on how to tune PSP performance with caching, see About PSP Cache.

SQL Queries

Use the following guidelines to improve the SQL query performance of PSP:

  • Minimize the number of SQL queries executed. Consolidate multiple Simple Look-Up steps into one step if the steps use data from the same reference data business component with the same search specification.
  • Tune SQL queries by:
    • Querying through thin business components to minimize Siebel Object Manager overhead and reduce query complexity.
    • Making sure that all search specifications have index coverage.

Logging of Performance

PSP provides extensive logging of performance-related data. Analyze the PSP log to determine which steps are consuming the most processing time and where the caching can be further optimized.

PSP logging that takes place in the server environment is more effective than PSP logging that takes place locally, because in the server environment there is only one environment variable controlling the log level for all the events.

You can use the events listed in Table 30 to log the performance of PSP.

Table 30. Server Parameters for Logging Performance of PSP
Event Type

Object Manager Business Service Operation and SetErrorMsg Log


Logs the performance of business service methods which include the PSP transform methods.

Workflow Performance


Logs the performance at the workflow level or step level.

PSP Cache Event

For more information, see About PSP Cache.


Logs the performance of PSP Cache.

When debugging the pricer, the price waterfall output provides valuable clues as to which transforms and actions were executed. For more details on logging, see About Logging of PSP.

Siebel Order Management Infrastructure Guide Copyright © 2006, Oracle. All rights reserved.