Verwenden von R-Code-ProfilerstellungsfunktionenUse R code profiling functions to improve performance

Anwendungsbereich:Applies to: JaSQL Server 2016 (13.x)SQL Server 2016 (13.x)yesSQL Server 2016 (13.x)SQL Server 2016 (13.x) und höherAnwendungsbereich:Applies to: JaSQL Server 2016 (13.x)SQL Server 2016 (13.x)yesSQL Server 2016 (13.x)SQL Server 2016 (13.x) and later

In diesem Artikel werden Leistungstools beschrieben, die von R-Paketen bereitgestellt werden, um Informationen zu internen Funktionsaufrufen abzurufen.This article describes performance tools provided by R packages to get information about internal function calls. Anhand dieser Informationen können Sie die Leistung Ihres Codes verbessern.You can use this information to improve the performance of your code.

Tipp

Dieser Artikel enthält grundlegende Ressourcen, die Ihnen den Einstieg erleichtern.This article provides basic resources to get you started. Als Anleitung wird der Abschnitt Performance in „Advanced R“ von Hadley Wickham empfohlen.For expert guidance, we recommend the Performance section in "Advanced R" by Hadley Wickham.

Verwenden von RPROFUsing RPROF

Die rprof-Funktion ist im Basispaket utils enthalten, das standardmäßig geladen wird.rprof is a function included in the base package utils, which is loaded by default.

Im Allgemeinen schreibt die rprof-Funktion die Aufrufliste in bestimmten Intervallen in eine Datei.In general, the rprof function works by writing out the call stack to a file, at specified intervals. Anschließend können Sie die summaryRprof-Funktion verwenden, um die Ausgabedatei zu verarbeiten.You can then use the summaryRprof function to process the output file. Ein Vorteil von rprof ist, dass die Funktion Sampling durchführt und dadurch die Leistungsauslastung der Überwachung verringert wird.One advantage of rprof is that it performs sampling, thus lessening the performance load from monitoring.

Zur Verwendung der R-Profilerstellung in Ihrem Code rufen Sie diese Funktion auf und geben ihre Parameter an, darunter auch den Namen des Speicherorts der Protokolldatei, die geschrieben wird.To use R profiling in your code, you call this function and specify its parameters, including the name of the location of the log file that will be written. Die Profilerstellung kann im Code aktiviert oder deaktiviert werden.Profiling can be turned on and off in your code. Die folgende Syntax veranschaulicht die grundlegende Verwendung:The following syntax illustrates basic usage:

# Specify profiling output file.
varOutputFile <- "C:/TEMP/run001.log")
Rprof(varOutputFile)

# Turn off profiling
Rprof(NULL)
    
# Restart profiling
Rprof(append=TRUE)

Hinweis

Für die Verwendung dieser Funktion ist es erforderlich, dass Windows Perl auf dem Computer installiert ist, auf dem der Code ausgeführt wird.Using this function requires that Windows Perl be installed on the computer where code is run. Deshalb wird empfohlen, dass Sie Code während der Entwicklung in einer R-Umgebung erstellen und dann den gedebuggten Code an SQL Server bereitstellen.Therefore, we recommend that you profile code during development in an R environment, and then deploy the debugged code to SQL Server.

R-SystemfunktionenR System Functions

Die R-Sprache umfasst viele Basispaketfunktionen für die Rückgabe des Inhalts von Systemvariablen.The R language includes many base package functions for returning the contents of system variables. Als Teil des R-Codes können Sie zum Beispiel Sys.timezone zum Abrufen der aktuellen Zeitzone oder Sys.Time zum Abrufen der Systemzeit von R verwenden.For example, as part of your R code, you might use Sys.timezone to get the current time zone, or Sys.Time to get the system time from R.

Informationen zu einzelnen R-Systemfunktionen können Sie erhalten, indem Sie den Namen der Funktion als Argument für die R-help()-Funktion von einer R-Eingabeaufforderung aus eingeben.To get information about individual R system functions, type the function name as the argument to the R help() function from an R command prompt.

help("Sys.time")

Debuggen und Profilerstellung in RDebugging and Profiling in R

Die Dokumentation für Microsoft R Open, die standardmäßig installiert ist, enthält ein Handbuch zum Entwickeln von Erweiterungen für die R-Sprache, in dem Profilerstellung und Debuggen im Detail erläutert werden.The documentation for Microsoft R Open, which is installed by default, includes a manual on developing extensions for the R language that discusses profiling and debugging in detail.

Nächste SchritteNext steps