Intel® High Level Design
Support for Intel® High Level Synthesis Compiler, DSP Builder, OneAPI for Intel® FPGAs, Intel® FPGA SDK for OpenCL™
663 Discussions

device policy "dpcpp_fpga" not found in namespace

arnoecho
Beginner
714 Views

I was trying to write a program which intends to utilize FPGA board. According to this page<https://www.intel.com/content/www/us/en/develop/documentation/oneapi-dpcpp-library-guide/top/parallel-api/execution-policies.html>, dpcpp_fpga should be an available policy within namespace <oneapi::dpl::execution>. However, when I compiled the code, I received the following error.

 

src/api.cpp:31:87: error: no member named 'dpcpp_fpga' in namespace 'oneapi::dpl::execution'
                    auto fut1 = dpl::experimental::fill_async(oneapi::dpl::execution::dpcpp_fpga,dpl::begin(a),dpl::end(a),(1<<31));

 

I am wondering how to resolve this error. 

0 Kudos
5 Replies
BoonBengT_Intel
Moderator
659 Views

Hi @arnoecho,


Thank you for posting in Intel community forum and hope all is well.

For us to better understand the situation, it would be a great help if you are able to share the program that you have wrote and also the steps that you taken for the compilation.

Hope to hear from you soon.


Best Wishes

BB


0 Kudos
arnoecho
Beginner
654 Views
#include <oneapi/dpl/algorithm>
#include <oneapi/dpl/execution>
#include <oneapi/dpl/iterator>
#include <oneapi/dpl/async>
#include <CL/sycl.hpp>
#include <chrono>
int main(int argc, char *argv[]) {
    using namespace oneapi;
    {
        auto policy = oneapi::dpl::execution::dpcpp_fpga;
        ...
        //dpl apis that use the variable <policy> 
        ...
    }
    return 0;
}

Something like this. And when I compile it with

dpcpp -fintelfpga <src> -DFPGA_EMULATOR=1

The compiler reports the following error

error: no member named 'dpcpp_fpga' in namespace 'oneapi::dpl::execution'
0 Kudos
BoonBengT_Intel
Moderator
613 Views

Hi @arnoecho,


Thanks for the details explanation and patients.

Based on the error mention my guess is just a missing definition cause the namespace not found.


You may refer to the link below which contain the guide to defined the required namespace based on the oneAPI execution policy.

https://oneapi-src.github.io/oneDPL/parallel_api/execution_policies.html

Hope that clarify.


Regards

BB


0 Kudos
BoonBengT_Intel
Moderator
598 Views

Hi @arnoecho,


Greetings, just checking in to see if there is any further doubts in regards to this matter.

Hope we have clarify your doubts.


Best Wishes

BB


0 Kudos
BoonBengT_Intel
Moderator
578 Views

Hi @arnoecho,


Greetings, as we do not receive any further clarification/updates on the matter, hence would assume challenge are overcome, and will no longer monitor this thread. For new queries, please feel free to open a new thread and we will be right with you. Pleasure having you here.


Best Wishes

BB



0 Kudos
Reply