Question-and-Answer Resource for the Building Energy Modeling Community
Get started with the Help page
Ask Your Question
3

Simulataneously run a number of independent energyplus simulations on multiple cores on Linux via a script.

asked 2019-05-02 13:21:28 -0500

Julian gravatar image

updated 2019-05-03 07:41:24 -0500

Dear all,

I would like to run simultaneously a number of independent energyplus simulations on multiple cores on Linux.

There are several sources of information that explain how to do this (1-3 below)

Ref (1) explains that the energyplus executable, a number of files and windows libraries are copied in the directory where energyplus is to be executed using default idf and weather files (in.idf, in.epw).

Ref (2), for example @__AmirRoth__'s reply suggest the following script in order to run multiple energyplus simulations:

for i in glob('*.idf'):
   for w in glob('*.epw'):
      subprocess.call(["EnergyPlus -p %s -w %s %s" % (i[:-len('.idf')] + '_' + w[:-len('.epw')], w, i)])

My understanding is that the subprocess.call() spawns a new process, which should run independently and in parallel of the previosly spawned similar processes.

Since this solution appears be exactly what I need, but at the same time does not explicitly copy the files and libraries requested in (1), a doubt arises:

  • can we execute parallel and independent energyplus simulations in this way (without copying any libraries and files as in (1)) under Linux?

  • if it is possible, any experiences shared would be greatly appreciated;

  • if not possible, what would be the required files and libraries to be copied under Linux and again, any experiences shared would be greatly appreciated

Thank you.

(1) "Run EnergyPlus in Parallel" on BigLadder or energyplus documentaion: https://bigladdersoftware.com/epx/doc...

(2) "Script for multiple simulations" post on this forum: https://unmethours.com/question/4668/...

(3) "How to run EnergyPlus in multi-core cluster(Linux)?" post on this forum https://unmethours.com/question/31609...

P.S. I have asked a more concise question with similar content below Amir Roth's comment in (1), but thought that a separate discussion might be a better idea.

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
4

answered 2019-05-02 13:37:49 -0500

One option is to use the parallel gen in ruby. Example:

# gem for running jobs in parallel
require 'parallel'
num_parallel = 4
Parallel.each(jobs, in_threads: num_parallel) do |job|
  puts job
  system(job)
end
edit flag offensive delete link more

Comments

1

Hi Matthew,

Thank you for taking the time to think about this and to promptly write your answer. I see your point and perhaps understand your script.

My concern is if multiple and independent energyplus runs can be run in Linux via a script as parallel processes (not via Open Studio or Launcher - I have just edited the title of my post adding "script") without copying in the energyplus executable, the idd file and libraries as described in refference (1) from my post.

Are you aware if this is possible?

Thank you.

Julian gravatar imageJulian ( 2019-05-02 15:09:03 -0500 )edit
1

answered 2019-05-03 18:39:58 -0500

santoshphilip gravatar image

eppy will be able to run energyplus on multiple cores. It is not well documented in the user documentation - see https://eppy.readthedocs.io/en/latest....

You may be able to figure it out from the code and the unit tests

We would be mighty obliged if you can help improve the documentation.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

 



Question Tools

2 followers

Stats

Asked: 2019-05-02 13:21:28 -0500

Seen: 95 times

Last updated: May 03