Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[GPU] Add support for linear tree with device=gpu #6567

Merged
merged 21 commits into from
Oct 18, 2024
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
b030c63
basic gpu_linear_tree_learner implementation
dragonbra Jul 18, 2024
80f61e6
corresponding config of gpu linear tree
dragonbra Jul 18, 2024
bfb43de
Merge branch 'microsoft:master' into gpu_linear_tree
dragonbra Jul 23, 2024
94ad3e5
Update src/io/config.cpp
dragonbra Jul 25, 2024
a197bbc
Merge branch 'master' into gpu_linear_tree
shiyu1994 Aug 22, 2024
c7d4a74
Merge branch 'master' into gpu_linear_tree
shiyu1994 Aug 27, 2024
7d85909
Merge branch 'master' into gpu_linear_tree
shiyu1994 Sep 6, 2024
44accd1
Merge branch 'master' into gpu_linear_tree
shiyu1994 Oct 1, 2024
b8b1478
work around for gpu linear tree learner without gpu enabled
shiyu1994 Oct 1, 2024
b16a127
add #endif
shiyu1994 Oct 2, 2024
4fdbe07
add #ifdef USE_GPU
shiyu1994 Oct 2, 2024
edfc8cb
fix lint problems
shiyu1994 Oct 2, 2024
c7a72a3
Merge branch 'master' into gpu_linear_tree
shiyu1994 Oct 8, 2024
3a05c78
fix compilation when USE_GPU is OFF
shiyu1994 Oct 9, 2024
bf54ad8
Merge branch 'gpu_linear_tree' of https://github.com/dragonbra/LightG…
shiyu1994 Oct 9, 2024
7988c81
add destructor
shiyu1994 Oct 10, 2024
5c0d651
Merge branch 'master' into gpu_linear_tree
shiyu1994 Oct 11, 2024
d07d9cc
add gpu_linear_tree_learner.cpp in make file list
shiyu1994 Oct 11, 2024
27f3598
Merge branch 'gpu_linear_tree' of https://github.com/dragonbra/LightG…
shiyu1994 Oct 11, 2024
8818b7b
use template for linear tree learner
shiyu1994 Oct 18, 2024
df7b55c
Merge branch 'master' into gpu_linear_tree
shiyu1994 Oct 18, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions R-package/src/Makevars.in
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ OBJECTS = \
treelearner/feature_histogram.o \
treelearner/feature_parallel_tree_learner.o \
treelearner/gpu_tree_learner.o \
treelearner/gpu_linear_tree_learner.o \
treelearner/gradient_discretizer.o \
treelearner/linear_tree_learner.o \
treelearner/serial_tree_learner.o \
Expand Down
1 change: 1 addition & 0 deletions R-package/src/Makevars.win.in
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ OBJECTS = \
treelearner/feature_histogram.o \
treelearner/feature_parallel_tree_learner.o \
treelearner/gpu_tree_learner.o \
treelearner/gpu_linear_tree_learner.o \
treelearner/gradient_discretizer.o \
treelearner/linear_tree_learner.o \
treelearner/serial_tree_learner.o \
Expand Down
4 changes: 2 additions & 2 deletions src/io/config.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -417,9 +417,9 @@ void Config::CheckParamConflict(const std::unordered_map<std::string, std::strin
}
// linear tree learner must be serial type and run on CPU device
if (linear_tree) {
if (device_type != std::string("cpu")) {
if (device_type != std::string("cpu") && device_type != std::string("gpu")) {
device_type = "cpu";
Log::Warning("Linear tree learner only works with CPU.");
Log::Warning("Linear tree learner only works with CPU and GPU.");
dragonbra marked this conversation as resolved.
Show resolved Hide resolved
}
if (tree_learner != std::string("serial")) {
tree_learner = "serial";
Expand Down
Loading
Loading