Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations IamaSherpa on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Making a Map Multi-Threaded Question 1

Status
Not open for further replies.

clk430

Programmer
Sep 21, 2005
235
US
I know that using wild cards for input and output should force a map to be multithreaded.

But I'm a bit confused as to what the Workspace settings should be. Does it matter if it is File vs Memory? How about the WorkFile Prefix? Create or delete? Unique or Mapname? Do these matter?

What about a run command inside the map? For expample:
RUN("MyPutFTP.mmc", "-WM -IE1S" + NUMBERTOTEXT(SIZE(TEXT(FTPData)))

Does the -WM override the IFD Workspace setting and make it Memory?

Thanks in advanced.

 
Yes, there suffiecient source events to max out the maxthreads setting (set to 12). So, what value will setting the WatchMaxThreads lower, say to 8, get me?
 
It will allow another map or maps to run. You might consider a maxconcurrent setting for this map. This IFD setting is in addition to the maxthreads value.



BocaBurger
<===========================||////////////////|0
The pen is mightier than the sword, but the sword hurts more!
 
Cool. To reiterate, in order to not let a multithreaded map with near endless triggers monopolize the system, I will lower the watchmaxthreads. AND, play with the maxconcurrent threads settings in other priority maps to allow extra thread for them to run.
 
Or, set maxconcurrent for this map and let maxthreads and watchmaxthreads handle the other maps. test for performance.

BocaBurger
<===========================||////////////////|0
The pen is mightier than the sword, but the sword hurts more!
 
Boca,

If a Map is forced to be single threaded (say hardcoded output value), is it true to say the maxconcurrent map setting in the IFD for that map is irrelevent?

 
If you don't mind, Question 2 -

Scenario: 500 files get dumped in the trigger directory at once. Maxthreads = 12, watch Maxthreads = 8. IFD max concurrent maps for this 500 file system is set to 3.

In your post above, you explained "set maxconcurrent for this map and let maxthreads and watchmaxthreads handle the other maps."

So, at once, this system (non-complex, small files) will process up to 8 + 3 files at once, and leave 4 threads for the other non-related systems/maps?

If this is true, then that will mean the system will run at 15 threads (12 maxthreads settng + 3 IFD max concurrent)at a time?

Which will be more than your recommended 6 threads per CPU, possibly overutilizing the CPU's. Am I way off?
 
The MaxConcurrent is outside watchmaxthreads and in addition to maxthreads. If you have maxconcurrent to 3 and you drop 4 to 4000 trigger files, that map will only run three maps. The other threads are for other maps in the system. It depends on what each map is doing. If a single maps takes 5 minutes to run and it takes 100% of a CPU, then any other map running on that CPU will slow down both maps. If a the map only takes 10% of the CPU, you could run 9 maps with no drop in speed.

Sometimes you might have to sacrifice the most speed for functionality. It all depends on whay your system needs to do.



BocaBurger
<===========================||////////////////|0
The pen is mightier than the sword, but the sword hurts more!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top