Sonnet Cluster Computing Guide

Parent Previous

Overview

Introduction 

The traditional method of frequency domain electromagnetic (EM) analysis on a single computer requires each frequency to be simulated one after another in series. With Sonnet Cluster, the high frequency designer can leverage computing resources composed of multiple computers operating in parallel to shorten the overall simulation time. An N-fold speed increase is possible with a computing environment composed of N computers, each with similar computing speed.

Sonnet Cluster maps the Sonnet EM simulation to a parallel computing environment by intelligently splitting the user-defined frequency sweeps into sub-jobs, which are simulated in parallel. Each sub-job includes only a portion of the overall number of frequencies to be simulated. Sonnet Cluster manages the process, automatically scheduling and assigning the sub-jobs to the available computer resources. As the sub jobs are completed, Sonnet Cluster gathers the data from each sub-job and re-combines it into the main Sonnet project.

Requirements

Licensing

Sonnet Cluster requires the following licenses for operation:

1) One emcluster license. This license allows for the splitting,combing, and overall management of sub-jobs in the parallel computing environment.

2) One em license per parallel computer. This is the license for the Sonnet analysis engine. A separate instance of the analysis engine runs on each parallel computer, and each instance requires one copy of em license to run.

Hardware and Operating System

Sonnet Cluster is available on both Windows and Linux operating systems. Complete hardware and operating system requirements may be found at the following Sonnet Software web link:

https://www.sonnetsoftware.com/requirements

Functionality

Sonnet Cluster System

The Sonnet Cluster System is made up of the following software components:

 - Client Application

 - Manager Program

 - Worker Program

Each component is described below.

Client Application

The client application is run on the end user's desktop or laptop computer. When a user is ready to submit a Sonnet em job for simulation, the user will click on the Analyze button in the main Sonnet GUI application. This will automatically launch the Sonnet Cluster client application. The client application performs the following functions:

 - Check for any errors in the Sonnet project submitted by the user for simulation. If any error conditions are detected, the error is reported to the user and the simulation is terminated.

 - Initiate communication with the Sonnet Cluster Manager Program.

 - Pack the Sonnet project file along with any pre-existing data which exists on the user's computer, and the send the packed project to the Manager program.

 - Wait until the Manager Program initiates the em simulation on the cluster.

 - Receive simulation data and status messages from the Manager Program as the simulation progresses. The simulation data may be displayed in a Graph and/or Current Density view as it is received by the application. Status messages are displayed in the Job Queue view.

 - Support disconnect and reconnect from/to the Manager Program during the ongoing simulation. This functionality allows a user to submit a job for simulation, disconnect from the Manager Program and then close the client application. When the client application is subsequently launched again, it will then initiate a reconnect with the Manager Program to retrieve whatever simulation data is available at that time.

Manager Program

 - The Manager Program may be run on a cluster node where em simulations are also being run, or it may be run on an independent computer. This program performs the following functions:

 - Receive packed projects submitted by one or multiple users through their Client Applications.

 - Manage the Sonnet Cluster job queue.Jobs are simulated in the order they are received by the Manager Program.

 - Monitor the status of all Worker Programs assigned to the Manager Program.

 - When one or more Worker Programs becomes idle, the Manager Program initiates simulation of the next job in the queue on the idle Worker Programs.

 - Split the next job into sub-jobs, with each sub-job being run on one idle Worker Program. See Em simulation with the Sonnet Cluster below for details on how jobs are split into sub-jobs.

 - Received simulation data and status messages from Worker Programs running the sub-jobs. Forward the simulation data and status messages to the appropriate Client Application for the user who submitted the job.

 - Combine simulation data from Worker Programs and then launch a final simulation on one Worker Program to complete the simulation of an ABS sweeps if necessary.

 - Maintain simulation data for job if user chooses to disconnect the Client Application from the Manager Program. Send simulation data to Client Application when user subsequently chooses to reconnect.

Worker Program

The Worker Program runs on cluster nodes when em simulations are to be performed. A separate Worker Program is run on each individual cluster node. The Worker Program performs the following functions:

 - Report status Manager Program indicating when cluster node is idle, running a job, or is down.

 - Receive new sub-jobs from Manager Program which need to be simulated.

 - Launch em simulations on sub-jobs.

 - Receive simulation data and status messages from the em analysis engine as a sub-job is simulated.

 - Forward the simulation data and status messages to the Manager Program.

Installation and Configuration

Sonnet Installation

A full Sonnet installation is required on each Client, Manager, or Worker computer. There are no restrictions on the combinations of hardware or operating system which may be used in the Sonnet Cluster system. For example, the client computers run on a Windows operating system while the Manager and Worker computers run on a Linux operating system. Further, while it is recommended that all Worker computers use identical hardware and operating systems for maximum efficiency, this is not a requirement.

Sonnet software utilizes FLEXnet licensing. All Client, Manager, and Worker computers must have an open socket communication channel to the FLEXnet license manager. Please refer to the Sonnet Windows and Linux Installation Manuals for details on setting up the FLEXnet license manager for Sonnet.

