Skip to content
Snippets Groups Projects
Commit 2f1ee4db authored by Patrick Godwin's avatar Patrick Godwin
Browse files

Makefile.online, Makefile.offline: remove help target, update offline with requirements, options

parent 95043e3b
No related branches found
No related tags found
No related merge requests found
Pipeline #82971 failed
......@@ -61,9 +61,10 @@ CONDOR_COMMANDS:=--condor-command=accounting_group=$(ACCOUNTING_TAG) --condor-co
# * PERSIST_CADENCE: span of a typical hdf5 file.
# * OUTPATH: directory in which to save features.
SAMPLE_RATE = 16
TAG = production_offline
SAMPLE_RATE = 16
# analysis times
START = 1187000000
STOP = 1187100000
......@@ -72,6 +73,7 @@ STOP = 1187100000
SAVE_CADENCE = 20
PERSIST_CADENCE = 200
OUTPATH = $(PWD)
FEATURES_PATH = /home/patrick.godwin/idq/features
# parameter space for waveforms
WAVEFORM = tapered_sine_gaussian
......@@ -131,7 +133,7 @@ LIGO_SEGMENTS="$(IFO):DMT-ANALYSIS_READY:1"
#################################################################################
# length of time to process for a given job
SEGMENT_LENGTH = 4000
SEGMENT_LENGTH = 3000
# don't generally have to mess with this, provides padding
# to account for PSD estimation
......@@ -167,9 +169,9 @@ FSTART=$(shell echo $$((${START}-${SEG_PAD})))
# need to tread lightly. Changing CONCURRENCY in particular may cause I/O locks due to jobs fighting to read from the same
# frame file.
MAX_PARALLEL_STREAMS = 600
MAX_SERIAL_STREAMS = 210
CONCURRENCY = 1
MAX_PARALLEL_STREAMS = 300
MAX_SERIAL_STREAMS = 110
CONCURRENCY = 100
#################################################################################
# WORKFLOW #
......@@ -192,6 +194,7 @@ dag : frame.cache $(CHANNEL_LIST) segments.xml.gz
--persist-cadence $(PERSIST_CADENCE) \
--channel-list $(CHANNEL_LIST) \
--out-path $(OUTPATH) \
--features-path $(FEATURES_PATH) \
--waveform $(WAVEFORM) \
--max-serial-streams $(MAX_SERIAL_STREAMS) \
--max-parallel-streams $(MAX_PARALLEL_STREAMS) \
......@@ -209,6 +212,8 @@ dag : frame.cache $(CHANNEL_LIST) segments.xml.gz
--request-disk 12GB \
--verbose \
--disable-web-service
sed -i 's/.*queue.*/Requirements = regexp("Intel.*v[3-5]", TARGET.cpuinfo_model_name)\n&/' *.sub
@echo ""
@echo "Submit with: condor_submit_dag feature_extractor_pipe.dag"
# Pull latest channel list
......@@ -236,68 +241,3 @@ clean :
## Clean directory of all files, including data products.
clean-all :
-rm -rvf *.sub *.dag* *.cache *.sh logs *.sqlite *.html segments.xml.gz *.ini gstlal_feature_*
#################################################################################
# SELF DOCUMENTING COMMANDS #
#################################################################################
.DEFAULT_GOAL := help
# Inspired by <http://marmelab.com/blog/2016/02/29/auto-documented-makefile.html>
# sed script explained:
# /^##/:
# * save line in hold space
# * purge line
# * Loop:
# * append newline + line to hold space
# * go to next line
# * if line starts with doc comment, strip comment character off and loop
# * remove target prerequisites
# * append hold space (+ newline) to line
# * replace newline plus comments by `---`
# * print line
# Separate expressions are necessary because labels cannot be delimited by
# semicolon; see <http://stackoverflow.com/a/11799865/1968>
.PHONY: help
help:
@echo "$$(tput bold)Usage:$$(tput sgr0)"
@echo
@echo " Launch offline feature extraction jobs."
@echo
@echo "$$(tput bold)Available commands:$$(tput sgr0)"
@echo
@sed -n -e "/^## / { \
h; \
s/.*//; \
:doc" \
-e "H; \
n; \
s/^## //; \
t doc" \
-e "s/:.*//; \
G; \
s/\\n## /---/; \
s/\\n/ /g; \
p; \
}" ${MAKEFILE_LIST} \
| LC_ALL='C' sort --ignore-case \
| awk -F '---' \
-v ncol=$$(tput cols) \
-v indent=19 \
-v col_on="$$(tput setaf 6)" \
-v col_off="$$(tput sgr0)" \
'{ \
printf "%s%*s%s ", col_on, -indent, $$1, col_off; \
n = split($$2, words, " "); \
line_length = ncol - indent; \
for (i = 1; i <= n; i++) { \
line_length -= length(words[i]) + 1; \
if (line_length <= 0) { \
line_length = ncol - indent - length(words[i]) - 1; \
printf "\n%*s ", -indent, " "; \
} \
printf "%s ", words[i]; \
} \
printf "\n"; \
}' \
| more $(shell test $(shell uname) = Darwin && echo '--no-init --raw-control-chars')
......@@ -264,68 +264,3 @@ clean :
## Clean directory of all files, including data products.
clean-all :
-rm -rvf *.sub *.dag* *.cache *.sh logs *.ini *.txt monitor aggregator features snapshots synchronizer gstlal_snax_* kafka* zookeeper*
#################################################################################
# SELF DOCUMENTING COMMANDS #
#################################################################################
.DEFAULT_GOAL := help
# Inspired by <http://marmelab.com/blog/2016/02/29/auto-documented-makefile.html>
# sed script explained:
# /^##/:
# * save line in hold space
# * purge line
# * Loop:
# * append newline + line to hold space
# * go to next line
# * if line starts with doc comment, strip comment character off and loop
# * remove target prerequisites
# * append hold space (+ newline) to line
# * replace newline plus comments by `---`
# * print line
# Separate expressions are necessary because labels cannot be delimited by
# semicolon; see <http://stackoverflow.com/a/11799865/1968>
.PHONY: help
help:
@echo "$$(tput bold)Usage:$$(tput sgr0)"
@echo
@echo " Launch online feature extraction jobs."
@echo
@echo "$$(tput bold)Available commands:$$(tput sgr0)"
@echo
@sed -n -e "/^## / { \
h; \
s/.*//; \
:doc" \
-e "H; \
n; \
s/^## //; \
t doc" \
-e "s/:.*//; \
G; \
s/\\n## /---/; \
s/\\n/ /g; \
p; \
}" ${MAKEFILE_LIST} \
| LC_ALL='C' sort --ignore-case \
| awk -F '---' \
-v ncol=$$(tput cols) \
-v indent=19 \
-v col_on="$$(tput setaf 6)" \
-v col_off="$$(tput sgr0)" \
'{ \
printf "%s%*s%s ", col_on, -indent, $$1, col_off; \
n = split($$2, words, " "); \
line_length = ncol - indent; \
for (i = 1; i <= n; i++) { \
line_length -= length(words[i]) + 1; \
if (line_length <= 0) { \
line_length = ncol - indent - length(words[i]) - 1; \
printf "\n%*s ", -indent, " "; \
} \
printf "%s ", words[i]; \
} \
printf "\n"; \
}' \
| more $(shell test $(shell uname) = Darwin && echo '--no-init --raw-control-chars')
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment