Problems

If you load your data using SOS and it does not run any faster, or it appears to be using more total memory than you thought, or you are missing geometry, then consider the following tips.

  1. The Server of Server (SOS) Console will tell you where the output is logged. For example:

    	Server output logged to file </tmp/enssoLOzqmV>
    	and should echo the servers that get started as follows:
    	CvfLaunch is going to run:
    	( ensight_server -c steve -ports 1110 -sosid 0 -auto_distribute -jm_url
    connect%3a%2f%2fsteve%3ftransport%3dsocket%26port%3d1110%26sockbufsize%3d2097152%26timeout%3d60%26nc
    onnections%3d4%26connect%5fdirection%3djoin ) >>/tmp/enssoamE7ZE 2>&1 &
    	CvfLaunch is going to run:
    	( ensight_server -c steve -ports 1110 -sosid 1 -auto_distribute -jm_url
    connect%3a%2f%2fsteve%3ftransport%3dsocket%26port%3d1110%26sockbufsize%3d2097152%26timeout%3d60%26nc
    onnections%3d4%26connect%5fdirection%3djoin ) >>/tmp/enssoamE7ZE 2>&1 &
  2. Is all of your geometry showing? If not then some of the servers may not be reading their portion of the geometry correctly, or they may not have started properly, or they may be hung up and frozen. Check and make sure you have all of your server processes still running.

  3. Each reader behaves differently. Some readers require that you enter an asterisk (*) to load multiple spatially decomposed files ( for example spcth* in the Data Reader dialog Data tab set name field). In the SOS Options tab of the data reader dialog, make sure you check the toggle to allow asterisks to be passed to the Servers if the filename has an asterisk, verify that your autodistribute pulldown choice is correct, and verify that you have chosen a valid resource file in the resource file field. Finally, each reader has a unique set of format options that may or may not impact SOS operation. Look up individual reader functionality in the Ansys EnSight User Manual.

  4. If you know how many elements are in a given part, then when you are running SOS do a QueryShow InformationPart and verify that it has the proper number of elements. You can also do a QueryDataset to find the total number of elements. If it has a multiple number of elements equal to the number of servers, then you have the problem that all servers are loading all of the data. For example, with 4 Servers, your part has a multiple of four of all the element types. If you don't remember how many elements you have, try loading your data without SOS, and write down how many elements you have, then repeat with SOS and compare.

    A multiple number of elements, can be an indication that you've chosen the external decompose option above and every Server thinks that it is supposed to be reading all of the data that it encounters. Another sign of this is that each server process still consumes the same amount of memory as a single server process without SOS. All servers are loading all of the data. Another sign of this problem is that SOS runs slower. All Servers are busy with all your data AND with communications. You may want to try Reader Decompose if the reader allows this option, or Auto Decompose to allow the Servers to decompose your data, and recount your number of elements.

  5. The calculator includes a function, ServerNumber, that calculates the server number. Simply select all your parts and calculate this value and color your geometry by ServerNumber. Now you can visualize what servers are responsible for what portion of the domain. If you color your geometry by ServerNumber variable, and the ServerNumber legend does not have the same range as the number of servers that you are using, then something is wrong. For example, with 4 servers, the ServerNumber legend should have a range of 1 to 4 and you should see colors on your geometry ranging from 1 to 4. If the range is from 1 to 1, then your servers may not have started up and you are just running client and server or Server number 1 has all of your data and servers 2-4 have none.. If the range is from 3 to 3, then Server number 3 has all of your data and servers number 1, 2, and 4 do not have data for some reason. If the range is from 1-4 (indicating that there are 4 Servers), but you only see your geometry colored all one color, then it may be that you are experiencing the problem discussed in item 2 above: each Server is loading all of the data and you have 4 times the geometry overlapping on the client display, and only the last color shows up.

  6. EnSight does include the capability to trick client and server into thinking they are in SOS for isolating problems. Simply set the following environmental variables as follows:

    setenv AUTODISTRIBUTE_DEBUG_TOTAL_SERVERS 50
    setenv AUTODISTRIBUTE_DEBUG_CURRENT_SERVER 13
    setenv AUTODISTRIBUTE_DEBUG_N_OF_M 1

    The first and second make the server think it is server 13 out of 50, and the last one turns this all on when set to 1. This will enable you to run EnSight in normal client and server mode, but the server will behave as if it is server 13 out of 50, therefore allowing you to isolate problems and validate behavior, while only using memory of one server.

  7. If your reader is not optimized for parallel data, then using Server Decompose causes the EnSight server to do the decomposition and the reader's inherent inefficiencies may inhibit scaling of performance (and may actually degrade performance).