GUIProfiler-package {GUIProfiler} | R Documentation |
Graphical User Interface for Rprof()
Description
Show graphically the results of profiling R functions by tracking their execution time.
Details
Package: | GUIProfiler |
Type: | Package |
Version: | 2.0.1 |
Date: | 2015-08-23 |
License: | GPL |
This package mimics the behavior of the Matlab profiler: after the code in a file is executed, it is generated an HTML report. This HTML report includes information on the time spent on each of the lines of the profiled code and hyperlinks to jump across the included functions. The graphical interface makes it easy to identify which are the specific lines that may slow down the code.
Author(s)
Fernando de Villar and Angel Rubio
Maintainer: Fernando de Villar <fdevillar@gmail.com>
See Also
RRprofStart
, RRprofStop
, RRprofReport
, Rprof
Examples
temp<-tempdir()
# Definition of two functions
normal.solve <- function(A,b) {
Output <- solve(crossprod(A), t(A)%*%b)
}
chol.solve <- function(A,b) {
L <- chol(crossprod(A))
Output1 <- backsolve(L, t(A)%*%b, transpose=TRUE)
Output2 <- backsolve(L, Output1)
}
compareMethods <- function() {
library(MASS)
# Call the functions
source(paste(temp,"/normal.solve.R",sep=""))
source(paste(temp,"/chol.solve.R",sep=""))
# Solving a big system of equations
nrows <- 1000
ncols <- 500
A <- matrix(rnorm(nrows*ncols),nrows,ncols)
b <- rnorm(nrows)
# Testing different possibilities
Sol1 <- qr.solve(A,b) # Using QR factorization
Sol2 <- coefficients(lm.fit(A,b)) # lm.fit, based on QR but with some overhead
Sol3 <- ginv(A) %*% b # Using the pseudoinverse based on SVD
Sol4 <- normal.solve(A,b) # Using a function based on the normal equations.
Sol5 <- chol.solve(A,b) # Using a function based on the Choleski factorization.
}
# Dump these functions to three different files
dump("normal.solve",file=paste(temp,"/normal.solve.R",sep=""))
dump("chol.solve",file=paste(temp,"/chol.solve.R",sep=""))
dump("compareMethods",file=paste(temp,"/compareMethods.R",sep=""))
source(paste(temp,"/compareMethods.R",sep=""))
# Profile the code
RRprofStart()
compareMethods()
RRprofStop()
# Uncomment to open the report
#RRprofReport()
[Package GUIProfiler version 2.0.1 Index]