Skip to content

Conversation

jmlarson1
Copy link
Member

@jmlarson1 jmlarson1 commented Mar 21, 2022

These new fields have many positives:

  • They align with sim_f and gen_f and sim_specs and gen_specs and the like.
  • Many of the old entries were ambiguous: It is not clear what given is referring to. The recipient of given_back is unclear.
  • They tell a "story" about the entry in H.
  1. The point is generated by gen_worker between gen_started_time and gen_ended_time.
  2. It is given to sim_worker and sim_given is marked true and sim_given_time is recorded
  3. When sim_worker is done, sim_completed is marked true, and sim_completed_time is recorded.
  4. If the gen_worker is informed about the point, then gen_informed is marked true and gen_informed_time is recorded.

We'd remove distinction of last_gen_time being different from gen_time.

The following crosswalk can help any users with gens/sims/allocs using these fields in H

  • last_gen_time/gen_time -> gen_ended_time
  • given -> sim_started
  • given_time -> sim_started_time
  • returned -> sim_ended
  • returned_time -> sim_ended_time
  • given_back -> gen_informed
  • gen_back_time -> gen_informed_time

Also, we will add gen_started_time as this would be needed (for example) to cancel long-running gens.

@jmlarson1 jmlarson1 changed the title Feature/improved lib E field naming Feature/improved libE field naming Mar 21, 2022
@jmlarson1 jmlarson1 requested review from jlnav and shuds13 March 23, 2022 02:06
@wildsm
Copy link
Member

wildsm commented Mar 24, 2022

This looks great.

@jmlarson1 jmlarson1 marked this pull request as ready for review March 24, 2022 16:17

:*Protected fields*:

* ``given`` [bool]: True if this ``gen_f`` output been given to a libEnsemble
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file still needs to be adjusted, right?

Copy link
Member Author

@jmlarson1 jmlarson1 Mar 28, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! I have updated this file.

@jmlarson1
Copy link
Member Author

@jlnav @shuds13

Angel gave some feedback on this. While he said that he doesn't use these fields much, he thought that sim_started is a more intuitive name for a boolean than than sim_start. I think that "agrees" with gen_informed and cancel_requested as things that would be True/False.

I agree with Angel. Please give thoughts on the current state of libensemble/tools/fields_keys.py

@jlnav
Copy link
Member

jlnav commented Apr 4, 2022

Good feedback from Angel, I like the current state of fields_keys.py. Understanding the "story" of a point is (I think) more intuitive now

@jmlarson1 jmlarson1 marked this pull request as draft April 4, 2022 16:22
@jlnav
Copy link
Member

jlnav commented Apr 4, 2022

Just realizes this also addresses #525 !

edit: and #593 ?

@jmlarson1 jmlarson1 marked this pull request as ready for review April 5, 2022 00:43
@jmlarson1 jmlarson1 requested a review from jlnav April 5, 2022 00:43
@jmlarson1 jmlarson1 merged commit 78fa468 into develop Apr 6, 2022
@jmlarson1 jmlarson1 deleted the feature/improved_libE_field_naming branch April 6, 2022 13:06
@shuds13 shuds13 mentioned this pull request Apr 29, 2022
20 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants