Possible performance bottlenecks in SGEN
One of the main reasons why SGEN can be with a poor performance is the lack of available work processes, either dialog (DIA) or background (BGD).
This can be checked in SM50/66. Afterwards, in case it is needed, you can rearrange the Work Processes in RZ03, for example.
Also, it is alway good to check the database logs (for example, Oracle Alert Log) during such execution for relevant messages. Sometimes defragmented state of the database may cause the difference too!
Transaction SGEN determines the so-called generation set through the options given in the first screen and the content of the file REPLIST.
The resulting set is saved in table GENSETC.
After that step the SGEN starts a number of generation jobs in batch based on the amount of free workprocesses which then do the dirty work and process the content of GENSETC.
So there are in actually two parts which are citical:
- First part is SGEN related and means the calculation of the generation set.
- Second part is the performance of the gen. jobs and this is usually out of control of SGEN.
This is SAP system related and depends on resources of the system itself, like main memory, number of cpu and last but not least, the database performance.
It can be said that the runtime of the gen jobs is heavily depending on the database performance of the system. All the eight jobs access the tables REPOSRC and REPOLOAD and some other administrative tables, thus creating heavy database load.
Hence the performance of the gen jobs is not usually SGEN related, SGEN cannot do anything after having started the batch.
So there are two option to be looked at:
- If there are enough system resources like main memory, number of cpu AND enough SAP system resources like number of batch jobs and the database load is not near 100% THEN you could think about increasing the maximum number of batch jobs to perform the generation. This is meant for all instances.
- In case the runtime of the batch is the issue then a general look into DB performance can be helpful. Please contact your database expert to perform the checks.
The runtime of the batch is out of control of SGEN, but are the performance factor in generation.
In case that the DB performance or the general SAP system batch performance is the issue, then big differences in runtime of the generation jobs between SGEN and SAMT will not be visible. The basic work is the same.
Specially when the database is the limiting factor both the SGEN batch jobs and SAMT should take a similar amount of time.
The following SAP notes can checked more information: