簡體   English   中英

Azure中“找不到入口點”錯誤LightGBM R程序包

[英]“Entry Point Not Found” Error LightGBM R package in Azure

在Azure ML中使用LightGBM R程序包時,出現以下錯誤:

[Error]         +++ NT HARD ERROR (0xc0000139) +++
[Error]             Parameter 0: 0x4ad4bc8 [log2f]
[Error]             Parameter 1: 0x4b5e2e8 [C:\src\lightgbm\libs\x64\lib_lightgbm.dll]
[Error]             Parameter 2: 0xffffffffc0000139
[Error]         [FATAL] Exception: 0xc0000139 (!! HARD ERROR !!) {Params: 0x4ad4bc8, 0x4b5e2e8, 0xffffffffc0000139, 0x0}
[Error]         [ERROR] A fatal error occurred in the running application. The application will be terminated. Code: 0xc0000139.

0xc0000139 頁上的內容描述為“找不到入口點”。 此錯誤是什么意思,我該如何解決?

我在Azure ML中以相同的方式使用了XGBoost,並且可以正常工作。 而且它沒有要求外部庫(dll)。 相反,LightGBM要求大量的庫(dll),我認為問題與dll有關,但是此錯誤並不表示實際上缺少了什么。

我做了什么:
在裝有Windows Server 2016的虛擬機上安裝了LightGBM R軟件包。為此,我使用了:

  • CMake的
  • C ++開發套件(幾乎安裝了所有軟件包)
  • R工具

lightgbm \\ libs \\ x64中包含以下軟件包,因為以前我收到了帶有這些庫名稱的錯誤0xc0000135

  • msvcp140.dll
  • vcomp140.dll
  • vcruntime140.dll
  • 所有api-ms-win-core-*。dll和所有api-ms-win-crt-*。dll

我試圖將R版本從Microsoft R Open 3.2.2更改為CRAN R 3.1.0。 它執行witout錯誤,但庫導入后不執行代碼。

Azure ML R腳本的完整輸出:

Record Starts at UTC 08/03/2017 12:28:27:

