-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathmeson_options.txt
More file actions
51 lines (46 loc) · 3.12 KB
/
Copy pathmeson_options.txt
File metadata and controls
51 lines (46 loc) · 3.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
option('enable_deepstream_meta', type : 'boolean', value : false,
description : 'Build the optional DeepStream metadata bridge (links libnvds_meta) ' +
'so nvmmsink can serialize NvDsBatchMeta detections into the IPC ' +
'side-channel. The flat wire format and GstNvmmDetMeta stay ' +
'DeepStream-free regardless of this option.')
# --- CUDA build-time parameters (consumed by every .cu target in the tree:
# nvmmsamurai + the samurai test/benchmark probes, AND the analytics_cuda
# kernels + their parity probe/benchmark). One shared knob rather than a
# per-feature copy — a mismatched arch/std between SAMURAI and analytics
# kernels would be a confusing state to debug. Combo-typed so meson rejects a
# bad value at `meson setup` instead of failing deep inside nvcc. ---
option('gpu_arch', type : 'combo',
choices : ['sm_72', 'sm_75', 'sm_80', 'sm_86', 'sm_87', 'sm_89', 'sm_90'],
value : 'sm_87',
description : 'GPU compute architecture for every CUDA kernel in the tree ' +
'(SAMURAI + analytics_cuda). Jetson: sm_72 = Xavier, sm_87 = ' +
'Orin (default). Set to match the target board; a mismatch ' +
'makes the kernels fail to launch. (cuda_arch is a reserved ' +
'meson name, hence gpu_arch.)')
option('gpu_cxx_std', type : 'combo',
choices : ['c++17', 'c++20'],
value : 'c++20',
description : 'C++ standard for every CUDA kernel in the tree (SAMURAI + ' +
'analytics_cuda), nvcc -std. Default c++20 (libcu++ on CUDA ' +
'12.6). Drop to c++17 only for an older toolchain that cannot ' +
'compile the kernels at c++20.')
# Optional, OFF by default. The header-only motion-analytics components (analytics/)
# are always available and pure C++14 (no OpenCV); this feature only gates their
# unit tests.
option('analytics', type : 'feature', value : 'disabled',
description : 'Build the motion-analytics component tests (analytics/). ' +
'Default disabled; headers are available regardless. No external deps.')
# Optional, OFF by default. Golden-comparison tests + benchmarks that validate the
# hand-rolled analytics implementations against OpenCV as a reference oracle — the
# only part of the tree that uses OpenCV. Requires OpenCV when enabled.
option('analytics_golden', type : 'feature', value : 'disabled',
description : 'Build the analytics golden-comparison tests + benchmarks that use ' +
'OpenCV as the reference oracle. Default disabled; requires OpenCV.')
# Optional, OFF by default. CUDA implementation of the analytics component the
# benchmarks showed to be GPU-worthy (low_texture_motion), plus its host-parity
# probe test and CPU-vs-CUDA benchmark. Needs only the CUDA toolkit (nvcc +
# cudart) — deliberately NOT the TensorRT/NvBufSurface Jetson gate, so it builds
# on any CUDA host. gpu_arch/gpu_cxx_std options apply.
option('analytics_cuda', type : 'feature', value : 'disabled',
description : 'Build the CUDA analytics kernels (low_texture_motion) + parity test ' +
'+ benchmark. Default disabled; requires the CUDA toolkit.')