### Navigation

- index
- modules |
- FireWorks 0.66 documentation »

# features Package

## `features` Package

## `dupefinder` Module

This module contains the base class for implementing Duplicate Finders

class `fireworks.features.dupefinder.``DupeFinderBase`

  Bases: `dict`, `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

### Navigation

- index
- modules |
- FireWorks 0.66 documentation »