If you have ever been running late for an appointment and been stuck behind a slow moving line of cars, you know the helpless feeling knowing that you are going to be late for your appointment. Similarly, you know the relief and exhilaration when the road widens into a 4 lane highway and now you can increase your speed (to the speed limit, of course!) and get to your appointment on time.
A parallel can be drawn to running a payout or a process (such as Transaction Posting) in APMe. Occasionally, there will be a larger data set that needs to be processed and the payout deadline is fast approaching. APMe allows certain processes to be multi threaded to allow the work in a certain process to divided into separate and mostly equal threads. Multi threading can approximate going from a two lane highway to a 4 lane interstate.
How it works:
In this example, we have 100,000 transactions that need to be posted. When the TranHead Post Task is single threaded, the TranHead Post task processes all 100,000 transaction in batches (typically set for 700 at a time).
If we set the TranHead Post task to be multi threaded with 4 threads, APMe will:
Split the number of transactions into 4 approximately equal groups of transactions (~25,000) along logical lines (in this instance by Customer).
Assign the transactions to a thread
Process each thread simultaneously (each thread processing in batches of 700)
When all four threads have completed, the next next task is processed.
Multi threading is not always beneficial for every task within a process. There is an overhead cost (time) for dividing the work and assigning the work to the threads. For example, if you are only normally posting 1000 transactions, it may take more time for APMe to divide the work, assign the work and process each thread than it would be to just post the 1000 transactions in a single thread.
In conclusion, multi threading is a powerful tool to reduce process runtimes as volume grows with your business. It is worthwhile to investigate and test processes within APMe that can benefit from multi threading.
Information on Configuring a Process to be Multi threaded can be found in the SAP Help Link below: