Skip to content

Commit 82fc3b9

Browse files
committed
JavaCL: deprecated CLContext.getKernelsDefaultByteOrder() and CLDevice.getKernelsDefaultByteOrder()
1 parent bf1d1ab commit 82fc3b9

File tree

4 files changed

+14
-20
lines changed

4 files changed

+14
-20
lines changed

Core/src/main/java/com/nativelibs4java/opencl/CLDevice.java

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -102,15 +102,19 @@ public static Map<String, List<CLDevice>> getDevicesBySignature(List<CLDevice> d
102102
return ret;
103103
}
104104

105-
105+
private volatile ByteOrder byteOrder;
106106
public ByteOrder getByteOrder() {
107-
return isEndianLittle() ? ByteOrder.LITTLE_ENDIAN : ByteOrder.BIG_ENDIAN;
107+
if (byteOrder == null)
108+
byteOrder = isEndianLittle() ? ByteOrder.LITTLE_ENDIAN : ByteOrder.BIG_ENDIAN;
109+
return byteOrder;
108110
}
109111

110-
ByteOrder kernelsDefaultByteOrder;
112+
/**
113+
* @deprecated Use {@link CLDevice#getByteOrder()}
114+
*/
115+
@Deprecated
111116
public synchronized ByteOrder getKernelsDefaultByteOrder() {
112-
if (kernelsDefaultByteOrder == null) {
113-
kernelsDefaultByteOrder = getByteOrder();//ByteOrder.nativeOrder();
117+
return getByteOrder();
114118
/*
115119
CLPlatform platform = getPlatform();
116120
if (platform != null && platform.getVendor().toLowerCase().contains("nvidia"))
@@ -158,8 +162,6 @@ public synchronized ByteOrder getKernelsDefaultByteOrder() {
158162
context.release();
159163
}
160164
}//*/
161-
}
162-
return kernelsDefaultByteOrder;
163165
}
164166

165167
/** Bit values for CL_DEVICE_EXECUTION_CAPABILITIES */

Core/src/main/velocity/com/nativelibs4java/opencl/CLContext.java

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -650,19 +650,11 @@ private <T> CLBuffer<T> createBuffer(PointerIO<T> io, Pointer<T> data, long byte
650650
}
651651

652652
/**
653-
* The OpenCL specification states that the default endianness of kernel arguments is that of the device.<br/>
654-
* However, there are implementations where this does not appear to be respected, so it is compulsory to perform a runtime test on those platforms.
655-
* @return byte order needed for pointer kernel arguments that do not have any <code>__attribute__ ((endian(device))</code> or <code>__attribute__ ((endian(host))</code> attribute.
653+
* @deprecated Use {@link CLContext#getByteOrder()}
656654
*/
655+
@Deprecated
657656
public ByteOrder getKernelsDefaultByteOrder() {
658-
ByteOrder order = null;
659-
for (CLDevice device : getDevices()) {
660-
ByteOrder devOrder = device.getKernelsDefaultByteOrder();
661-
if (order != null && devOrder != order)
662-
return null;
663-
order = devOrder;
664-
}
665-
return order;
657+
return getByteOrder();
666658
}
667659

668660
/**

Tutorials/Simple/src/main/resources/archetype-resources/src/main/java/JavaCLTutorial1.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public class JavaCLTutorial1 {
1313
public static void main(String[] args) throws IOException {
1414
CLContext context = JavaCL.createBestContext();
1515
CLQueue queue = context.createDefaultQueue();
16-
ByteOrder byteOrder = context.getKernelsDefaultByteOrder();
16+
ByteOrder byteOrder = context.getByteOrder();
1717

1818
int n = 1024;
1919
Pointer<Float>

Tutorials/Simple/src/main/resources/archetype-resources/src/main/java/JavaCLTutorial2.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public class JavaCLTutorial2 {
1313
public static void main(String[] args) throws IOException {
1414
CLContext context = JavaCL.createBestContext();
1515
CLQueue queue = context.createDefaultQueue();
16-
ByteOrder byteOrder = context.getKernelsDefaultByteOrder();
16+
ByteOrder byteOrder = context.getByteOrder();
1717

1818
int n = 1024;
1919
Pointer<Float>

0 commit comments

Comments
 (0)