Translation COBOL applications to Java or C# opens the door for utilization of today's cheaper multi-core processors and cloud based deployment.
For online application, the performance of Java/C# applications has always been easily managed using server-side load balancing techniques.
However, batch processes require some additional manual enhancements to allow them to benefit from multi-threading/multi-core processors on the cloud.
The work usually involves parallelization of program loops where most of the execution time is spent.
Parallelization of batch processes together with the use of cloud-based deployment will allow each batch process to be conducted faster through the availability of multiple process cores.
Meanwhile the running costs will be reduced as additional processors may be added (on the cloud) only for the duration of the process.
SoftwareMining Parallization APIs for translated Java / C# code
SoftwareMining now includes a set of APIs within its framework to facilitate cyclic multi-threading for translated applications through small and limited manual changes.
The facilities provided within the framework includes:
Start-up options - the framework can automatically launch and manage multiple instances of a batch program
Advanced load and cache for static (no-changing) input data - having the data in memory offers much faster access to the data for launched instances
Patterns for identification/division of work between launched instances (e.g. process records for clients A-M in thread-1, and N-Z in thread-2)
Synchronization Barrier - allowing system to wait for completion of all instances before moving to next stage (e.g. writing the data).