11-05-2014, 04:22 PM
OK working now. There are a couple of hooks so I will describe the whole process for anyone else trying this.
I have four redundant PCs set-up on a stand-alone network. Each PC has an Intel i7 CPU which can run up to 8 processes. The PCs are connected to a NetGear GS108T switch via Cat6 patch leads. The PCs are running Windows 7 and are dedicated to EnergyPlus simulations. The operating systems were recently installed. All software is loaded using a flash drive.
The first task was to network the PCs so that they could share data. While the operating system was being installed, usernames and PC names were assigned to each PC. These were node0 on node0-PC, node1 on node1-PC, node2 on node2-PC and node3 on node3-PC. The windows firewalls were deactivated and all files and programs were shared. Remote connections were allowed to all PCs although in practice, I am only using remote access to control the execution nodes 1, 2, and 3 from the master node - node0. One key finding is that you must have passwords for all the usernames. I had previously not chosen passwords for the nodes but Windows Remote Desktop won't work without passwords being set. Also make sure that all the computers are reading the same time on their clocks or Windows won't let the PC join the workgroup. All nodes were set with static IP addresses: 192.168.1.1 to 192.168.1.4
Once I could remote into all the execution nodes from node0, I copied the installation files for EnergyPlus (in my case 7.2.0), Java (jre-7u67-windows-x64) and jEPlus+NETv1.2 into My Documents on each node. Then I installed EnergyPlus and Java and unzipped jEPlus+NET onto each node.
Setting up the jobs is similar to jEPlus. I had already modified my IDF file with my @@tags@@ and set up the meters I need with IDF-Editor. I put my IDF, EPW and MVI files in a subdirectory of jEPlus+NET (one new folder for each simulation). I set up jEPlus+NET by browsing to the location of the three essential files as per usual with jEPlus.
I already had a CSV file from a previous simulation on a stand-alone computer, so as per Yi's recommendations, I deleted the top row and first column using Excel. Since I am only using one weather file and one IDF file, the contents of the first two columns which contain the names of EPW and IDF files were replaced with 0s (the index for the first file). Then I saved the file (as a CSV file) and copied the file into the same directory as the IDF, EPW and MVI files.
As per Yi’s suggestion, I named all the parameters tags for my IDF file in the parameter tree but set the values to {1}, then browsed the "job list in file" field on the Execution tab to the directory with the CSV file, and set the execution controller to Local batch simulation controller.
Before I started the simulations, I minimised jEPlus+NET and started remote desktops for each fo the execution nodes, but did not start the GUIs. After each connection to the execution nodes was established, I minimised the remote access window for later use.
Then I started the simulation by clicking the “Start Simulation” button.
The main jEPlusv1.2 GUI then showed:
Simulation work directories and results will be stored in: C:\Users\node0\Documents\jEPlus+NET_v1.2\output\
Batch started ...
5 Nov 2014 13:27:09 GMT [Agent Job Server] Job server started. 24 jobs to execute. Waiting for Nodes to register...
I then maximised the remote access window for each execution node in turn. On each of the execution nodes I had already created a desktop shortcut for runnode.bat so starting each node was a matter of double clicking on the runnode batch file shortcut. When the node has started, a GUI opens but there is nothing else that needs to be done. There are a number of check boxes on the bottom left hand pane but these do not need to be checked to start the simulations. When all of the nodes had been started the remote connections were minimised and I returned to the server node GUI.
The status of the nodes can be tracked from the Execution tab, by starting the “Show Server Monitor” button. This opens a new window. To get a report on the number of nodes that are running and the status of the jobs, click on “Jobs info”. It takes a few minutes for the nodes to start pulling jobs from the server so wait a little while before you start “Jobs info”. There is also a short delay between calling for status and the reply.
If the simulations are running you get something like:
JEPlus Client MON_node0-PC_0 initialized ...
Sending INQ to Server: 2992@127.0.0.1
Reply received: Jobs summary:
Remaining jobs: 126
Running jobs: 24
Completed jobs: 0
Rejected jobs: 0
There is also a button for detailed information on all the processes on all the nodes called “ExecNodes info” but I found “Jobs info” more useful. Also you have to scroll down to see the results.
One trap seems to be that once the execution nodes have started I can’t run another batch of simulations until the execution controller has been stopped. This needs to be done by clicking on the close window cross (x) on the DOS Command Window as the runnode GUI becomes non-responsive. For good measure I am now restarting all the PCs between runs.
I hope this helps someone else. This is a very power tool.
Regards, David.
I have four redundant PCs set-up on a stand-alone network. Each PC has an Intel i7 CPU which can run up to 8 processes. The PCs are connected to a NetGear GS108T switch via Cat6 patch leads. The PCs are running Windows 7 and are dedicated to EnergyPlus simulations. The operating systems were recently installed. All software is loaded using a flash drive.
The first task was to network the PCs so that they could share data. While the operating system was being installed, usernames and PC names were assigned to each PC. These were node0 on node0-PC, node1 on node1-PC, node2 on node2-PC and node3 on node3-PC. The windows firewalls were deactivated and all files and programs were shared. Remote connections were allowed to all PCs although in practice, I am only using remote access to control the execution nodes 1, 2, and 3 from the master node - node0. One key finding is that you must have passwords for all the usernames. I had previously not chosen passwords for the nodes but Windows Remote Desktop won't work without passwords being set. Also make sure that all the computers are reading the same time on their clocks or Windows won't let the PC join the workgroup. All nodes were set with static IP addresses: 192.168.1.1 to 192.168.1.4
Once I could remote into all the execution nodes from node0, I copied the installation files for EnergyPlus (in my case 7.2.0), Java (jre-7u67-windows-x64) and jEPlus+NETv1.2 into My Documents on each node. Then I installed EnergyPlus and Java and unzipped jEPlus+NET onto each node.
Setting up the jobs is similar to jEPlus. I had already modified my IDF file with my @@tags@@ and set up the meters I need with IDF-Editor. I put my IDF, EPW and MVI files in a subdirectory of jEPlus+NET (one new folder for each simulation). I set up jEPlus+NET by browsing to the location of the three essential files as per usual with jEPlus.
I already had a CSV file from a previous simulation on a stand-alone computer, so as per Yi's recommendations, I deleted the top row and first column using Excel. Since I am only using one weather file and one IDF file, the contents of the first two columns which contain the names of EPW and IDF files were replaced with 0s (the index for the first file). Then I saved the file (as a CSV file) and copied the file into the same directory as the IDF, EPW and MVI files.
As per Yi’s suggestion, I named all the parameters tags for my IDF file in the parameter tree but set the values to {1}, then browsed the "job list in file" field on the Execution tab to the directory with the CSV file, and set the execution controller to Local batch simulation controller.
Before I started the simulations, I minimised jEPlus+NET and started remote desktops for each fo the execution nodes, but did not start the GUIs. After each connection to the execution nodes was established, I minimised the remote access window for later use.
Then I started the simulation by clicking the “Start Simulation” button.
The main jEPlusv1.2 GUI then showed:
Simulation work directories and results will be stored in: C:\Users\node0\Documents\jEPlus+NET_v1.2\output\
Batch started ...
5 Nov 2014 13:27:09 GMT [Agent Job Server] Job server started. 24 jobs to execute. Waiting for Nodes to register...
I then maximised the remote access window for each execution node in turn. On each of the execution nodes I had already created a desktop shortcut for runnode.bat so starting each node was a matter of double clicking on the runnode batch file shortcut. When the node has started, a GUI opens but there is nothing else that needs to be done. There are a number of check boxes on the bottom left hand pane but these do not need to be checked to start the simulations. When all of the nodes had been started the remote connections were minimised and I returned to the server node GUI.
The status of the nodes can be tracked from the Execution tab, by starting the “Show Server Monitor” button. This opens a new window. To get a report on the number of nodes that are running and the status of the jobs, click on “Jobs info”. It takes a few minutes for the nodes to start pulling jobs from the server so wait a little while before you start “Jobs info”. There is also a short delay between calling for status and the reply.
If the simulations are running you get something like:
JEPlus Client MON_node0-PC_0 initialized ...
Sending INQ to Server: 2992@127.0.0.1
Reply received: Jobs summary:
Remaining jobs: 126
Running jobs: 24
Completed jobs: 0
Rejected jobs: 0
There is also a button for detailed information on all the processes on all the nodes called “ExecNodes info” but I found “Jobs info” more useful. Also you have to scroll down to see the results.
One trap seems to be that once the execution nodes have started I can’t run another batch of simulations until the execution controller has been stopped. This needs to be done by clicking on the close window cross (x) on the DOS Command Window as the runnode GUI becomes non-responsive. For good measure I am now restarting all the PCs between runs.
I hope this helps someone else. This is a very power tool.
Regards, David.