source: icGREP/icgrep-devel/icgrep/kernels/lz4/aio/twist_kernel.h @ 6135

Last change on this file since 6135 was 6135, checked in by xwa163, 9 months ago
  1. Implement twist_kernel and untwist_kernel by PEXT and PDEP
  2. Use twist form for multiplexing lz4 grep
File size: 592 bytes
RevLine 
[6135]1
2
3#ifndef ICGREP_TWIST_KERNEL_H
4#define ICGREP_TWIST_KERNEL_H
5
6
7#include "kernels/kernel.h"
8
9namespace IDISA { class IDISA_Builder; }
10
11namespace kernel {
12    class TwistByPDEPKernel final : public BlockOrientedKernel {
13    public:
14        TwistByPDEPKernel(const std::unique_ptr <kernel::KernelBuilder> &b, unsigned numberOfInputStream, unsigned twistWidth);
15
16    private:
17        const unsigned mNumberOfInputStream;
18        const unsigned mTwistWidth;
19
20        void generateDoBlockMethod(const std::unique_ptr <kernel::KernelBuilder> &b) override;
21    };
22}
23
24
25#endif //ICGREP_TWIST_KERNEL_H
Note: See TracBrowser for help on using the repository browser.