Process Table exhausted

E

ecnedad

Guest
*Error* START PROCESS: Process Table exhausted

I'd encountered this error when I run this piece of code:

myTable = makeTable("myTable" "1")
procedure( ipcTest()
let( (cmd item)
for( item 1 65
sprintf( cmd "cd /home/sw/projects/test%d/netlist; ./
runSpectre" item)
myTable[item] = ipcBeginProcess(cmd)
ipcWaitProcess(myTable[item])
item = item + 1
);for
);let
);procedure

Test()

runSpectre is a batch file that will run the netlist for simulation.

Hope anyone could help me...
Thank you in advance...
God bless! (^_^)
 
In article <f19f66a8-ac19-40ba-bcbf-b755565cbef8@i20g2000prf.googlegroups.com>,
ecnedad <ecnedad@gmail.com> wrote:
*Error* START PROCESS: Process Table exhausted

for( item 1 65
sprintf( cmd "cd /home/sw/projects/test%d/netlist; ./
runSpectre" item)
myTable[item] = ipcBeginProcess(cmd)
ipcWaitProcess(myTable[item])
item = item + 1
);for
This will start 65 jobs in parallel; could it be that your system
imposes a limit on the number of processes you can run simultaneously?
 
Hi,

A quick look at your program shows that you are calling
ipcBeginProcess 65 times in a row. Well, off the top of my head,
ipcBeginProcess does handle 32 || jobs only (to be confirmed by Andrew
or somebody else). That's why this 'Process Table exhausted' error
occurs. It's then a good idea to make a 'wait' in order to allow
ipcBegingProcess to go through your 65 runs. The 'ipcWaitProcess' you
have used above is most likely to fail because it is misspelled. The
right function is 'ipcWaitForProcess'. Would you please cross check
your skill script ?

Regards,
Riad.
 
ecnedad wrote, on 01/26/09 14:12:
*Error* START PROCESS: Process Table exhausted

I'd encountered this error when I run this piece of code:

myTable = makeTable("myTable" "1")
procedure( ipcTest()
let( (cmd item)
for( item 1 65
sprintf( cmd "cd /home/sw/projects/test%d/netlist; ./
runSpectre" item)
myTable[item] = ipcBeginProcess(cmd)
ipcWaitProcess(myTable[item])
item = item + 1
);for
);let
);procedure

Test()

runSpectre is a batch file that will run the netlist for simulation.

Hope anyone could help me...
Thank you in advance...
God bless! (^_^)
As a result of a quick experiment, in IC613 the limit appears to be 128. In
IC5141, it's 32.

Running 65 spectre simulations at once, unless you've got a very impressive
machine with lots of CPUs, seems a tad excessive.

Perhaps you meant to use ipcWait() instead of ipcWaitForProcess()? That will
wait until it finished before starting the next.

Regards,

Andrew.
 

Welcome to EDABoard.com

Sponsor

Back
Top