Programming Guide

Contents

Emulate Applications with a Pipe That Reads or Writes to an I/O Pipe

The Intel® FPGA Emulation Platform for OpenCL™ software emulates kernel-to-kernel pipes. However, it does not support interacting directly with the hardware I/O pipes on your target board. Nevertheless, you can emulate the behavior of I/O pipes using the following procedures:

For Input I/O Pipes

  1. Store input data to be transferred to the pipe in a file with a name matching the
    id
    specialization of the pipe. Consider the following example:
    // Specialize a pipe type struct read_io_pipe { static constexpr unsigned id = 0; }; using read_iopipe = sycl::ext::intel::kernel_readable_io_pipe<read_io_pipe, unsigned, 4>;
  2. Create a file named
    0
    .
  3. Store the test input data in the file
    0
    .

For Output I/O Pipes

Output data is automatically written to a file with a name matching the
id
specialization of the output pipe.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.