• Chen Yufei's avatar
    Precise text file parsing (#4081) · f8318088
    Chen Yufei authored
    
    
    * New build option: USE_PRECISE_TEXT_PARSER.
    
    Use fast_double_parser for text file parsing. For each number, fallback
    to strtod in case of parse failure.
    
    * Add benchmark for CSVParser with Atof and AtofPrecise.
    
    * Fix lint complaint.
    
    * Fix typo in open result error message.
    
    * Revert "Fix lint complaint."
    
    This reverts commit 92ab0b6bce9f17d7be9eaeb20f19d4a0a36f0387.
    
    * Revert "Add benchmark for CSVParser with Atof and AtofPrecise."
    
    This reverts commit 4f8639abd06c679d4382eb715a1793afd94df3d2.
    
    * Use AtofPrecise in Common::__StringToTHelper.
    
    * [option] precise_float_parser: precise float number parsing for text input.
    
    * Remove USE_PRECISE_TEXT_PARSER compile option.
    
    * test: add test for Common::AtofPrecise.
    
    * test: remove ChunkedArrayTest with 0 length.
    
    This triggers Log::Fatal which aborts the test program.
    
    * fix lint, add copyright.
    
    * Revert "test: remove ChunkedArrayTest with 0 length."
    
    This reverts commit 346c76affe9e78b6ca2738c4a56dbb9c00f31102.
    
    * Use LightGBM::Common::Sign
    
    * save precise_float_parser in model file.
    
    * Fix error checking in AtofPrecise. Add more test cases.
    
    * Remove test case that can't pass under macOS.
    
    * Apply suggestions from code review
    Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
    Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
    f8318088
application.cpp 10.3 KB