remove unnecessary omp single that cause deadlock (fixes #6273) (#6394)

This commit is contained in:
Yohei Kishimoto 2024-04-23 11:52:02 +09:00 коммит произвёл GitHub
Родитель 52441c478f
Коммит 1871350515
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
2 изменённых файлов: 11 добавлений и 2 удалений

Просмотреть файл

@ -20,8 +20,7 @@ int OMP_NUM_THREADS() {
default_num_threads = LGBM_DEFAULT_NUM_THREADS;
} else {
// otherwise, default to OpenMP-global config
#pragma omp single
{ default_num_threads = omp_get_max_threads(); }
default_num_threads = omp_get_max_threads();
}
// ensure that if LGBM_SetMaxThreads() was ever called, LightGBM doesn't

Просмотреть файл

@ -573,6 +573,16 @@ def test_dataset_construction_overwrites_user_provided_metadata_fields():
np_assert_array_equal(dtrain.get_field("weight"), expected_weight, strict=True)
def test_dataset_construction_with_high_cardinality_categorical_succeeds():
pd = pytest.importorskip("pandas")
X = pd.DataFrame({"x1": np.random.randint(0, 5_000, 10_000)})
y = np.random.rand(10_000)
ds = lgb.Dataset(X, y, categorical_feature=["x1"])
ds.construct()
assert ds.num_data() == 10_000
assert ds.num_feature() == 1
def test_choose_param_value():
original_params = {
"local_listen_port": 1234,