Following classes are added to support dataframe in java binding: - `Column` is an abstract type for a single column in tabular data. - `ColumnBatch` is an abstract type for dataframe. - `CuDFColumn` is an implementaiton of `Column` that consume cuDF column - `CudfColumnBatch` is an implementation of `ColumnBatch` that consumes cuDF dataframe. - `DeviceQuantileDMatrix` is the interface for quantized data. The Java implementation mimics the Python interface and uses `__cuda_array_interface__` protocol for memory indexing. One difference is on JVM package, the data batch is staged on the host as java iterators cannot be reset. Co-authored-by: jiamingy <jm.yuan@outlook.com>
26 lines
741 B
C++
26 lines
741 B
C++
//
|
|
// Created by bobwang on 2021/9/8.
|
|
//
|
|
|
|
#ifndef XGBOOST_USE_CUDA
|
|
|
|
#include <jni.h>
|
|
|
|
#include "../../../../src/common/common.h"
|
|
#include "../../../../src/c_api/c_api_error.h"
|
|
|
|
namespace xgboost {
|
|
namespace jni {
|
|
XGB_DLL int XGDeviceQuantileDMatrixCreateFromCallbackImpl(JNIEnv *jenv, jclass jcls,
|
|
jobject jiter,
|
|
jfloat jmissing,
|
|
jint jmax_bin, jint jnthread,
|
|
jlongArray jout) {
|
|
API_BEGIN();
|
|
common::AssertGPUSupport();
|
|
API_END();
|
|
}
|
|
} // namespace jni
|
|
} // namespace xgboost
|
|
#endif // XGBOOST_USE_CUDA
|