- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, I don’t know if it’s the right place nor if it’s possible but I was thinking in C/C+ we have the asm() keyword/function or compiler interstics like __builtin_ia32_pcmpistri128() for doing a string search that allow accessing the underlying ᴄᴘᴜ in an advanced way : it’s still up to the compiler to chose if the used variables will be from the stack or a register. It also allow to call C/C++ code.
While I know ʜʟꜱ code is directly, compiled to bitstream, why not have an asm() like keyword that allows to insert Verilog/ᴠʜᴅʟ like low level code ? Or low‑level interstics ? The compiler would still be responsible doing things like clocking the low level code relative to thermal or the lowest possible latency while allowing the low level code to call high‑level functions. Like asking to perform a multiplication directly on a ᴅꜱᴘ instead of being unsure.
This should enable manual optimizations that are currently unsupported automatically like level 4 unfolding transformations or create low bit maths functions that can automatically be reclocked relative to the allowed thermal characteristics.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi ytrezq,
I do not know any specific extension about oneapi working with lower level language extention.
The langguage support details are mentioned in the link as below for your reference:
Thanks.
Regards,
Aik Eu
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi ytrezq,
As we do not receive any response from you on the previous question/reply/answer that we have provided. Please login to ‘https://supporttickets.intel.com’, view details of the desire request, and post a feed/response within the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you on your follow-up questions.
Thanks.
Regards,
Aik Eu
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
sorry but as written in my post, this isn’t a question but a feature request… I thought to remember there were a guide to request language extension to Oneᴀᴘɪ on the main website.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Perhaps the RTL library support would do what you want:
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
In the C analogy using ʀᴛʟ would be equivalent to using a plain .asm file where in .asm you have to care if you use a register or memory which can be handled automatically with a asm/interstic statement. In the ꜰᴘɢᴀ case, this means you still have to clock manually the design.
So this is lower level.
Also, as far I understand, Verilog/ᴠʜᴅʟ code can’t use Sycl code…
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page