-
-
Notifications
You must be signed in to change notification settings - Fork 206
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add multithreading filter processing
Merge nfdump-devel multithreading code in nfdump.c. Introduces pipeline processing and multithreading filtering to improf performance with complex filters.
- Loading branch information
Showing
17 changed files
with
28,046 additions
and
0 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,124 @@ | ||
# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- | ||
# | ||
# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software | ||
# Foundation, Inc. | ||
# Written by Gary V. Vaughan, 2004 | ||
# | ||
# This file is free software; the Free Software Foundation gives | ||
# unlimited permission to copy and/or distribute it, with or without | ||
# modifications, as long as this notice is preserved. | ||
|
||
# serial 6 ltsugar.m4 | ||
|
||
# This is to help aclocal find these macros, as it can't see m4_define. | ||
AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) | ||
|
||
|
||
# lt_join(SEP, ARG1, [ARG2...]) | ||
# ----------------------------- | ||
# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their | ||
# associated separator. | ||
# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier | ||
# versions in m4sugar had bugs. | ||
m4_define([lt_join], | ||
[m4_if([$#], [1], [], | ||
[$#], [2], [[$2]], | ||
[m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) | ||
m4_define([_lt_join], | ||
[m4_if([$#$2], [2], [], | ||
[m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) | ||
|
||
|
||
# lt_car(LIST) | ||
# lt_cdr(LIST) | ||
# ------------ | ||
# Manipulate m4 lists. | ||
# These macros are necessary as long as will still need to support | ||
# Autoconf-2.59, which quotes differently. | ||
m4_define([lt_car], [[$1]]) | ||
m4_define([lt_cdr], | ||
[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], | ||
[$#], 1, [], | ||
[m4_dquote(m4_shift($@))])]) | ||
m4_define([lt_unquote], $1) | ||
|
||
|
||
# lt_append(MACRO-NAME, STRING, [SEPARATOR]) | ||
# ------------------------------------------ | ||
# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'. | ||
# Note that neither SEPARATOR nor STRING are expanded; they are appended | ||
# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). | ||
# No SEPARATOR is output if MACRO-NAME was previously undefined (different | ||
# than defined and empty). | ||
# | ||
# This macro is needed until we can rely on Autoconf 2.62, since earlier | ||
# versions of m4sugar mistakenly expanded SEPARATOR but not STRING. | ||
m4_define([lt_append], | ||
[m4_define([$1], | ||
m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) | ||
|
||
|
||
|
||
# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) | ||
# ---------------------------------------------------------- | ||
# Produce a SEP delimited list of all paired combinations of elements of | ||
# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list | ||
# has the form PREFIXmINFIXSUFFIXn. | ||
# Needed until we can rely on m4_combine added in Autoconf 2.62. | ||
m4_define([lt_combine], | ||
[m4_if(m4_eval([$# > 3]), [1], | ||
[m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl | ||
[[m4_foreach([_Lt_prefix], [$2], | ||
[m4_foreach([_Lt_suffix], | ||
]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, | ||
[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) | ||
# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) | ||
# ----------------------------------------------------------------------- | ||
# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited | ||
# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. | ||
m4_define([lt_if_append_uniq], | ||
[m4_ifdef([$1], | ||
[m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], | ||
[lt_append([$1], [$2], [$3])$4], | ||
[$5])], | ||
[lt_append([$1], [$2], [$3])$4])]) | ||
# lt_dict_add(DICT, KEY, VALUE) | ||
# ----------------------------- | ||
m4_define([lt_dict_add], | ||
[m4_define([$1($2)], [$3])]) | ||
# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) | ||
# -------------------------------------------- | ||
m4_define([lt_dict_add_subkey], | ||
[m4_define([$1($2:$3)], [$4])]) | ||
# lt_dict_fetch(DICT, KEY, [SUBKEY]) | ||
# ---------------------------------- | ||
m4_define([lt_dict_fetch], | ||
[m4_ifval([$3], | ||
m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), | ||
m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) | ||
# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) | ||
# ----------------------------------------------------------------- | ||
m4_define([lt_if_dict_fetch], | ||
[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], | ||
[$5], | ||
[$6])]) | ||
# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) | ||
# -------------------------------------------------------------- | ||
m4_define([lt_dict_filter], | ||
[m4_if([$5], [], [], | ||
[lt_join(m4_quote(m4_default([$4], [[, ]])), | ||
lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), | ||
[lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl | ||
]) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
# ltversion.m4 -- version numbers -*- Autoconf -*- | ||
# | ||
# Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation, | ||
# Inc. | ||
# Written by Scott James Remnant, 2004 | ||
# | ||
# This file is free software; the Free Software Foundation gives | ||
# unlimited permission to copy and/or distribute it, with or without | ||
# modifications, as long as this notice is preserved. | ||
|
||
# @configure_input@ | ||
|
||
# serial 4245 ltversion.m4 | ||
# This file is part of GNU Libtool | ||
|
||
m4_define([LT_PACKAGE_VERSION], [2.4.7]) | ||
m4_define([LT_PACKAGE_REVISION], [2.4.7]) | ||
|
||
AC_DEFUN([LTVERSION_VERSION], | ||
[macro_version='2.4.7' | ||
macro_revision='2.4.7' | ||
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) | ||
_LT_DECL(, macro_revision, 0) | ||
]) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,99 @@ | ||
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- | ||
# | ||
# Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2022 Free | ||
# Software Foundation, Inc. | ||
# Written by Scott James Remnant, 2004. | ||
# | ||
# This file is free software; the Free Software Foundation gives | ||
# unlimited permission to copy and/or distribute it, with or without | ||
# modifications, as long as this notice is preserved. | ||
|
||
# serial 5 lt~obsolete.m4 | ||
|
||
# These exist entirely to fool aclocal when bootstrapping libtool. | ||
# | ||
# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN), | ||
# which have later been changed to m4_define as they aren't part of the | ||
# exported API, or moved to Autoconf or Automake where they belong. | ||
# | ||
# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN | ||
# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us | ||
# using a macro with the same name in our local m4/libtool.m4 it'll | ||
# pull the old libtool.m4 in (it doesn't see our shiny new m4_define | ||
# and doesn't know about Autoconf macros at all.) | ||
# | ||
# So we provide this file, which has a silly filename so it's always | ||
# included after everything else. This provides aclocal with the | ||
# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything | ||
# because those macros already exist, or will be overwritten later. | ||
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. | ||
# | ||
# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. | ||
# Yes, that means every name once taken will need to remain here until | ||
# we give up compatibility with versions before 1.7, at which point | ||
# we need to keep only those names which we still refer to. | ||
|
||
# This is to help aclocal find these macros, as it can't see m4_define. | ||
AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) | ||
|
||
m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) | ||
m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])]) | ||
m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) | ||
m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])]) | ||
m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) | ||
m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])]) | ||
m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])]) | ||
m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) | ||
m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])]) | ||
m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])]) | ||
m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])]) | ||
m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) | ||
m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) | ||
m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) | ||
m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) | ||
m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])]) | ||
m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])]) | ||
m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) | ||
m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) | ||
m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])]) | ||
m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])]) | ||
m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) | ||
m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) | ||
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) | ||
m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) | ||
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) | ||
m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) | ||
m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) | ||
m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])]) | ||
m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])]) | ||
m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])]) | ||
m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) | ||
m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])]) | ||
m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])]) | ||
m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])]) | ||
m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])]) | ||
m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) | ||
m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])]) | ||
m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) | ||
m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) | ||
m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) | ||
m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) | ||
m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) | ||
m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) | ||
m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) | ||
m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) | ||
m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) | ||
m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) | ||
m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) | ||
m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) | ||
m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) | ||
m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) | ||
m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) | ||
m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) | ||
m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])]) | ||
m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])]) | ||
m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])]) | ||
m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])]) | ||
m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])]) | ||
m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])]) | ||
m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])]) |
Oops, something went wrong.