Florian Lüke
ee10c7ce70
rename mana_plugin_t -> mana_sink_plugin_t
2024-12-27 14:08:13 +01:00
Florian Lüke
714e0c4f3a
rename mana_api.h -> mana_c_api.h
2024-12-27 14:03:57 +01:00
Florian Lüke
d8eb73671d
refactor ManaPlugin -> IManaSink, ManaCPlugin -> ManaCSink
2024-12-27 13:57:03 +01:00
Florian Lüke
8c1e122e06
warn if root histo plugin is initialized multiple times
2024-12-27 13:53:09 +01:00
Florian Lüke
59b11c94a7
hide ManaPlugin constructors
2024-12-27 13:53:02 +01:00
Florian Lüke
9c76aa93bf
simplify the ManaPlugin class, decouple it from the C plugin interface
2024-12-27 12:40:49 +01:00
Florian Lüke
bfce5e76ab
mana root plugin: change logging to log.c
2024-12-26 19:21:25 +01:00
Florian Lüke
ebd823ae4e
mana root plugin: implement raw histograms, fixes
2024-12-26 18:44:24 +01:00
Florian Lüke
ead9c0ee2e
fixes and refactorings
2024-12-26 18:42:25 +01:00
Florian Lüke
9e5b79cb34
mana: implement nng pair based threaded strategy
...
It's a tiny bit faster than the single threaded strategy:
- Counting plugin, is690-9Li_3H_run094:
- direct, single threaded: 217.72411048962562 MiB/s
- nng-pair, multi threaded: 228.50186892946155 MiB/s
- root-histogram plugin (hitcount histos only), is690-9Li_3H_run094:
- direct, single threaded: 210.73162379794522 MiB/s
- nng-pair, multi threaded: 219.66463320034057 MiB/s
2024-12-26 15:37:15 +01:00
Florian Lüke
76d85e5c39
mnode_nng_proto: fix warning
2024-12-26 15:28:17 +01:00
Florian Lüke
9bdd79e910
mana: strategy
2024-12-26 03:17:33 +01:00
Florian Lüke
76b22c1434
mana: don't need to pass analysisContext to process_one_buffer()
2024-12-26 03:09:08 +01:00
Florian Lüke
13c73cfdfc
mana: add a python plugin
2024-12-26 03:08:26 +01:00
Florian Lüke
6f7102549e
mana: add a root-histogram plugin and improve ManaCountingSink
...
Currently only histograms the hit counts per input array element, not
the actual data.
The counting plugin now also tracks and prints 'eventArrayIndexHits'.
2024-12-26 01:46:58 +01:00
Florian Lüke
edf0d291a9
mana: add c test plugin and make plugin loading work
2024-12-26 00:32:56 +01:00
Florian Lüke
da8f52730f
add rxi/logc from https://github.com/rxi/log.c
2024-12-26 00:31:58 +01:00
Florian Lüke
587bf0e6cb
first working mana_auto_replay
...
ManaCountingSink counts match the mvme analysis counts for the single event
is690-9Li_3H_run094 run. ~280 MB/s in release mode.
2024-12-25 23:37:37 +01:00
Florian Lüke
ce00821bbb
mana_arena: add missing include
2024-12-25 18:30:10 +01:00
Florian Lüke
d5f9b87896
nng_proto: add comments. fix return statement in serialize_proto_to_nng()
2024-12-25 18:29:49 +01:00
Florian Lüke
c8be12c1b6
more work on mana, commiting state
2024-12-25 05:47:38 +01:00
Florian Lüke
dfe5d7eb3b
mana: unfinished offset ptr stuff
2024-12-25 03:19:29 +01:00
Florian Lüke
6d93197f86
mana::Arena: fixes and segment limit and tests
2024-12-25 03:18:39 +01:00
Florian Lüke
fa897ea233
some replay api changes - still unsure about the design
2024-12-23 13:00:31 +01:00
Florian Lüke
46efb1cff7
move arena into internal header, add mana gtest
2024-12-23 12:59:57 +01:00
Florian Lüke
a6bc4d1329
working mana_replay but doesn't do any analysis yet
...
reaches 210 MiB/s with is690-9Li_3H_run094
2024-12-21 19:11:17 +01:00
Florian Lüke
5da3276b3e
begin work on a mini analysis replay tool
2024-12-21 15:21:12 +01:00
Florian Lüke
25286dd9d2
add an analysis plugin api sketch
2024-12-21 15:18:47 +01:00
Florian Lüke
e86303f7eb
cmake: cleanup
2024-12-21 01:30:00 +01:00
Florian Lüke
728bad6841
possible low level mvlc proto interface
2024-12-17 23:27:48 +01:00
Florian Lüke
2c75142cb8
move dev tools into tools/
2024-12-17 18:19:31 +01:00
Florian Lüke
17787b8ab1
work on rpc
2024-12-12 00:31:03 +01:00
Florian Lüke
bf03a19820
add prototype nng reqrep based blocking protobuf rpc server and client
...
The code requires cc_generic_services = true in the service proto files.
nng_msg payload is:
request format : size:u32 + serialized MethodCall
response format: size:u32 + serialized MethodCallResponse
Dispatch is done using descriptors, message prototypes and protobuf.Any.
Error handling is missing apart from error logging.
2024-12-08 21:01:54 +01:00
Florian Lüke
7ab1af93e3
play with protos and service stub descriptors
2024-12-08 13:49:46 +01:00
Florian Lüke
43c18dc243
cleanup
2024-12-07 21:54:46 +01:00
Florian Lüke
fea9cd07b1
port ping server to async work
2024-12-07 20:36:37 +01:00
Florian Lüke
c729069c2b
ping client: use async dial and a longer timeout
2024-12-07 20:35:51 +01:00
Florian Lüke
b0ca75960b
add argh from https://github.com/aardvarkk/argh
2024-12-07 20:35:29 +01:00
Florian Lüke
1d5a957043
port mnode_proto_ping_client to the new async work
2024-12-07 18:34:06 +01:00
Florian Lüke
25b018b1bb
add a barebones nng async abstraction
2024-12-07 18:33:35 +01:00
Florian Lüke
4c940d4e0a
nng: move code into impl
2024-12-07 18:33:15 +01:00
Florian Lüke
4e4606c454
hide spdlog from mnode_nng.h
2024-12-07 17:36:59 +01:00
Florian Lüke
d3a5f2c75c
refactor namespaces
2024-12-07 16:48:24 +01:00
Florian Lüke
ce338ce680
Merge branch 'main' into pipeline
2024-12-07 16:15:39 +01:00
Florian Lüke
07919d6795
async ping client and server
2024-12-07 16:12:40 +01:00
Florian Lüke
b18a9361ab
save
2024-12-07 03:55:45 +01:00
Florian Lüke
7ed57acdee
node_nng: hide some nng details
2024-11-28 02:52:15 +01:00
Florian Lüke
8ac61415ef
cleanup
2024-11-23 12:08:52 +01:00
Florian Lüke
8f8b463a14
move things around, only add spdlog if it's not present yet
2024-11-23 11:00:28 +01:00
Florian Lüke
e25f76eebf
refactor things, build mesytec-node-nng lib
2024-11-23 03:05:05 +01:00