Hi All
I have batch job written in ABL running against a Progress Enterprise RDBMS and was wondering if ABL was capable of parallel computation?
The database is running under 10.2B06 X64 on Windows 2008 R2 X64 Server. The batch jobs runs as a self service client on the server. The database holds customer accounts and the batch job reviews the accounts to push them down a work queue, accounts are unrelated to each other and can easily be grouped into portfolios. My normal approach would be to spawn multiple instances of the batch job each concerned with its own set of accounts e.g. one batch doing accounts A-G another doing H-R etc.. However there is another batch job that needs to start straight after the one I want to multi-thread and rather that write a watcher batch to wait for the last thread to complete I was wondering if there was something in ABL that supported parallel computations e.g. one program in ABL code that could start each of the threads and wait for the last to finish.
Parallel computation in my head would look something like this in code: -
/**/
/*Run three threads*/
RUN prThread (1) PROCESS-THREAD CONTINUE. /*spawns a thread running in its own server process*/
RUN prThread (2) PROCESS-THREAD CONTINUE. /*spawns a thread running in its own server process*/
RUN prThread (3) PROCESS-THREAD CONTINUE. /*spawns a thread running in its own server process*/
/*Wait for threads to complete then run next batch*/
RUN prNextbatch.
lots more code.
/**/
Does what I am asking for make sense, after all every server on the planet has multiple CPU cores and it would be good if Progress had support for parallel computational programming.
If 10.2B cannot do this then can OE11? Can any programming language?
Regards
Andrew Bremner
I have batch job written in ABL running against a Progress Enterprise RDBMS and was wondering if ABL was capable of parallel computation?
The database is running under 10.2B06 X64 on Windows 2008 R2 X64 Server. The batch jobs runs as a self service client on the server. The database holds customer accounts and the batch job reviews the accounts to push them down a work queue, accounts are unrelated to each other and can easily be grouped into portfolios. My normal approach would be to spawn multiple instances of the batch job each concerned with its own set of accounts e.g. one batch doing accounts A-G another doing H-R etc.. However there is another batch job that needs to start straight after the one I want to multi-thread and rather that write a watcher batch to wait for the last thread to complete I was wondering if there was something in ABL that supported parallel computations e.g. one program in ABL code that could start each of the threads and wait for the last to finish.
Parallel computation in my head would look something like this in code: -
/**/
/*Run three threads*/
RUN prThread (1) PROCESS-THREAD CONTINUE. /*spawns a thread running in its own server process*/
RUN prThread (2) PROCESS-THREAD CONTINUE. /*spawns a thread running in its own server process*/
RUN prThread (3) PROCESS-THREAD CONTINUE. /*spawns a thread running in its own server process*/
/*Wait for threads to complete then run next batch*/
RUN prNextbatch.
lots more code.
/**/
Does what I am asking for make sense, after all every server on the planet has multiple CPU cores and it would be good if Progress had support for parallel computational programming.
If 10.2B cannot do this then can OE11? Can any programming language?
Regards
Andrew Bremner