按值或按引用传递 sycl::vec 哪个更好?
Is it better to pass a sycl::vec by value or by reference?
在 Sycl 中,如果我想将一个 sycl::vec<double 3>
传递给另一个函数,是按值传递还是按常量引用传递更好?
如何查看目标代码的输出结果?
是否有类似 sycl cuda 的编译器资源管理器之类的东西?
(我使用的是 Intell Clang / DPC++ 编译器)
一般来说,C++ 中的最佳实践是按值传递便宜的复制类型,而其他类型则按常量引用传递。这个想法是,如果按值传递,编译器可以优化更多,但如果不按引用传递,复制更大的类型可能会很昂贵。
我认为对于 vec class 按值复制应该没问题,因为(至少在设备端)它被视为内置类型。
在 Sycl 中,如果我想将一个 sycl::vec<double 3>
传递给另一个函数,是按值传递还是按常量引用传递更好?
如何查看目标代码的输出结果? 是否有类似 sycl cuda 的编译器资源管理器之类的东西? (我使用的是 Intell Clang / DPC++ 编译器)
一般来说,C++ 中的最佳实践是按值传递便宜的复制类型,而其他类型则按常量引用传递。这个想法是,如果按值传递,编译器可以优化更多,但如果不按引用传递,复制更大的类型可能会很昂贵。 我认为对于 vec class 按值复制应该没问题,因为(至少在设备端)它被视为内置类型。