Run the job:"/dll "LanguageWorker, Version=6.0.0.0, Culture=neutral, PublicKeyToken=69c3241e6f0468ca;Microsoft.MetaAnalytics.LanguageWorker.LanguageWorkerClientRS;RunRSNR" /Output0 "..\..\Result Dataset\Result Dataset.dataset" /Output1 "..\..\R Device\R Device.dataset"  /dataset1 "..\..\Dataset1\Dataset1.csv"    /bundlePath "..\..\Script Bundle\Script Bundle.zip"  /rStreamReader "script.R"  /rLibVersion "Microsoft R Open 3.2.2"  /ContextFile "..\..\_context\ContextFile.txt""
[Start] Program::Main
[Start]     DataLabModuleDescriptionParser::ParseModuleDescriptionString
[Stop]     DataLabModuleDescriptionParser::ParseModuleDescriptionString. Duration = 00:00:00.0045866
[Start]     DllModuleMethod::DllModuleMethod
[Stop]     DllModuleMethod::DllModuleMethod. Duration = 00:00:00.0000221
[Start]     DllModuleMethod::Execute
[Start]         DataLabModuleBinder::BindModuleMethod
[Verbose]             moduleMethodDescription LanguageWorker, Version=6.0.0.0, Culture=neutral, PublicKeyToken=69c3241e6f0468ca;Microsoft.MetaAnalytics.LanguageWorker.LanguageWorkerClientRS;RunRSNR
[Verbose]             assemblyFullName LanguageWorker, Version=6.0.0.0, Culture=neutral, PublicKeyToken=69c3241e6f0468ca
[Start]             DataLabModuleBinder::LoadModuleAssembly
[Verbose]                 Loaded moduleAssembly LanguageWorker, Version=6.0.0.0, Culture=neutral, PublicKeyToken=69c3241e6f0468ca
[Stop]             DataLabModuleBinder::LoadModuleAssembly. Duration = 00:00:00.0093763
[Verbose]             moduleTypeName Microsoft.MetaAnalytics.LanguageWorker.LanguageWorkerClientRS
[Verbose]             moduleMethodName RunRSNR
[Information]             Module FriendlyName : Execute R Script
[Information]             Module Release Status : Release
[Stop]         DataLabModuleBinder::BindModuleMethod. Duration = 00:00:00.0125213
[Start]         ParameterArgumentBinder::InitializeParameterValues
[Verbose]             parameterInfos count = 6
[Verbose]             parameterInfos[0] name = dataset1 , type = Microsoft.Numerics.Data.Local.DataTable
[Start]             DataTableCsvHandler::HandleArgumentString
[Stop]             DataTableCsvHandler::HandleArgumentString. Duration = 00:00:00.2364734
[Verbose]             parameterInfos[1] name = dataset2 , type = Microsoft.Numerics.Data.Local.DataTable
[Verbose]             Set optional parameter dataset2 value to NULL
[Verbose]             parameterInfos[2] name = bundlePath , type = System.String
[Verbose]             parameterInfos[3] name = rStreamReader , type = System.IO.StreamReader
[Verbose]             parameterInfos[4] name = seed , type = System.Nullable`1[System.Int32]
[Verbose]             Set optional parameter seed value to NULL
[Verbose]             parameterInfos[5] name = rLibVersion , type = Microsoft.MetaAnalytics.LanguageWorker.LanguageWorkerClientRS+ExecuteRScriptRVersion
[Verbose]             Converted string 'Microsoft R Open 3.2.2' to enum of type Microsoft.MetaAnalytics.LanguageWorker.LanguageWorkerClientRS+ExecuteRScriptRVersion
[Stop]         ParameterArgumentBinder::InitializeParameterValues. Duration = 00:00:00.3175225
[Verbose]         Begin invoking method RunRSNR ... 
[ModuleOutput] Executing Against R 3.2.2.0
[ModuleOutput] Executing Against R 3.2.2.0
[Information]         Microsoft Drawbridge Console Host [Version 1.0.2108.0]
[Error]         +++ NT HARD ERROR (0xc0000139) +++
[Error]             Parameter 0: 0x4ad4bc8 [log2f]
[Error]             Parameter 1: 0x4b5e2e8 [C:\src\lightgbm\libs\x64\lib_lightgbm.dll]
[Error]             Parameter 2: 0xffffffffc0000139
[Error]         [FATAL] Exception: 0xc0000139 (!! HARD ERROR !!) {Params: 0x4ad4bc8, 0x4b5e2e8, 0xffffffffc0000139, 0x0}
[Error]         [ERROR] A fatal error occurred in the running application. The application will be terminated. Code: 0xc0000139.
[Information]         [1] 56000
[Information]         The following files have been unzipped for sourcing in path=["src"]:
[Information]                            Name  Length                Date
[Information]         1 data.table_1.10.4.zip 1487417 2017-07-07 16:48:00
[Information]         2            lgb1.model   45142 2017-08-02 17:38:00
[Information]         3            lgb2.model   83455 2017-08-02 17:38:00
[Information]         4    lightgbm_2.0.4.zip 1350111 2017-08-03 14:26:00
[Information]         5      magrittr_1.5.zip  152732 2017-07-07 15:34:00
[Information]         6                R6.zip  317766 2017-08-03 10:33:00
[Information]         Loading objects:
[Information]           port1
[Information]         [1] "Loading variable port1..."
[Information]         package 'magrittr' successfully unpacked and MD5 sums checked
[Information]         package 'R6' successfully unpacked and MD5 sums checked
[Information]         package 'data.table' successfully unpacked and MD5 sums checked
[Information]         package 'lightgbm' successfully unpacked and MD5 sums checked
[Information]         data.table 1.10.4
[Information]           The fastest way to learn (by data.table authors): https://www.datacamp.com/courses/data-analysis-the-data-table-way
[Information]           Documentation: ?data.table, example(data.table) and browseVignettes("data.table")
[Information]           Release notes, videos and slides: http://r-datatable.com
[Error]         Process returned with non-zero exit code -1073741511
[Stop]     DllModuleMethod::Execute. Duration = 00:00:14.8676292
[Critical]     Error: Error 1000: RPackage library exception: Attempting to obtain R output before invoking execution process
[Critical]     {"InputParameters":{"DataTable":[{"Rows":50,"Columns":131,"estimatedSize":16928768,..........."Errors":"Microsoft.Analytics.Exceptions.ErrorMapping+ModuleException: Error 1000: RPackage library exception: Attempting to obtain R output before invoking execution process ---> Microsoft.Analytics.Modules.R.ErrorHandling.RInvalidOperationException: Attempting to obtain R output before invoking execution process\r\n   at Microsoft.MetaAnalytics.LanguageWorker.NewRWorker.GetProcessOutputs(Boolean scrub) in d:\\_Bld\\8831\\7669\\Sources\\Product\\Source\\Modules\\LanguageWorker\\LanguageWorker.Dll\\TempWorkers\\NewRWorker.cs:line 459\r\n   at Microsoft.MetaAnalytics.LanguageWorker.LanguageWorkerClientRS.ExecuteR(NewRWorker worker, DataTable dataset1, DataTable dataset2, IEnumerable`1 bundlePath, StreamReader rStreamReader, Nullable`1 seed) in d:\\_Bld\\8831\\7669\\Sources\\Product\\Source\\Modules\\LanguageWorker\\LanguageWorker.Dll\\EntryPoints\\RModule.cs:line 278\r\n   at Microsoft.MetaAnalytics.LanguageWorker.LanguageWorkerClientRS._RunImpl(NewRWorker worker, DataTable dataset1, DataTable dataset2, String bundlePath, StreamReader rStreamReader, Nullable`1 seed, ExecuteRScriptExternalResource source, String url, ExecuteRScriptGitHubRepositoryType githubRepoType, SecureString accountToken) in d:\\_Bld\\8831\\7669\\Sources\\Product\\Source\\Modules\\LanguageWorker\\LanguageWorker.Dll\\EntryPoints\\RModule.cs:line 207\r\n   at Microsoft.MetaAnalytics.LanguageWorker.LanguageWorkerClientRS.RunRSNR(DataTable dataset1, DataTable dataset2, String bundlePath, StreamReader rStreamReader, Nullable`1 seed, ExecuteRScriptRVersion rLibVersion) in d:\\_Bld\\8831\\7669\\Sources\\Product\\Source\\Modules\\LanguageWorker\\LanguageWorker.Dll\\EntryPoints\\REntryPoint.cs:line 105\r\n   --- End of inner exception stack trace ---","Warnings":[],"Duration":"00:00:14.8605990"}
Module finished after a runtime of 00:00:15.3186157 with exit code -2
Module failed due to negative exit code of -2

正如在編譯之前在Github上建議的那樣,我將文件https://github.com/Microsoft/LightGBM/blob/master/R-package/src/install.libs.R#L4更改為use_mingw <- TRUE use_mingw <- FALSEuse_mingw <- TRUE Azure ML最終接受了該程序包。

似乎Azure ML和Visual C ++庫之間存在兼容性問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM