hmmpgmd(1)
β¨ hmmpgmd β the little daemon that could π
okay bestie, welcome to hmmpgmd(1), a page from the HMMER Manual πΈ. this is the daemon that runs the show behind the scenes, and yeah she's a lot, but we're gonna get through it together fr fr π«Ά
π SYNOPSIS
hmmpgmd [options]
π DESCRIPTION
so. hmmpgmd is the daemon we use internally for the hmmer.org web server π. she basically stands in front of the search programs phmmer, hmmsearch, and hmmscan like a bouncer at the club. iconic behavior honestly.
to use hmmpgmd, first you gotta start up an instance as a master server, and give it at least one sequence database (using the --seqdb flag) and/or an HMM database (using the --hmmdb flag). a sequence database has to be in hmmpgmd format, which you can make with esl-reformat. an HMM database is the form produced by hmmbuild. the input database(s) get loaded into memory by the master. and when the master has finished loading the database(s), it prints this line, bestie:
Data loaded into memory. Master is ready.
okay so once the master is ready, one or more instances of hmmpgmd may be started as workers β¨. these workers may be (and typically ARE, no cap) on different machines from the master, but they must have access to the same database file(s) provided to the master, with the same path. not optional, don't try it. as with the master, each worker loads the database(s) into memory, and indicates completion by printing:
Data loaded into memory. Worker is ready.
the master process and the workers are expected to remain running (they're the main characters, they stay on stage π
). one or more clients then connect to the master and submit possibly many queries. the master distributes the work of a query among the workers, collects results, and merges them before responding to the client. two example client programs are included in the HMMER src directory β the C program hmmc2 and the perl script hmmpgmd_client_example.pl. these are intended as examples only, and should be extended as necessary to meet your needs. like, they're a starting point, not the final form π¦.
a query is submitted to the master from the client as a character string. queries may be the sort that would normally be handled by phmmer (protein sequence vs protein database), hmmsearch (protein HMM query vs protein database), or hmmscan (protein query vs protein HMM database).
the general form of a client query is to start with a single line of the form @[options], followed by multiple lines of text representing either the query HMM or fasta-formatted sequence. the final line of each query is the separator //. okay so that's the whole ritual, let's break it down π
for example, to perform a phmmer type search of a sequence against a sequence database file, the first line is of the form @--seqdb 1, then the fasta-formatted query sequence starting with the header line >sequence-name, followed by one or more lines of sequence, and finally the closing //.
to perform an hmmsearch type search, the query sequence is replaced by the full text of a HMMER-format query HMM.
to perform an hmmscan type search, the text matches that of the phmmer type search, except that the first line changes to @--hmmdb 1.
in the hmmpgmd-formatted sequence database file, each sequence can be associated with one or more sub-databases. the --seqdb flag indicates which of these sub-databases will be queried. the HMM database format does not support sub-databases. periodt.
π OPTIONS π
-hβ help bestie; prints a brief reminder of command line usage and all available options.--masterβ run as the master server π.--worker <s>β run as a worker, connecting to the master server that is running on IP address<s>.--cport <n>β port to use for communication between clients and the master server. the default is51371.--wport <n>β port to use for communication between workers and the master server. the default is51372.--ccncts <n>β maximum number of client connections to accept. the default is16.--wcncts <n>β maximum number of worker connections to accept. the default is32.--pid <f>β name of file into which the process id will be written.--seqdb <f>β name of the file (in hmmpgmd format) containing protein sequences. the contents of this file will be cached for searches.--hmmdb <f>β name of the file containing protein HMMs. the contents of this file will be cached for searches.--cpu <n>β number of parallel threads to use (for--worker).
π¦ SEE ALSO
see hmmer(1) for a master man page with a list of all the individual man pages for programs in the HMMER package.
for complete documentation, see the user guide that came with your HMMER distribution (Userguide.pdf); or see the HMMER web page (http://hmmer.org/).
π COPYRIGHT
Copyright (C) 2023 Howard Hughes Medical Institute. Freely distributed under the BSD open source license.
for additional information on copyright and licensing, see the file called COPYRIGHT in your HMMER source distribution, or see the HMMER web page (http://hmmer.org/).
π AUTHOR
and that's the whole page, bestie!! go forth and daemon π
this was hmmpgmd(1) from HMMER 3.4, dated Aug 2023 π β mwah, ate, no notes, hope this helped fr fr π«Άβ¨
π¦ where this page comes from
- debian trixie: hmmer 3.4+dfsg-2 Β· GPL-3.0-only
- nixos 26.05: hmmer 3.4
- nixpkgs unstable: hmmer 3.4
- ubuntu noble: hmmer 3.4+dfsg-2 Β· GPL-3.0-only
- ubuntu resolute: hmmer 3.4+dfsg-2 Β· GPL-3.0-only
- ubuntu stonking: hmmer 3.4+dfsg-3 Β· GPL-3.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms