- 08 Dec, 2020 1 commit
-
-
Alberto Ferreira authored
* Fix LightGBM models locale sensitivity and improve R/W performance. When Java is used, the default C++ locale is broken. This is true for Java providers that use the C API or even Python models that require JEP. This patch solves that issue making the model reads/writes insensitive to such settings. To achieve it, within the model read/write codebase: - C++ streams are imbued with the classic locale - Calls to functions that are dependent on the locale are replaced - The default locale is not changed! This approach means: - The user's locale is never tampered with, avoiding issues such as https://github.com/microsoft/LightGBM/issues/2979 with the previous approach https://github.com/microsoft/LightGBM/pull/2891 - Datasets can still be read according the user's locale - The model file has a single format independent of locale Changes: - Add CommonC namespace which provides faster locale-independent versions of Common's methods - Model code makes conversions through CommonC - Cleanup unused Common methods - Performance improvements. Use fast libraries for locale-agnostic conversion: - value->string: https://github.com/fmtlib/fmt - string->double: https://github.com/lemire/fast_double_parser (10x faster double parsing according to their benchmark) Bugfixes: - https://github.com/microsoft/LightGBM/issues/2500 - https://github.com/microsoft/LightGBM/issues/2890 - https://github.com/ninia/jep/issues/205 (as it is related to LGBM as well) * Align CommonC namespace * Add new external_libs/ to python setup * Try fast_double_parser fix #1 Testing commit e09e5aad828bcb16bea7ed0ed8322e019112fdbe If it works it should fix more LGBM builds * CMake: Attempt to link fmt without explicit PUBLIC tag * Exclude external_libs from linting * Add exernal_libs to MANIFEST.in * Set dynamic linking option for fmt. * linting issues * Try to fix lint includes * Try to pass fPIC with static fmt lib * Try CMake P_I_C option with fmt library * [R-package] Add CMake support for R and CRAN * Cleanup CMakeLists * Try fmt hack to remove stdout * Switch to header-only mode * Add PRIVATE argument to target_link_libraries * use fmt in header-only mode * Remove CMakeLists comment * Change OpenMP to PUBLIC linking in Mac * Update fmt submodule to 7.1.2 * Use fmt in header-only-mode * Remove fmt from CMakeLists.txt * Upgrade fast_double_parser to v0.2.0 * Revert "Add PRIVATE argument to target_link_libraries" This reverts commit 3dd45dde7b92531b2530ab54522bb843c56227a7. * Address James Lamb's comments * Update R-package/.Rbuildignore Co-authored-by:James Lamb <jaylamb20@gmail.com> * Upgrade to fast_double_parser v0.3.0 - Solaris support * Use legacy code only in Solaris * Fix lint issues * Fix comment * Address StrikerRUS's comments (solaris ifdef). * Change header guards Co-authored-by:
James Lamb <jaylamb20@gmail.com>
-
- 26 Nov, 2020 1 commit
-
-
Martynov Maxim authored
Co-authored-by:Мартынов Максим Сергеевич <msmarty5@mts.ru>
-
- 17 Nov, 2020 1 commit
-
-
James Lamb authored
* [ci] always use latest conda version on GitHub Actions * try new use-conda version * just remove conda * skip conda even more
-
- 20 Sep, 2020 1 commit
-
-
Chip Kerchner authored
* Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * Initial CUDA work * redirect log to python console (#3090) * redir log to python console * fix pylint * Apply suggestions from code review * Update basic.py * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * Update c_api.h * Apply suggestions from code review * Apply suggestions from code review * super-minor: better wording Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> Co-authored-by:
StrikerRUS <nekit94-12@hotmail.com> * re-order includes (fixes #3132) (#3133) * Revert "re-order includes (fixes #3132) (#3133)" (#3153) This reverts commit 656d2676 . * Missing change from previous rebase * Minor cleanup and removal of development scripts. * Only set gpu_use_dp on by default for CUDA. Other minor change. * Fix python lint indentation problem. * More python lint issues. * Big lint cleanup - more to come. * Another large lint cleanup - more to come. * Even more lint cleanup. * Minor cleanup so less differences in code. * Revert is_use_subset changes * Another rebase from master to fix recent conflicts. * More lint. * Simple code cleanup - add & remove blank lines, revert unneccessary format changes, remove added dead code. * Removed parameters added for CUDA and various bug fix. * Yet more lint and unneccessary changes. * Revert another change. * Removal of unneccessary code. * temporary appveyor.yml for building and testing * Remove return value in ReSize * Removal of unused variables. * Code cleanup from reviewers suggestions. * Removal of FIXME comments and unused defines. * More reviewers comments cleanup. * More reviewers comments cleanup. * More reviewers comments cleanup. * Fix config variables. * Attempt to fix check-docs failure * Update Paramster.rst for num_gpu * Removing test appveyor.yml * Add CUDA_RESOLVE_DEVICE_SYMBOLS to libraries to fix linking issue. * Fixed handling of data elements less than 2K. * More reviewers comments cleanup. * Removal of TODO and fix printing of int64_t * Add cuda change for CI testing and remove cuda from device_type in python. * Missed one change form previous check-in * Removal AdditionConfig and fix settings. * Limit number of GPUs to one for now in CUDA. * Update Parameters.rst for previous check-in * Whitespace removal. * Cleanup unused code. * Changed uint/ushort/ulong to unsigned int/short/long to help Windows based CUDA compiler work. * Lint change from previous check-in. * Changes based on reviewers comments. * More reviewer comment changes. * Adding warning for is_sparse. Revert tmp_subset code. Only return FeatureGroupData if not is_multi_val_ * Fix so that CUDA code will compile even if you enable the SCORE_T_USE_DOUBLE define. * Reviewer comment cleanup. * Replace warning with Log message. Removal of some of the USE_CUDA. Fix typo and removal of pragma once. * Remove PRINT debug for CUDA code. * Allow to use of multiple GPUs for CUDA. * More multi-GPUs enablement for CUDA. * More code cleanup based on reviews comments. * Update docs with latest config changes. Co-authored-by:
Gordon Fossum <fossum@us.ibm.com> Co-authored-by:
ChipKerchner <ckerchne@linux.vnet.ibm.com> Co-authored-by:
Guolin Ke <guolin.ke@outlook.com> Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> Co-authored-by:
StrikerRUS <nekit94-12@hotmail.com> Co-authored-by:
James Lamb <jaylamb20@gmail.com>
-
- 14 Sep, 2020 1 commit
-
-
Nikita Titov authored
* Use Ubuntu Focal image at Travis * test gcc * test Bionic and gcc * test Focal with another Python version for GPU test * revert testing changes * install linkchecker via pip * simplify linkchecker config
-
- 05 Jul, 2020 2 commits
-
-
James Lamb authored
* [ci] [R-package] catch builds that have not updated docs * drop reliance on .Renviron * remove docs changes * Update .ci/test_r_package.sh Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * make all R tasks start with r-package Co-authored-by:
Nikita Titov <nekit94-08@mail.ru>
-
Nikita Titov authored
* update gcc version * Update setup.sh * fix GitHub Actions
-
- 25 May, 2020 1 commit
-
-
James Lamb authored
* [R-package] move R source files into R-package * fix linting warning * stuff
-
- 16 Apr, 2020 1 commit
-
-
James Lamb authored
* [ci] Changed use of strcpy to snprintf * fix * fully enable cpplint
-
- 13 Apr, 2020 1 commit
-
-
Nikita Titov authored
* Update test.sh * update brew to pull new URL for basictex
-
- 10 Apr, 2020 1 commit
-
-
Nikita Titov authored
* Revert "specify the last supported version of scikit-learn (#2637)" This reverts commit d1002776. * ban scikit-learn 0.22.0 and skip broken test * fix updated test * fix lint test * Revert "fix lint test" This reverts commit 8b4db0805fe7a9e7f7eb0be3eac231f85026d196.
-
- 28 Mar, 2020 1 commit
-
-
James Lamb authored
-
- 01 Mar, 2020 1 commit
-
-
Guolin Ke authored
* add debug mode in camke * add debug dll * Apply suggestions from code review Co-Authored-By:
Nikita Titov <nekit94-08@mail.ru> * fix naming * Apply suggestions from code review * Apply suggestions from code review * Update LightGBM.sln * refine * run MPI job in debug mode * document USE_DEBUG and USE_TIMETAG Co-authored-by:
Nikita Titov <nekit94-08@mail.ru>
-
- 16 Jan, 2020 1 commit
-
-
Nikita Titov authored
* indicate support only for the last 3 macOS versions in wheel name * document support only for 3 newest macOS versions
-
- 12 Jan, 2020 1 commit
-
-
Nikita Titov authored
* removed OpenMP ugly fix for Mojave as it's fixed in latest CMake * test: switch compilers * switch compilers back
-
- 19 Dec, 2019 1 commit
-
-
Nikita Titov authored
-
- 15 Dec, 2019 1 commit
-
-
James Lamb authored
-
- 16 Nov, 2019 1 commit
-
-
James Lamb authored
* Added more linters on R code * started working on implicit integers * finished style changes to handle implicit integers * regenned documentation and added concatenation linter * changed channel for r-lintr * try building stringi before lintr * trying to get libicui18n * trying another thing * trying conda-forge again * added re-install of stringi * uncommented other stages * Update .ci/test.sh Co-Authored-By:Nikita Titov <nekit94-08@mail.ru> * removed apt update and changed lintr version floor * get lintr from CRAN * R needs to come before C++ linting * testing lintr install from CRAN * trying one more thing * more verbose * order might matter * removed commented code * cleaned up linting block in test.sh * grouped conda install calls and fixed a few integer array things
-
- 10 Nov, 2019 1 commit
-
-
Nikita Titov authored
-
- 24 Oct, 2019 1 commit
-
-
James Lamb authored
-
- 02 Oct, 2019 1 commit
-
-
Nikita Titov authored
-
- 21 Sep, 2019 1 commit
-
-
Nikita Titov authored
-
- 19 Sep, 2019 1 commit
-
-
Nikita Titov authored
* added cpplint heck * removed TODO from code * change order of checks
-
- 03 Sep, 2019 1 commit
-
-
Nikita Titov authored
-
- 14 May, 2019 1 commit
-
-
Nikita Titov authored
* compile SWIG artifact on Windows * compile SWIG artifact on Windows * combined swig and sdist jobs for Linux * added conditions for artifacts publishing * added SWIG artifact compilation on macOS * hotfix * test: switch compilers * harsh workaround for OpenMP library conflict * switch compilers back * consistent order of tasks in condition * dummy commit to trigger CI and fix CLA
-
- 12 May, 2019 1 commit
-
-
Nikita Titov authored
* test: AppleClang on Travis * updated fix for OpenMP multiple instances * updated docs * switch compiler back
-
- 09 May, 2019 1 commit
-
-
Nikita Titov authored
* Update setup.sh * Update test.sh * Update setup.sh * test: gcc on Azure * Update test.sh * Update setup.sh * Update test.sh * switch compiler back on Azure
-
- 06 May, 2019 1 commit
-
-
Nikita Titov authored
-
- 05 May, 2019 1 commit
-
-
Nikita Titov authored
* use file to install deps for docs * added C_API docs * use breathe without exhale * added missed params descriptions and make Doxygen fail for warnings * escape char hotfix * ignore unknown directive for rstcheck * better handle env variable * hotfix for 'Unknown directive type' error with C_API=NO * Update .gitignore * fixed pylint * use already defined constants in conf.py * do not suppress Doxygen's output * addressed review comments * removed unneeded import
-
- 30 Apr, 2019 1 commit
-
-
Nikita Titov authored
* added job for swig compilation on Linux with artifacts * hotfix * test: SWIG with Clang compiler * switch compiler back to gcc * switch to main docker
-
- 10 Apr, 2019 1 commit
-
-
Nikita Titov authored
* added fix for OpenMP on macOS into test script * test: AppleClang on Travis * use Mojave on Travis * bash hotfix * get back to gcc compiler on Travis macOS
-
- 18 Mar, 2019 1 commit
-
-
Nikita Titov authored
-
- 14 Mar, 2019 1 commit
-
-
Nikita Titov authored
* ci fix * ci fix for Appveyor * actually firx Appveyor
-
- 18 Feb, 2019 1 commit
-
-
Nikita Titov authored
-
- 30 Jan, 2019 1 commit
-
-
Nikita Titov authored
* added test for huge string model * fixed tree sizes field * simplified model structure * fixed test and added try/except
-
- 13 Nov, 2018 1 commit
-
-
Nikita Titov authored
[ci][python] fall back to producing one wheel for macOS and drop support of OSX 10.6 and 10.7 (#1826)
-
- 11 Nov, 2018 1 commit
-
-
Nikita Titov authored
-
- 06 Nov, 2018 1 commit
-
-
Nikita Titov authored
-
- 05 Nov, 2018 1 commit
-
-
Nikita Titov authored
* execute notebooks on CIs * run notebooks in interactive mode and increase timeout for MinGW * hotfix alphabetically sort packages installation
-
- 01 Nov, 2018 1 commit
-
-
Nikita Titov authored
* renamed helper folder to helpers * added library dependencies check
-