DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
AVXProcessor.hpp
Go to the documentation of this file.
1
10
11#include <immintrin.h>
12
13#ifndef TPGLIBS_AVXPROCESSOR_HPP_
14#define TPGLIBS_AVXPROCESSOR_HPP_
15
16namespace tpglibs {
17
18// Compilation warns about some AVX alignment attributes that are ignored.
19// This use case should not worry about these warnings.
20#pragma GCC diagnostic push
21#pragma GCC diagnostic ignored "-Wignored-attributes"
23class AVXProcessor : public AbstractProcessor<__m256i> {
24 public:
26 virtual __m256i process(const __m256i& signal) override {
28 }
29
31 void save_metric_to_store_buffer() override {}
32
37};
38#pragma GCC diagnostic pop
39
40} // namespace tpglibs
41
42#endif // TPGLIBS_AVXPROCESSOR_HPP_
AVX typed abstract signal processor.
virtual __m256i process(const __m256i &signal) override
Simple signal pass-through on __m256i type.
ProcessorMetricArray< __m256i > read_from_metric_store_buffer() override
Read metrics from store buffer; returns empty for basic AVXProcessor.
void save_metric_to_store_buffer() override
Save metrics to store buffer; no-op for basic AVXProcessor.
virtual T process(const T &signal)
Simple signal pass-through.
Dynamic array of processor metrics, templated on signal type.