Inconsistency with parallel run


Thread Tools Search this Thread
# 1  
Old 10-30-2017
Inconsistency with parallel run

Hi All,

I am running a parallel processing on aggregating a file. I am splitting the process into 7 separate parallel process and processing the same input file and the process will do the same for each 7 run. The issue I am having is for some reason the 1st parallel processes complete first with minimum time and the second complete as second and so on. Each process completion having significant difference in time.

I tried to look CPU usage when process with top command all the process is occupying 97% of CPU not sure why there is a difference between each parallel run.

Is there a way I can trace the process and find whether it is problem with IO/ Memory or CPU.

Note: Each process will read the same file from NAS mount and do the aggregation. I am using RedHAT

# 2  
Old 10-30-2017
More details, please.
That file almost certainly will be buffered locally when being accessed from NAS, so the first process should take longest. Will the file be updated / written back? Per process? Are the processes doing identical operations on the file? Do these influence each other? How do user and system times compare between processes? Do you have lock information available?
# 3  
Old 10-30-2017
Why would they be identical? Especially if they're I/O bound. More details needed.
# 4  
Old 10-30-2017
No we are not wring the file . Basically we are reading the file from NAS and then comparing the same file with qualified records and doing the aggregation.

The file in NAS is the full set. Where it have details about the customer and the file we will be compared will be SAN. Which have the transaction record of customer. The file from NAS will be compared with the transaction record and then the aggrigation happens. We are splitting that into 7 parallel so that we can achieve performance.
# 5  
Old 10-30-2017
Are the seven splits identical? Sounds like you are breaking a transaction file into seven parts to lookup against a master file.
Because I cannot fathom any reason to do the same thing seven times - my only guess is that you are doing it seven times BUT with different data elements.
Please provide more details.
# 6  
Old 10-30-2017
Below is what I traced back. Basically there will be huge file we are processing that in parallel . The file transaction_data.dat will be compared with the spend.dat. The file spend is a small file. We will match the transaction between these file and do the aggregation

I made the transaction_data.dat in SAN . Even with that I am seeing the first parallel process is taking less time and the process time increase with the split going on

Below is the log on the process. I see the process split the file almost into equal split but not sure why the process different between each parallel run
Process 1:
(21899) Total process time = 102.550
(21899) Final Elapsed time = 103.000
(21899) Position Start 0Position End 4700904

(21900) Total process time = 193.660
(21900) Final Elapsed time = 195.000
(21900) Position Start 4700904Position End 9401808

Process 3:
(21901) Total process time = 300.220
(21901) Final Elapsed time = 303.000
(21901) Position Start 9401808Position End 14102218

Process 4:
(21902) Total process time = 333.180
(21902) Final Elapsed time = 337.000
(21902) Position Start 14102218Position End 18802628

Process 5:
(21903) Total process time = 379.340
(21903) Final Elapsed time = 383.000
(21903) Position Start 18802628Position End 23504026

Process 6:
(21904) Total process time = 423.610
(21904) Final Elapsed time = 428.000
(21904) Position Start 23504026Position End 28204436

Process 7:
(21905) Total process time = 411.130
(21905) Final Elapsed time = 415.000
(21905) Position Start 28204436Position End 32905093

Process 8:
(21906) Total process time = 532.900
(21906) Final Elapsed time = 538.000

Last edited by arunkumar_mca; 10-31-2017 at 12:03 PM..
# 7  
Old 11-02-2017
Originally Posted by arunkumar_mca
Even with that I am seeing the first parallel process is taking less time and the process time increase with the split going on
Once you've maxed out your I/O bandwidth, adding more processes will just make a task slower. How many processes it takes to max out your I/O bandwidth could well be "one". Spinning disks especially lose a lot of bandwidth when split between competing tasks.

Beyond that, it's difficult to say what's happening. We still don't know what you're doing. "Processing" is a fine word but tells us little.
This User Gave Thanks to Corona688 For This Post:
arunkumar_mca (11-06-2017)

Thread Tools Search this Thread
Search this Thread:
Advanced Search

More UNIX and Linux Forum Topics You Might Find Helpful
Run rest of script after parallel steps have completed senhia83 Shell Programming and Scripting 2 10-06-2017 07:43 AM
Run script in parallel in while loop dashing201 Shell Programming and Scripting 3 09-22-2014 10:23 AM
Achive "NOT RUN PARALLEL" joshilalit2004 Shell Programming and Scripting 5 04-03-2014 06:26 PM
Break up file into n number of subsets and run in parallel gina.lizar Shell Programming and Scripting 6 02-28-2014 04:04 PM
Run the for loop in parallel jjoy Shell Programming and Scripting 5 09-20-2013 01:27 PM
To run job in parallel in batch beginningDBA Windows & DOS: Issues & Discussions 4 07-13-2011 04:36 AM
Run a script in parallel mpspsm Shell Programming and Scripting 3 11-01-2010 02:00 AM
Run in series and Parallel sol_nov Shell Programming and Scripting 3 09-30-2010 08:01 PM
jobs run parallel - server consumption? michaelrozar17 Shell Programming and Scripting 5 08-03-2010 05:35 AM
script - how to prevent in parallel run Gopal_Engg Shell Programming and Scripting 1 02-24-2010 05:24 AM
Need to run same script multiple times in parallel rahman_riyaz Shell Programming and Scripting 2 08-15-2009 11:19 PM
Run a command in parallel jakSun8 Shell Programming and Scripting 3 03-07-2008 12:41 AM
Run a script parallel for a month's worth: sd12 UNIX for Advanced & Expert Users 2 02-29-2008 12:38 PM
Run a same script in parallel with diffs parameters hyennah Shell Programming and Scripting 1 03-22-2007 05:43 PM
How to run processes in parallel? sbasak Shell Programming and Scripting 3 11-03-2004 01:12 PM