由於在 Microsoft R Server 或 Machine Learning Server 中遺失環境變數,導致 MKL 計算不一致

本文可協助您解決因為遺漏環境變數而得到不一致結果的問題。

適用於:windows 上的 SQL Server 2017、Microsoft Machine Learning Server (R Server)
原始 KB 編號: 4488257

徵狀

當您在 Microsoft SQL Server 2017 中執行 Microsoft R Server 9.0、9.1、9.2、9.3.x 或 Microsoft Machine Learning Server 時,會在 Intel Math Kernel Library (MKL) 計算中遇到不一致的結果。 發生此問題的原因是 遺漏MKL_CBWR 環境變數。

原因

發生此問題的原因是 Intel MKL 連結庫中已新增新功能,並隨附於 Microsoft R Server 和 SQL Server 2017。 如需這項功能的詳細資訊,請參閱 條件式數值重現 (CNR) 簡介

解決方案

若要修正此問題,請設定 MKL_CBWR=AUTO 系統環境變數,在 Microsoft R Server 或 Machine Learning Server 中設定條件式數值重現性。 如果要執行這項操作,請依照下列步驟執行:

  1. 在 [控制台] 中,選取 [系統與安全>性系統進階系統>設定>環境變數]

  2. 建立新的使用者或系統變數,並指定下列值:

    • 將變數名稱設定為 MKL_CBWR
    • 將變數值設定為 AUTO
  3. 重新啟動 Microsoft R Server。

狀態

Microsoft 已確認這是 Microsoft 產品中的問題。

在未來的 Microsoft R Server 版本中,MKL_CBWR=AUTO 設定將會是預設設定。

參考資料

SQL Server Machine Learning Services 第三方資訊免責聲明中的已知問題

協力廠商資訊免責聲明

本文提及的協力廠商產品是由與 Microsoft 無關的獨立廠商所製造。 Microsoft 不以默示或其他方式,提供與這些產品的效能或可靠性有關的擔保。