Sonnet Cluster Configuration

Once Sonnet has been installed on the Worker, Manager, and Client computers, some configuration is required on each computer to utilize Sonnet Cluster. The required configuration is descried below.

Worker Computers

To configure a Worker computer for Sonnet Cluster, launch the main Sonnet Application on the Worker computer and then select Admin - Setup. The Sonnet Administration window will appear. In the Sonnet Administration window, click on the Cluster Computing entry in the left pane of the window. The Sonnet Cluster tab will be displayed on the right side of the window. The required steps for configuring the Worker are as follows:

1. Check the box next to Use this computer as a Worker.

2. Click on the Worker tab.

3. In the My Manager sub-tab, enter the name or IP address of the Manager computer.

4. Click on the Advanced sub-tab. Notice that the default port number for communication between the Manager and Worker is 56400. An alternative port number may be used. please note that the open socket communication between the Manager and Worker must be allowed on the specified port number. this may require configuration of your firewall to allow communication on this port number.

5. Also, note the setting for the Data Folder under the Advanced tab. This is the temporary location where the em simulation of a sub-job will occur on the Worker. You may specify an alternate folder if necessary.

6. Click on the Status tab. To start the Worker Program, click on the Start button. The status of the Worker Program will be displayed in the Status tab.

Manager Computer

To configure the manager computer for Sonnet Cluster, launch the main Sonnet Application on the Manager computer and then select Admin - Setup. The Sonnet Administration window will appear. in the Sonnet Administration window, click on the Cluster Computing entry in the left pane of the window. The Sonnet Cluster tab will be displayed on the right side of the window. The required steps for configuring the Manager are as follows:

1. Check the box next to Use this computer as a Manager.

2. Click on the Manager tab.

3. Click on the Advanced sub-tab. Notice that the default port number for communication between the Manager and Client Application is 56300. An alternate port number may be used. Please note that open socket communication between the Manager and Client Application must be allowed on the specified port number. This may require configuration of your firewall to allow communication on this port number.

4. Also, note that the setting for the Data Folder is under the Advanced tab. This is the temporary location where the em simulation results from all Workers will be combined by the manager. you may specify an alternative folder if necessary.

5. Click on the My Workers sub-job. Here you will assign Workers to the Manager. Click on the Add Worker button. A new Worker entry will be created. Enter the name of the IP address of a Worker computer in the server column. Also, please note that the default port number of 56400 is pre-filled in this new entry. This is the port number used for communication between the Manager and Worker. After entering the Worker name and optionally, the port number, press the Refresh button. The present status of the Worker computer will be displayed.

6. Continue to assign the remaining workers to the Manager using the procedure in the above step.

7. Click on the Jobs sub-tab. To start the Manager Program, click on the Start button. The status of the Manager Program will be displayed at the bottom of the Jobs sub-tab.

Client Application

To configure the Client Application for Sonnet Cluster, launch the main Sonnet Application on the user's desktop or laptop computer and the select Admin - Setup. The Sonnet Administration window will appear. in the Sonnet Administration window, click on the Em Server list entry in the left pane of the window. The Servers tab will be displayed on the right side of the window. The required steps for configuring the Client Application are as follows:

1. In the Servers tab, click on the Add Server button.

2. In the Server column, enter the name or IP address of the Manager computer.

3. In the Port column, enter the port number for communication between the Client Application and Manager program. By default, when configuring the Manager program, this port number is 56300.

4. Press the Refresh Statuses button to view the status of the Manager Program.

Sonnet Cluster Management

Starting and Stopping the Manager and Workers

The procedure for starting and stopping the Managers and Workers is as follows:

1. Log onto the appropriate computer for the Manager or one of the Workers.

2. Launch the main Sonnet application on that computer.

3. Select Admin - Setup.

4. The Sonnet Administration window will be displayed. Click on Cluster Computing in the pane on the left side of the window.

5. In the Sonnet Cluster tab on the right side of the window, click on the Manager or Worker sub-tab as appropriate.

6. Before starting a Manager or Worker process, you may enable the User services checkbox. Services provide control over the process through tools built into the computer operating system. Enabling the Use Services checkbox in this Sonnet Window will result in the Manager or Worker process being started automatically every time the computer is rebooted.

7. Press the Start/Stop button to start or stop the process,respectively.

Hardware and Operating System Maintenance

Occasionally it is necessary to perform maintenance on one or more computers in the Sonnet Cluster system. To facilitate the maintenance process, Sonnet provides a switch to block new, incoming jobs from being added to the cluster queue, while still allowing the jobs which are already in the queue to be completed. With this switch, an administrator can block new jobs from being added to the queue, wait for the jobs in the queue to be completed, take down the cluster system, and the perform the necessarily maintenance. The procedure for following the Block switch are as follows:

1. log onto the computer running the Manager process.

2. Launch the main Sonnet application.

3. Select Admin - Setup.

4.Click on Cluster Computing in the pane on the left side of the Sonnet Administration window.

5. Click on the Manager sub-tab.

6. Click on the Block button.

