2010-12-14 66 views

回答

17

是;但bool的大小是而不是定義的。因此,它沒有關聯的API類型(因爲值的大小應取決於設備)。

有關支持的標量類型列表,請參見部分6.1.1 OpenCL 1.1規範的內置標量數據類型。

從第6.8.k

參數給__kernel程序中的功能不能與內置 標量類型BOOL,一半,爲size_t,ptrdiff_t的,使用intptr_t和uintptr_t的聲明。除了一半以外,這些類型的字節大小爲 ,除了一半以外,都是實現定義的,此外,OpenCL設備和主機處理器的 也可能不同,因此難以將分配緩衝區對象作爲參數傳遞給聲明爲指向內核的內核這些 類型

+3

我很困惑,有一個布爾類型,但我不能使用它? – smuggledPancakes 2010-12-14 21:48:00

+10

您可以在內核中使用它,但不能在主機和計算設備上的OpenCL代碼之間進行傳輸或訪問,因爲大小不可移植地定義。 – grrussel 2010-12-15 00:07:22