OpenCL代码编译成Vulkan代码的工具clspv

栏目: 后端 · 发布时间: 5年前

内容简介:最近接到个任务,就是把使用编译完成后,在

最近接到个任务,就是把 OpenCL.cl 代码编译成 Vulkan 程序。

使用 Google 开源的工具 clspv 实现这个功能即可。

$ git clone https://github.com/google/clspv.git
 
$ cd clspv
 
$ python utils/fetch_sources.py
 
$ mkdir build
 
$ cd build
 
$ cmake ..
 
$ make -j8

编译完成后,在 bin 目录下生成 clspv 这个可执行程序。

使用的时候参考项目的文档 OpenCL C 1.2 Language on Vulkan

只是需要注意的是,如果使用了 image 类型,比如 image2d_t 则需要提供 -samplermap 这个参数,这个参数指向一个文件,文件内容可能如下:

CLK_NORMALIZED_COORDS_FALSE | CLK_ADDRESS_CLAMP_TO_EDGE | CLK_FILTER_NEAREST,
CLK_NORMALIZED_COORDS_TRUE  | CLK_ADDRESS_CLAMP_TO_EDGE | CLK_FILTER_LINEAR

具体的定义跟在 OpenCL 中调用 read_image/write_image 函数时候指定的 sampler 参数一致即可。

参考链接

OpenCL C 1.2 Language on Vulkan


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

面向对象技术UML教程

面向对象技术UML教程

王少峰 / 清华大学出版社 / 2004-2 / 24.00元

《面向对象技术UML教程》主要介绍统一建模语言UML及其应用。全书内容丰富,包括UML的用例图、顺序图、协作图、类图、对象图、状态图、活动图、构件图和部署图等9个图中所涉及的术语、规则和应用,以及数据建模、OCL、业务建模、Web建模、设计模式、OO实现语言、RUP等方面的内容,同时介绍了Rose开发工具中的一些用法。《面向对象技术UML教程》最后是一个课程注册系统的实例研究,以及一些思考题和设计......一起来看看 《面向对象技术UML教程》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具