Em Simulation with Sonnet Cluster

Sonnet Cluster reduces the time to perform an em simulation by intelligently splitting the user-defined frequency sweeps into sub-jobs, and then simulating those jobs in parallel on the Worker computers. Generally, there are two classes of frequency sweeps which the user may define within a Sonnet project: Discrete frequency sweeps, and Adaptive frequency sweeps. Each class of frequency sweep is described below along with a corresponding algorithm which Sonnet Cluster employs to split the sweep into sub jobs.

Simulation of Discrete Frequency Sweeps on Sonnet Cluster

Discrete frequency sweeps are those sweeps for which the em analysis engine performs a full electromagnetic simulation at every frequency included in the sweep. An example of a Discrete sweep is a Linear sweep from 1.0 GHz to 10.0 GHz with a step size of 1.0 GHz. In this example, an em simulation is to be performed at ten different frequencies. Sonnet Cluster will employ the following algorithm to simulate these ten frequencies on the Worker computers:

1. Determine the number of worker computers which are available.To be available, the Worker computer must be running and must also be in an Idle state.  

2. Divide the Discrete frequencies between the available Workers. For the above example, if there are ten or more available Workers, then the Manager will choose ten Workers and assign one Discrete frequency to each of those Workers. If there are fewer than ten available Workers, the Manager will distribute the Discrete frequencies as evenly as possible among the available Workers. In this example, if there are three available Workers, the one Worker will get four Discrete frequencies each.

Simulation of Adaptive Frequency Sweeps on Sonnet Cluster

Adaptive frequency sweeps are those sweeps for which the em analysis engine performs a full electromagnetic simulation at selected frequencies included in the sweep, an then fits those selected frequencies with a rational polynomial function to obtain interpolated results at the remaining frequencies. An example of an Adaptive sweep is an ABS sweep from 10.0 GHz to 70.0 GHz, with a resolution of 0.20 GHz. The Sonnet Cluster will employ the following algorithm to simulate this ABS sweep:

1. Split the ABS band into uniformly distributed frequencies. By default, the ABS sweeps are split into 7 uniformly distributed frequencies. For the above example, these 7 frequencies would be 10.0, 20.0, 30.0, 40.0, 50.0, 60.0, and 70.0 GHz.

2. Determine the number of Worker computers which are available. To be available, the Worker computer must be running and must also be in an Idle state.

3. Divide the 7 uniform frequencies between the available Workers. For this example, if there are 7 or more available Workers, then the Manager will choose 7 Workers and assign one frequency to each of those workers. If there are fewer than 7 available Workers, the Manager will distribute the frequencies as evenly as possible among the available Workers. In this example, if there are 3 available workers, the one Worker will get three frequencies and the other two workers will get two frequencies each.

4. When all 7 uniformly distributed frequencies have been completed, combine the results back into a single project.

5. Launch an Adaptive simulation on the project with the combined results. The em analysis engine will automatically incorporate the results from the 7 initial frequencies into the Adaptive sweep when it computes the rational polynomial fit. In most cases, the 7 uniformly distributed frequencies are sufficient to obtain convergence. Here, em will continue with the Adaptive sweep, selectively choosing one or more additional frequencies for a full electromagnet simulation, until the required level of accuracy is obtained.

FAQ

Provided below are Frequency Asked Questions and answers.

Q: My cluster has already been set up by an administrator. How do I submit a job to it?

A: See Installation and Configuration - Sonnet Cluster Configuration - Client Application.

Q: I do not see simulation results on my client computer.Where on the Manager Computer and/or Worker Computers is data stored while the cluster simulation is in progress?

A: See Installation and Configuration - Sonnet Cluster Configuration - Manager Computer and/or Installation and Configuration - Sonnet Cluster Configuration - Worker Computers.

Q: Do I have a Sonnet Cluster license?

A: Launch Sonnet. Select Admin - License - Status. Check the list of features for an "emcluster" feature.

Q: Can Workers be assigned to the Manager after the manager has been started?

A: No, all Workers must be assigned tot the Manager prior to starting the Manager. If the Manager is already running, stop it, assign new Workers, and then restart the Manager. See Installation and Configuration - Sonnet Cluster Configuration - Manager Computer.

Q: Why did the Test Connection on my Worker fail?

A: The Manager Program is not running, or the communication port between the Manager and Worker is blocked by a firewall.

Q: Can I use a single computer for both the Manager and a Worker?

A: Yes, However please be aware rgarEM simulations running on the Worker may require substantial system resources in terms of CPU and RAM. This can impact the performance of the Manager. Our recommendation is to dedicate an independent computer for the Manager. Since Em simulations will not be run on a dedicated Manager computer, the system requirements for that computer are much lower.

Q. Can I run the Manager or a Worker on my Client Computer?

A: Yes, but the Manager and Worker computers should be stable, reliable systems that have maximum uptime to ensure that the cluster is accessible.

Q: Can the FLEXnet license manager and Sonnet Cluster Manager run on the same computer?

A: Yes, it is perfectly fine to run both managers on the same computer. However it is not a requirement.