diff --git a/Makefile b/Makefile index 2515e7963984450d9eaddae096f20080b8ca4661..f905095edd588ddb0eecf7dce5000f361cc70fa1 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,7 @@ MAKEFILES = $(shell dirname $(shell find . -name Makefile \ -not -path "./haystack/*")) EMPER_ROOT := emper -EMPER_VARIANTS := vanilla pipe pipe-no-completer no-completer +EMPER_VARIANTS := vanilla pipe pipe-no-completer no-completer sqpoll-single sqpoll EMPER_PREP_TARGETS := $(addprefix $(EMPER_ROOT)/build-,$(EMPER_VARIANTS)) EMPER_BUILD_TARGETS := $(addprefix emper-,$(EMPER_VARIANTS)) @@ -34,19 +34,34 @@ $(MAKEFILES): COMMON_EMPER_MESON_ARGS := --buildtype=release --fatal-meson-warnings -Dstats=true -$(EMPER_ROOT)/build-vanilla: +.PHONY: checkout-master +checkout-master: + git -C $(EMPER_ROOT) checkout master + +.PHONY: checkout-sqpoll +checkout-sqpoll: muhq-remote + git -C $(EMPER_ROOT) fetch origin merge-requests/210/head:sqpoll && \ + git -C $(EMPER_ROOT) checkout sqpoll + +$(EMPER_ROOT)/build-vanilla: checkout-master meson setup $(COMMON_EMPER_MESON_ARGS) $@ $(EMPER_ROOT) -$(EMPER_ROOT)/build-pipe: +$(EMPER_ROOT)/build-pipe: checkout-master meson setup $(COMMON_EMPER_MESON_ARGS) -Dworker_sleep_strategy=pipe $@ $(EMPER_ROOT) -$(EMPER_ROOT)/build-pipe-no-completer: +$(EMPER_ROOT)/build-pipe-no-completer: checkout-master meson setup $(COMMON_EMPER_MESON_ARGS) -Dio_completer_behavior=none \ -Dworker_sleep_strategy=pipe $@ $(EMPER_ROOT) -$(EMPER_ROOT)/build-no-completer: +$(EMPER_ROOT)/build-no-completer: checkout-master meson setup $(COMMON_EMPER_MESON_ARGS) -Dio_completer_behavior=none $@ $(EMPER_ROOT) +$(EMPER_ROOT)/build-sqpoll: checkout-sqpoll + meson setup $(COMMON_EMPER_MESON_ARGS) -Dio_uring_sq_poller=each $@ $(EMPER_ROOT) + +$(EMPER_ROOT)/build-sqpoll-single: checkout-sqpoll + meson setup $(COMMON_EMPER_MESON_ARGS) -Dio_uring_sq_poller=one $@ $(EMPER_ROOT) + define buildEmper emper-$(1): $(EMPER_ROOT)/build-$(1) diff --git a/eval.py b/eval.py index 429a1ab98a1e0dc02e1e5ac960373ba9ccbced82..dbc5a917e104f13e01176830fa0bb3b57cb4d9e9 100755 --- a/eval.py +++ b/eval.py @@ -47,6 +47,13 @@ TARGETS = { f'{ROOT_DIR}/emper/build-pipe-no-completer/apps/fsearch/fsearch {{NEEDLE}}', 'env': {'EMPER_WORKER_COUNT=12'} }, + 'emper-sqpoll': { + 'cmd': f'{ROOT_DIR}/emper/build-sqpoll/apps/fsearch/fsearch {{NEEDLE}}' + }, + 'emper-sqpoll-single': { + 'cmd': + f'{ROOT_DIR}/emper/build-sqpoll-single/apps/fsearch/fsearch {{NEEDLE}}' + }, 'ripgrep': { 'cmd': 'rg -l -F -uuu {NEEDLE} .' },