features Package

features Package

dupefinder Module

This module contains the base class for implementing Duplicate Finders

class fireworks.features.dupefinder.DupeFinderBase

Bases: fireworks.utilities.fw_serializers.FWSerializable

This serves an Abstract class for implementing Duplicate Finders

__init__()
classmethod from_dict(m_dict)
query(spec)

Given a spec, returns a database query that gives potential candidates for duplicated FireWorks.

Parameters:spec – spec to check for duplicates
to_dict(*args, **kwargs)
verify(spec1, spec2)

Method that checks whether two specs are identical enough to be considered duplicates. Return true if duplicated. :param spec1: (dict) :param spec2: (dict)

multi_launcher Module

This module contains methods for launching several Rockets in a parallel environment

fireworks.features.multi_launcher.launch_multiprocess(launchpad, fworker, loglvl, nlaunches, num_jobs, sleep_time, total_node_list=None, ppn=1)

Launch the jobs in the job packing mode. :param launchpad: (LaunchPad) object :param fworker: (FWorker) object :param loglvl: (str) level at which to output logs :param nlaunches: (int) 0 means ‘until completion’, -1 or “infinite” means to loop forever :param num_jobs: (int) number of sub jobs :param sleep_time: (int) secs to sleep between rapidfire loop iterations :param total_node_list: ([str]) contents of NODEFILE (doesn’t affect execution) :param ppn: (int) processors per node (doesn’t affect execution)

fireworks.features.multi_launcher.ping_multilaunch(port, stop_event)

A single manager to ping all launches during multiprocess launches

Parameters:
  • port – (int) Listening port number of the DataServer
  • stop_event – (Thread.Event) stop event
fireworks.features.multi_launcher.rapidfire_process(fworker, nlaunches, sleep, loglvl, port, node_list, sub_nproc)

Initializes shared data with multiprocessing parameters and starts a rapidfire

Parameters:
  • fworker – (FWorker) object
  • nlaunches – (int) 0 means ‘until completion’, -1 or “infinite” means to loop forever
  • sleep – (int) secs to sleep between rapidfire loop iterations
  • loglvl – (str) level at which to output logs to stdout
  • port – (int) Listening port number of the shared object manage
  • password – (str) security password to access the server
  • node_list – ([str]) computer node list
  • sub_nproc – (int) number of processors of the sub job
fireworks.features.multi_launcher.split_node_lists(num_jobs, total_node_list=None, ppn=24)

Parse node list and processor list from nodefile contents

Parameters:
  • num_jobs – (int) number of sub jobs
  • total_node_list – (list of str) the node list of the whole large job
  • ppn – (int) number of procesors per node
Returns:

(([int],[int])) the node list and processor list for each job

fireworks.features.multi_launcher.start_rockets(fworker, nlaunches, sleep, loglvl, port, node_lists, sub_nproc_list)

Create each sub job and start a rocket launch in each one

Parameters:
  • fworker – (FWorker) object
  • nlaunches – nlaunches: (int) 0 means ‘until completion’, -1 or “infinite” means to loop forever
  • sleep – (int) secs to sleep between rapidfire loop iterations
  • loglvl – (str) level at which to output logs to stdout
  • port – (int) Listening port number
  • node_lists – ([str]) computer node list
  • sub_nproc_list – ([int]) list of the number of the process of sub jobs
Returns:

([multiprocessing.Process]) all the created processes

Table Of Contents

This Page