This document provides overview of “Accelerated and Parallel Import” strategy for SAP ABAP transports. It also lists out key pre-requisites, performance drivers to be considered, TP parameters and their settings in order to enable this optimized import mechanism. Sample test results, expected benefits, and other possible tuning options are some of the highlights of this document.

Systems in Scope:

All ABAP and Dual stack systems excluding JAVA stack

Expected benefits

  • Reduction in individual transport import duration in comparison to default un-tuned import scenario. Test results show a max gain close to 87% though results typically depend upon factors detailed in the section below “Performance drivers”.
  • Average performance and time gain during mass/bundle import tests was close to 25% in comparison to default import scenario.
  • Comparable savings in terms of maintenance and downtime window during Business releases as changes via transports are imported considerably faster.
  • Efficient utilization of available h/w resources during system uptime and maintenance
  • System specific transport log directories enabling quicker analysis and troubleshooting of

Recommendation on TP parameters : Default import vs. Accelerated & Parallel import

Maintain following parameters in transport profile for every system to enable and activate Accelerated and Parallel import.

Parameters.JPG

This can also be done from domain controller => Tcode STMS => System Overview  => Double click the system where configuration needs to be changed => Tab “Transport Tool” => Activate change mode => Add/update parameters as mentioned above => Save and Distribute the new TMS configuration.

  • There is no fix value recommendation for PARALLEL that can help you achieve optimized import times. Instead it depends upon the number of CPU cores that are available on the server where TR import is expected and also depends upon the factors detailed in the section below “Performance drivers”. Several test imports with different values can help you identify suitable value in your transport environment. I suggest to use PARALLEL = 4 in general where you have no. of CPU cores >=4 on SAP server.
  • SID_LOG_FILES = TRUE / 1 has a pre-requisite of creating directory named “SID” under filesystem /usr/sap/trans/log.

          E.g. directory /usr/sap/trans/log/BE1 should be created before changing parameter value for BE1 system.

  • Similar parallelism is also used by SUM tool during technical patching/upgrade to reduce overall import time of new SPs and versions upgrades.
  • Online activation and deactivation of Accelerated and Parallel import is possible with nil impact on running transports and active business transactions/users.

Key pre-requisites:

SAP_BASIS rel. >= 700

SAP kernel >= 720

Performance drivers:

  • Number of CPUs on the application server where the import is running
  • Capabilities of the database to handle many parallel processes
  • Location of the database server (if database and import are running on the same server, they will share their resources, e.g. CPU power)
  • I/O performance (because parallel import processes read the same data file and write their logs into the same directory)
  • Number of objects in the transport requests
  • For small transport requests, R3trans will switch off parallelism automatically

Test results – ECC with medium size TRs:

  • Testing was excuted with medium size sample TRs <XXX>K911586 (UAM roles and authorization) and <XXX>KT00002/XXXKT00004 (User export import) in ECC systems with parallel degree of 0, 4 and 8.

Import in ECC.JPG

Test results – BI with small size TRs:

  • Testing on BI was excuted for small size sample TRs <XXX>K942741 and <XXX>K942732 with parallel degree of 0 and 4.

Import in BI.JPG

Test results – TR mass / bundle import in ECC:

  • Mass bundle of 2400 TRs was imported in ECC system during this test case with parallel degree of 0 and 4.

Mass import.JPG

Additional tuning options:

  • Parameter ACTIVATEMERGED = TRUE can be added to transport profile.

This ensures that the system does not activate the ABAP dictionary for each request; instead, it performs a joint activation run for all ABAP Dictionary objects that were imported in an import queue. This omits the overhead that occurs due to multiple activations of several transported objects and their dependent objects.

One disadvantage of this option is that a collective activation log exists rather that an individual activation log for each transport request.

  • Parameter GENERATION = FALSE can be added to transport profile.

This setting deactivates generation of ABAP programs and screens and also disables syntax check during import of transport. Even if this transport step is not executed, all transported objects are consistent and active in the system.

However disadvantage of this option is that the runtime objects are then created during the first call leading to longer system response time for that call.

Reference SAP notes and links:

1223360 – Composite SAP Note: Performance optimization during import

1127194 – R3trans import with parallel processes

1616401 – Understanding parallelism during the Upgrades, EhPs and Support

http://help.sap.com/erp2005_ehp_04/helpdata/en/1e/080c6401b011d284870000e8a57770/content.htm

Vendor/SAP review of recommended changes and confirmation obtained: Yes, via SAP Message/Incident #314682

To report this post you need to login first.

7 Comments

You must be Logged on to comment or reply to a post.

  1. Vamsi Krishna Srikanti

    thanks for the nice post Lalit. Even I tried to configure PARALLEL parameter in our BW system in the past once by following the NOTE-1127194, but I couldn’t locate the parameter in the parameters list of Transport Tool (at ABAP level).

    After your post I double checked for the parameters, still I dont see any of the three parameters. Our BW system runs with 742 kernel.

    Did you directly configure in transport profile?

    Thanks,

    Vamsi Krishna.

    (0) 
  2. Ankit Gupta

    In BW systems, normally there is a problem with Generation of lots of programs which take time. Is there any way parallelism can be enabled for generation of programs during transport import rather than disabling it ?

    Regards,

    Ankit

    (0) 
    1. Andy Lawrence

      Hi Ankit

      What can be done is to run an SGEN after the import and use its parallelisation options. You can provide the list of transports to SGEN and it will generate the objects in these requests in parallel. 

      Many thanks

      Andy

      (0) 
  3. Venkata Jagadeeshwara Reddy Adem

    Hi Lalit,

    Thanks for sharing a bit from your knowledge tank.

    This page really helps reduce the overall maintenance time during mass bundle transports to a very significant time and improves system availability.

    Kudos!

    BR
    Jagadeeshwara Reddy AV

    (0) 

Leave a Reply