Rosetta 3.5
|
Distributor for use with raw files. More...
#include <JobDistributors.hh>
Public Types | |
typedef BaseJobDistributor | parent |
Public Member Functions | |
PlainRawJobDistributor (JobVector jobs, std::string outfile_name) | |
virtual | ~PlainRawJobDistributor () |
virtual void | dump_pose_and_map (std::string const &tag, core::pose::Pose &pose) |
Writes pose and basic score data to a standard silent file. More... | |
virtual std::string | get_output_filename (std::string const &tag) |
Translates an output tag name to an output PDB file name. More... | |
virtual std::string | get_output_tag (int const &struct_n) |
void | score_map (std::map< std::string, core::Real > &score_map_in) |
Virtual function for score_map that is needed for main_plain_mover sets the score_map. More... | |
![]() | |
BaseJobDistributor (JobVector jobs) | |
BaseJobDistributor (BaseJobDistributor const &) | |
virtual | ~BaseJobDistributor () |
bool | next_job (BasicJobOP &job, int &struct_n) |
If true, sets the next Job and nstruct number to be processed. Deliberately not virtual: should not be overriden. Uses the "find_available_job" method, which is common to both MPI and standard protocols, but used in slightly different manners. More... | |
virtual void | startup () |
Must be called by client before first call to next_job(). If overriden by a subclass, it MUST call the superclass implementation. More... | |
virtual void | shutdown () |
Must be called by client after last call to next_job(). If overriden by a subclass, it MUST call the superclass implementation. More... | |
virtual void | begin_critical_section () |
Signal that if at all possible, we would like to not be killed while in the critical section. If overriden by a subclass, it MUST call the superclass implementation. More... | |
virtual void | end_critical_section () |
Signal that if at all possible, we would like to not be killed while in the critical section. If overriden by a subclass, it MUST call the superclass implementation. More... | |
virtual void | temp_file (std::string const &) |
Virtual function for temp_file main_plain_mover. More... | |
void | disable_ignorefinished () |
void | enable_ignorefinished () |
void | disable_output () |
void | enable_output () |
void | disable_inprogress () |
void | enable_inprogress () |
bool | ignorefinished () const |
bool | nooutput () const |
bool | inprogress () const |
void | set_proc_id (core::Size proc_id, core::Size nproc) |
virtual std::string | get_current_output_tag () |
get output_tag for current job's current nstruct More... | |
virtual std::string | get_output_filename () |
Protected Types | |
typedef utility::vector1 < BasicJobOP > | JobVector |
![]() | |
typedef utility::vector1 < BasicJobOP > | JobVector |
Protected Member Functions | |
virtual bool | is_finished (BasicJobOP const &job, int struct_n) |
Is the given nstruct number of the given input job already finished by the local process? To be implemented by subclasses. More... | |
![]() | |
virtual void | checkpoint_read () |
Restore state from checkpoint file, if it exists. More... | |
virtual void | checkpoint_write () |
Save state to checkpoint file, overwriting previous. More... | |
virtual void | checkpoint_clear () |
Remove checkpoint file (at end of batch) More... | |
int | current_nstruct () |
accessor for current_nstruct_ More... | |
BasicJobOP | current_job () |
accessor for current_job owning pointer More... | |
int | get_next_random_range (int low, int high) |
Private Attributes | |
std::string | rawfile_name_ |
utility::vector1< std::string > | used_tags_ |
std::map< std::string, core::Real > | score_map_ |
Additional Inherited Members | |
![]() | |
bool | ignorefinished_ |
ignore already done jobs - redo everything ! More... | |
bool | nooutput_ |
do not write files - useful such things as statistics or rescoring ! More... | |
bool | inprogress_ |
write .in_progress files for multiple processor runs More... | |
int | start_time_ |
starttime More... | |
int | random_counter_ |
RandomStore - needed for. More... | |
utility::vector1< double > | random_store_ |
Distributor for use with raw files.
This class is deliberately designed for each process to work on its own silent file (and preferrably in its own directory); unlike Rosetta++, we DO NOT share silent files among multiple processes. First, true atomic file locking is impossible on most distributed file systems (e.g. NFS), meaning that files may be corrupted by multiple simultaneous writes. For long-running processes, collisions may be rare, but as we scale to more processors it becomes increasingly dangerous. Second, many processes writing to the same file (or even directory) can cause tremendous file system bottlenecks, possibly bringing down the cluster; ask Keith or Chance in the Baker lab for details.
|
protected |
protocols::jobdist::PlainRawJobDistributor::PlainRawJobDistributor | ( | JobVector | jobs, |
std::string | outfile_name | ||
) |
|
virtual |
|
virtual |
Writes pose and basic score data to a standard silent file.
Reimplemented from protocols::jobdist::BaseJobDistributor.
References protocols::jobdist::BaseJobDistributor::begin_critical_section(), protocols::jobdist::BaseJobDistributor::end_critical_section(), protocols::jobdist::BaseJobDistributor::get_output_filename(), rawfile_name_, score_map_, and core::io::raw_data::DecoyFileData::write_pose().
|
virtual |
Translates an output tag name to an output PDB file name.
References protocols::wum::mpi_rank().
|
virtual |
References TAG_NUM_FORMAT_LENGTH.
|
protectedvirtual |
Is the given nstruct number of the given input job already finished by the local process? To be implemented by subclasses.
Implements protocols::jobdist::BaseJobDistributor.
References protocols::jobdist::BaseJobDistributor::get_output_filename(), and used_tags_.
|
inlinevirtual |
Virtual function for score_map that is needed for main_plain_mover sets the score_map.
Needed if a score_map is to be output by the derived class
Reimplemented from protocols::jobdist::BaseJobDistributor.
References score_map_.
|
private |
Referenced by dump_pose_and_map(), and PlainRawJobDistributor().
|
private |
Referenced by dump_pose_and_map(), and score_map().
|
private |
Referenced by is_finished(), and PlainRawJobDistributor().